Pagine

giovedì 16 dicembre 2010

martedì 14 dicembre 2010

wget grande utility per download

wget è molto utile sia per scaricare file (o far ripartire download interrotti), che per scaricare pagine internet convertendo i riferimenti in modo da poter navigare offline il documento.

Ad esempio per poter scaricare il manuale di FreeBSD senza specare chilometri di carta (!):

wget -r -k -p -np http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/book.html

lunedì 13 dicembre 2010

FreeBSD umh...

Sinceramente ci sto pensando su... FreeBSD ver. 8.1 (ramo stabile).

Mi attraeva anche la nuova DragonFly BSD, ma visto che esistono un pò di differenze tra lo standard BSD e Linux (FreeBSD vs Linux) ho deciso di partire dalla versione più diffusa e stabile.

Vedremo se rimarrà un test isolato o... se mi affascinerà al punto di farmi convertire alla famiglia BSD!

Manuale (handbook):

mercoledì 8 dicembre 2010

Snipt raccolta script

Utile sito per cercare script di qualsiasi tipo.
E' anche possibile censire i propri script (se non esistono già) in modo da recuperarli quando serve e renderli disponibili a chiunque ne avesse bisogno:

http://snipt.net/public/tag/bash?page=2

martedì 7 dicembre 2010

CliCompanion - semplificare l'utilizzo del terminale

Un carissimo amico mi ha segnalato una comoda utility per chi vuole approfondire l'utilizzo del terminale: CliCompanion

http://www.lffl.org/2010/12/clicompanion-rendere-piu-semplice-l-del.html
http://www.oneopensource.it/15/10/2010/cli-companion-terminale-assistito-per-chi-sta-imparando
https://launchpad.net/clicompanion

Installazione su distro Ubuntu (e derivate):
sudo add-apt-repository ppa:clicompanion-devs/clicompanion-nightlies
sudo apt-get update
sudo apt-get install clicompanion

Buon divertimento! ;-)

sabato 14 agosto 2010

Backup con Tar

Per effettuare il backup di una directory o un intero disco, può essere molto comodo utilizzare il comando Tar:

Riporto un mio script che utilizzavo quando volevo effettuare un backup completo di tutta la mia Gentoo (tutte le partizioni).
Dopo aver effettuato il boot con un CD di avvio di Gentoo, richiamavo il seguente script che creava un backup completo di tutto il disco (per la partizione /home/roby solo delle directory di configurazione... non mi interessava effettuare il backup di tutta la home).
Il backup di ogni partizione veniva creato con un file separato, utilizzando uno stesso prefisso per il nome del file e, come suffisso, la data di creazione.
Veniva inoltre creato un ulteriore backup della directory /etc a parte, in modo da poter accedere alle configurazioni senza dover manipolare il file più grosso del backup.
I messaggi di output dei comandi eseguiti sono memorizzati in un file di log a parte.

NB: da notare che la directory /mnt/gentoo/backup (preventivamente creata) non deve essere considerata durante la creazione del backup!

#!/bin/bash
cd /mnt
mount /dev/hda2 /mnt/gentoo/boot
mount /dev/hda6 /mnt/gentoo/var
mount /dev/hda5 /mnt/gentoo/home

if [ $? != 0 ]; then
echo "ERRORE:"
exit -1
fi

cd /mnt/gentoo
PREFISSO_FILE="/mnt/gentoo/backup/distroBack"
FILE_LOG="$PREFISSO_FILE.log"
EST_TAR=".tar.gz"

DATA_START=$(date "+%Y%m%d_%H-%M-%S")

pwd
echo "Backup etc..."
echo "Backup etc..." > $FILE_LOG
tar -czpf $PREFISSO_FILE"_etc__"$(date "+%Y%m%d_%H-%M-%S")$EST_TAR /mnt/gentoo/etc/* 2>&1 | tee -a $FILE_LOG

echo "Backup tutto (tranne home)..."
echo "Backup tutto (tranne home)..." >> $FILE_LOG
tar -czpf $PREFISSO_FILE"_root_"$(date "+%Y%m%d_%H-%M-%S")$EST_TAR --exclude={/mnt/gentoo/home,/mnt/gentoo/backup,/mnt/gentoo/usr/portage/distfiles} /mnt/gentoo/* 2>&1 | tee -a $FILE_LOG

echo "Backup home (solo file e directory nascoste)..."
echo "Backup home (solo file e directory nascoste)..." >> $FILE_LOG
tar -czpf $PREFISSO_FILE"_home_"$(date "+%Y%m%d_%H-%M-%S")$EST_TAR --exclude={.,..} /mnt/gentoo/home/roby/noBeep.sh `ls -ad /mnt/gentoo/home/roby/.*` 2>&1 | tee -a $FILE_LOG

echo "Finito..."
echo "Finito..." >> $FILE_LOG

echo "--------------------------------------------" >> $FILE_LOG
echo "Backup start: "$DATA_START >> $FILE_LOG
echo "Backup end: "$(date "+%Y%m%d_%H-%M-%S") >> $FILE_LOG


cd /mnt
umount /mnt/gentoo/home
umount /mnt/gentoo/var
umount /mnt/gentoo/boot
umount /mnt/gentoo

echo "Spengo..."
poweroff
exit 0

Script per convertire vari formati audio in mp3

GNU/Linux offre diverse soluzioni per convertire i file audio da un formato ad un altro.

Riporto uno script molto semplice, per la conversione di vari formati audio nel formato mp3, che può essere utile:
NB: verificate ed eventualmente aggiornate il corretto nome di GStreamer (nel mio caso gst-launch-0.10)
#!/bin/bash

GSTLAUNCH=gst-launch-0.10
ENCODER=lame
#ENCODEOPTIONS=preset=1001 quality=0
ENCODEOPTIONS=-h -b 160
INPUTEXTENSION=$1
OUTPUTEXTENSION=mp3

INPUTFILES=`find $2 -iname *.$INPUTEXTENSION -printf %p\"`

usage() {
echo "Usage is $0 "
echo "$0 will transcode all files with the specified extension"
echo "in the directory, and all subdirectories"
echo
echo "Example: "
echo "$0 m4a Music"
echo "Will convert all the *.m4a files in the ./Music directory"
echo "and all it's subdirectories to .mp3 files"
}

if [[ $# != 2 ]] ; then
usage ;
exit ;
fi

for INPUT in $INPUTFILES ;
do OUTPUT=`echo $INPUT | sed s/.$INPUTEXTENSION/.$OUTPUTEXTENSION/` ;
echo "Converting \"$INPUT\" to \"$OUTPUT\"" ;
$GSTLAUNCH filesrc location=\"$INPUT\" ! decodebin ! \
$ENCODER $ENCODEOPTIONS ! filesink location=\"$OUTPUT\" ;
done

Disabilitare il "beep" della console

Utilizzando la console senza ambiente grafico, può capitare che, utilizzando il TAB per l'auto-completamento dei percorsi, il sistema esegue dei beep fastidiosissimi!

GNU/Linux:
Per disabilitare il beep da console (*buntu), è sufficiente eseguire il seguente comando:
setterm -blength 0

E' possibile creare un piccolo script con un nome comodo da ricordare, ad esempio "noBeep.sh":
#!/bin/bash
setterm -blength 0


FreeBSD:
Per FreeBSD si deve digitare il seguente comando:
# sysctl hw.syscons.bell=0

E per renderlo attivo ad ogni avvio:
# echo "hw.syscons.bell=0" >> /etc/sysctl.conf

LXDE voci menù con xdg-desktop-menu

Attualmente LXDE non ha una gestione grafica delle voci di menù.
LXDE segue comunque lo standard freedesktop.org.

Per creare una nuova voce di menù delle applicazioni, si può procedere così:
  • 1) Creare il file desktop
    Si può duplicare un file desktop già esistente e apportare le necessarie rettifiche.
    Salvare il nuovo file in una delle due directory:
    • /usr/share/applications
    • /usr/local/share/applications
    Per i menù aggiunti da me preferisco utilizzare: /usr/local/share/applications.
    NB: per poter utilizzare un editor grafico tipo leafpad (editor di default di LXDE) è sufficiente digitare: sudo leafpad voce-nuova-menu.desktop

    Riferimenti:
  • 2) Utilizzare l'utility a riga di comando xdg-desktop-menu
    In questo modo è possibile aggiornare il menù con la nuova voce creata.
    NB: se il nome del file desktop non contiene il prefisso "-" nel nome del file, il comando non installa nulla. Per risolvere, è possibile o rinominare il file desktop in modo da soddisfare i requisiti, oppure eseguire il comando con il parametro --novendor.

    Riferimenti:

domenica 1 agosto 2010

Connessione ADSL intermittente

Se la connessione internet sembra voler funzionare in modo intermittente, oppure a volte si blocca o il download non sembra funzionare, oltre alle varie soluzioni che si trovano sulla rete, è il caso di verificare anche se:
  • il parametro MTU (TCP Maximum Transmission Unit) del router sia impostato ad un valore corretto e coerente per il fornitore del servizio ADSL.

    Per maggiori informazioni potete seguire questa guida:

    http://ubuntuforums.org/showthread.php?t=872346
  • verificare se il firewall ha il filtro ICMP attivo, tramite lo scambio di messaggi icmp il sistema riesce a determinare la corretta dimensione del parametro MTU.
  • verificare se il router riesce ad accedere correttamente al DNS del fornitore del servizio

System utility per Linux

Premessa: rimango dell'idea che un buon sistemista Linux debba saper fare tutto da console (un server Linux non deve avere interfaccia grafica), ma molti utenti dei sistemi desktop Linux possono avere la vita più semplice con qualche buona utility da usare nelle interfacce grafiche.

Me ne hanno segnalate due:

sabato 31 luglio 2010

QWERTY - tasti speciali console Linux

In ambiente Linux alcuni caratteri speciali sono fondamentali.
Con qualche tastiera italiana e sopratutto nei portatili, si possono ottenere utilizzando il tasto speciale [AltGr] e, mantenendolo premuto, premendo un ulteriore tasto:
  • ` : apice inverso, premere [AltGr]+[']
  • ~ : tilde, premere [AltGr]+[ì]
  • { : graffa aperta, premere [AltGr]+[7]
  • } : graffa chiusa, premere [AltGr]+[0]

".bashrc" ambiente bash e tasti speciali portatile

Alcune personalizzazioni comode per il mio ambiente console bash.
File di configurazione: ~/.bashrc

  • alias ll='ls -la': digitando ll da console viene eseguito il comando "ls -la"
  • if [ -f /opt/enviromentRoby.bashrc ]; then
         . /opt/enviromentRoby.bashrc
    fi

    NB: notate il carattere punto prima del nome del file!

    Dove "/opt/enviromentRoby.bashrc" contiene i seguenti comandi:
    export JAVA_HOME=/usr/lib/jvm/java-6-sun
    export ANT_HOME=/opt/apache-ant-1.8.0
    export M2_HOME=/opt/apache-maven-2.2.1
    export M2=$M2_HOME/bin
    export PATH=${PATH}:${JAVA_HOME}/bin:${M2}:${ANT_HOME}/bin
    echo JAVA_HOME=${JAVA_HOME}
    echo M2_HOME=${M2_HOME}
    echo ANT_HOME=${ANT_HOME}
    echo PATH=${PATH}
  • if [ -f ~/.Xmodmap ]; then
         xmodmap ~/.Xmodmap
    fi


    Dove ".Xmodmap" contiene alcune personalizzazioni per i tasti "speciali" del mio portatile:
    ! Dell Inspiron 6400
    ! Use ! for comments

    ! esempi:
    !keycode 121 = XF86AudioMute
    !keycode 122 = XF86AudioLowerVolume
    !keycode 123 = XF86AudioRaiseVolume
    !keycode 172 = XF86AudioPause
    !keycode 172 = XF86AudioPlay
    !keycode 173 = XF86AudioPrev
    !keycode 171 = XF86AudioNext
    !keycode 173 = osfLeft
    !keycode 171 = osfRight
    !keycode 174 = XF86AudioStop

    ! codici attivi (per Xine utilizzando i tasti speciali del portatile):
    ! audio muto:
    keycode 121 = XF86AudioMute
    ! audio riduci:
    keycode 122 = XF86AudioLowerVolume
    ! audio aumenta:
    keycode 123 = XF86AudioRaiseVolume
    ! video pausa/play:
    keycode 172 = space
    ! video posizionati indietro (pressione freccia sinistra):
    keycode 173 = Left
    ! video posizionati in avanti (pressione freccia destra):
    keycode 171 = Right
    ! video stop (pressione tasto "q"):
    keycode 174 = q
    ! tasto home "MediaDirect":
    keycode 234 = F20

    Riferimenti:

    NB: il tasto speciale "MediaDirect" del portatile che ho mappato come tasto funzione "F20", l'ho configurato per avviare l'applicazione "konsole" tramite l'applicazione di KDE "Impostazioni di sistema":


MediaWiki

Farsi un'enciclopedia come WikiPedia?
Semplice, per chi utilizza Linux esistono diverse soluzioni, quella che preferisco è:

MediaWiki

Requisiti:
  • apache2
  • php5 (con il modulo php5-mysql)
  • MySQL 5.x

Attenzione PHP 5.3.1 ha un bug: occorre installare la vers. PHP 5.3.0 o PHP 5.3.2.

Riferimenti per la configurazione: Manual:Configuration
  • /etc/apache2
  • /etc/php5/apache2/php.ini (aumentare il limite di memoria per le pagine php: memory_limit = 50M )
  • test apache: http://localhost
  • test php: http://localhost/infophp
  • wiki: http://localhost/mediawiki/index.php
Nel giro di pochi minuti è possibile creare una Wiki personalizzata.

TeamViewer per Linux!

Per effettuare assistenza remota o per presentazioni con un PC remoto.
Molto pratico, funzionale, gratuito (per uso non commerciale) e... ora anche per Linux!

http://www.teamviewer.com

LXDE mount/umount usb no applet

In assenza di applet per il pannello principale, per poter effettuare il mount e umount delle unità USB graficamente, è possibile utilizzare l'applicazione per la gestione dei file/directory di default di LXDE: PCMan File Manager.

E' sufficiente cliccare con il tasto destro sull'icona che identifica l'unità USB e selezionare l'azione desiderata (mount oppure umount):

LXDE "Lightweight X11 Desktop Environment"

Sulla mia distro KDE 10.04 (lucid) ho aggiunto anche l'ambiente grafico LXDE.
E' molto più scarno di KDE, ma ha un aspetto e comportamento solido, stabile e soprattutto veloce! ;-)
Per le sue performance avrà sicuramente sempre più successo... attualmente lo preferisco al posto di XFCE...

LXDE è l'abbreviazione di Lightweight X11 Desktop Environment. LX sta anche per LinuX.

Riferimenti:

Firefox "Lavora non in linea" abilitato all'avvio

Da quando ho aggiornato la mia distro (KUbuntu/LXDE) alla versione 10.04 (lucid) all'avvio di Firefox (3.6.8) mi ritrovo sempre la connessione offline!
Certo, è sufficiente disabilitare il flag da menù ("File"->"Lavora non in linea"), ma per risolvere il fastidioso problema ho trovato nella rete la seguente soluzione:

1) Accedere ai parametri di configurazione
Digitare nella barra degli indirizzi:
about:config

2) Rettificare a true il seguente parametro:
toolkit.networkmanager.disable

In questo modo, all'avvio, non ho più la connessione disabilitata.

domenica 7 febbraio 2010