Ecco un semplice metodo per cercare del testo in una serie di files, valido per tutte le distro linux:
grep "mio testo da cercare" /home/myhome/*.txt
al comando grep si possono anche aggiungere altre opzioni per:
- Effettuare una ricerca ricorsiva nelle sub directories:
grep -r "mio testo" /home/myhome
- Stampare solo il nome del file dove abbiamo la notra occorrenza:
grep -H -r “mio test” /home/myhome
Published in:
linux,
shell,
tips
Posted by:
admin (giu 17)
Reinstallare tutti i pacchetti che usavamo nella nostra precedente linux box Ubuntu (ma vale anche per Debian e simili) può essere un'attività lunga e magari poi non è detto che ci ricordiamo di tutto quello che usavamo, specialmente se si tratta d'installazioni ricche di librerie di sviluppo o d'installazioni servers. Per reinstallare tutti i pacchetti sulla nuova box possiamo però fare tutto con pochi semplici comandi.
Per generare la lista dei pacchetti installati nella tua linux box ubuntu:
dpkg --get-selections > installed-software
Per verificare e reinstallare tutti i pacchetti della tua lista, sulla linux box ubuntu di destinazione:
dpkg --set-selections < installed-software
infine digita il comando
Published in:
linux,
tips,
ubuntu
Posted by:
admin (mar 21)
La notazione per le abbreviazioni è la seguente. Le sequenze identificate con il simbolo (^) sono introdotte usando il tasto Control (Ctrl), oppure premendo il tasto Esc due volte. Le sequenze identificate col simbolo Meta (M) possono essere inserite usato alternativamente il tasto Esc, Alt o Meta, a seconda della configurazione della tastiera. Inoltre, premendo Esc due volte e digitando i numeri da 000 a 255 si possono inserire i caratteri con il codice ASCII corrispondente. Le seguenti abbreviazioni sono disponibili nella finestra principale dell'editor. Le sequenze alternative sono mostrate tra parentesi:
^G (F1) Mostra questo messaggio di aiuto
^X (F2) Chiude il file corrente / Esce da nano
^O (F3) Salva il file corrente su disco
^J (F4) Giustifica il paragrafo corrente
^R (F5) Inserisce un altro file nel corrente
^W (F6) Cerca una stringa o un'espressione regolare
^Y (F7) Va alla schermata precedente
^V (F8) Va alla schermata successiva
^K (F9) Taglia la riga corrente e la memorizza nel cutbuffer
^U (F10) Incolla dal cutbuffer nella riga corrente
^C (F11) Mostra la posizione del cursore
^T (F12) Esegue il correttore ortografico, se disponibile
M-\ (M-|) Va alla prima riga del file
M-/ (M-?) Va all'ultima riga del file
^_ (F13) (M-G) Va a un numero di riga e di colonna specifico
^\ (F14) (M-R) Sostituisce una stringa o un'espressione regolare
^^ (F15) (M-A) Marca testo alla posizione del cursore
M-W (F16) Ripete l'ultima ricerca
M-^ (M-6) Copia la riga corrente e la memorizza nel cutbuffer
M-} Applica indentazione alla riga corrente
M-{ Toglie indentazione dalla riga corrente
^F Avanza di un carattere
^B Arretra di un carattere
^Space Avanza di una parola
M-Space Arretra di una parola
^P Va alla riga precedente
^N Va alla riga successiva
^A Va all'inizio della riga corrente
^E Va alla fine della riga corrente
M-( (M-9) Va all'inizio del paragrafo; poi al paragrafo precedente
M-) (M-0) Va alla fine del paragrafo; poi al paragrafo successivo
M-] Va alla parentesi corrispondente
M– (M-_) Scorre in alto di una riga senza muovere il cursore
M-+ (M-=) Scorre in basso di una riga senza muovere il cursore
M-< (M-,) Va al buffer precedente
M-> (M-.) Va al buffer successivo
M-V Inserisce un carattere letteralmente
^I Inserisce una tabulazione alla posizione del cursore
^M Inserisce un ritorno a capo alla posizione del cursore
^D Elimina il carattere sotto il cursore
^H Elimina il carattere a sinistra del cursore
M-T Taglia dal cursore alla fine del file
M-J Giustifica l'intero file
M-D Conta il numero di parole, righe e caratteri
^L Aggiorna la schermata corrente
^Z Sospende l'editor (se la sospensione è abilitata)
(M-X) Barra dei comandi abilita/disabilita
(M-C) Mostra sempre la posizione del cursore abilita/disabilita
(M-O) Usa una riga in più per le modifiche abilita/disabilita
(M-S) Scorrimento continuo abilita/disabilita
(M-P) Mostra spazi bianchi abilita/disabilita
(M-Y) Sintassi colorata abilita/disabilita
(M-H) Tasto Inizio intelligente abilita/disabilita
(M-I) Indentazione automatica abilita/disabilita
(M-K) Taglia fino a fine riga abilita/disabilita
(M-L) A capo automatico abilita/disabilita
(M-Q) Conversione delle tabulazioni in spazi abilita/disabilita
(M-B) File di backup abilita/disabilita
(M-F) File multipli abilita/disabilita
(M-M) Supporto per il mouse abilita/disabilita
(M-N) Nessuna conversione dai formati DOS/Mac abilita/disabilita
(M-Z) Sospensione abilita/disabilita
(M-$) A capo morbido abilita/disabilita
Posted by:
admin (mar 21)
Per far funzionare il modulo di gestione antispam/antivirus su distroUbuntu + Webmin + Virtualmin è necessario in primis installare il wrapper per il procmail, questo serv non è presente nella distro di Ubuntu, ma lo si può reperire facilmente online presso il sito stesso di VirtualMin:
http://software.virtualmin.com/gpl/debian/dists/virtualmin-etch/main/binary-i386/
http://software.virtualmin.com/gpl/debian/dists/virtualmin-etch/main/binary-i386/procmail-wrapper_1.0-2_i386.deb
installiamo il pacchetto con un semplice: sudo dpkg -i procmail-wrapper_1.0-2_i386.deb
Poi è necessario verificare i permesii permessi del procmail-wrapper che potete trovare in /usr/bin:
rwsr-xr-x 1 root root 2.9K 2006-11-28 10:08 procmail-wrapper
in realtà dovrebbe essere già ok dopo l'installazione. In particolare se non compare la s nei permessi utente avrete problemi.
In fine verifichiamo che postfix utilizzi il nostro wrapper e non procmail in maniera diretta:
sudo nano /etc/postfix/main.cf
accertarsi che esista la seguente direttiva:
mailbox_command = /usr/bin/procmail-wrapper -o -a $DOMAIN -d $LOGNAME
Posted by:
admin (mar 14)
Per abilitare il supporto pcntl in php5 (testato su Ubuntu 10.10) è necessario in prima battuta installare php5-cli e php5-dev, naturalmente si devono soddisfare tutte le dipendenze richieste dal sistema:
# sudo apt-get install php5-dev php5-cli
Dopo ci dobbiamo posizionare nel percorso dove si trovano i sorgenti del modulo che intendiamo compilare:
# cd /etc/php5/cli/php5-5.3.3/ext/pcntl
Il percorso potrebbe essere diverso, a seconda della distro e della versione del php (/etc/php5/cli/php5-xxxxx/ext/pcntl). Ma dopo possiamo passare ai passi finali:
# phpsize
# ./configure
# make
# make install
In alternativa a make install si può anche copiare a mano il modulo appena compilato:
# cp modules/pcntl.so /usr/lib/php5/shared_location_modules
Infine aggiungiamo il .ini per far caricare al php il nostro modulo:
# echo "extension=pcntl.so" > /etc/php5/conf.d/pcntl.ini
Non dimentichiamoci poi di riavviare apache per rendere effettive le nostre modifiche:
# /etc/init.d/apache2 restart
Posted by:
admin (gen 19)
Un rapporto strano quello che hanno sviluppato negli anni Bill Gates e Steve Jobs, sintetizzato in questo video ne vediamo l'evoluzione, da notare anche l'invecchiamento dei personaggi. Bill nel 1983 era una vero e proprio nerd!
Per evitare la disconnessione precoce da una sessione ssh per raggiunto limite temporale di inattività si può agire nei seguenti modi:
1) A livello di cliente, modificando il file /etc/ssh/ssh_config , aggiungendo o modificando la voce ServerAliveInterval, ad esempio:
ServerAliveInterval 15
Imposta il tempo di mantenimento della sessione per inattività a 15 minuti.
2) A livello di server, modificando il file /etc/ssh/sshd_config, aggiungendo o modificando le voci ClientAliveInterval e ClientAliveCountMax, ad esempio:
ClientAliveInterval 15
ClientAliveCountMax 15
Le posizioni dei files di configs potrebbe variare da una distribuzione linux ad un altra, ma normalmente quelli indicati sono i percorsi delle principali, come Debian, Ubuntu, Fedora, RH.
Published in:
linux,
shell,
tips
Migliorare la performance di I/O del file system si può aggiungere l'opzione noatime alla partizione montata:
# vi /etc/fstab
proc /proc proc defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0
/dev/md0 /boot ext3 defaults 0 0
/dev/md1 none swap sw 0 0
/dev/md2 / ext3 defaults,noatime 0 0
Non è necessario riavviare il sistema per applicare le modfiche, bastarimontare la partizione:
# mount -o remount /
ed in seguito per visualizzare i parametri con cui abbiamo montato la nostra partzione è sufficiente digitare:+
# mount
si dovrebbe ottenere un risultato come questo:
/dev/md2 on / type ext3 (rw,noatime)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/md0 on /boot type ext3 (rw)
Posted by:
admin (set 21)
Per avere un elenco dei pacchetti software installati sulla vostra Linux Box (Ubuntu/Debian):
dpkg -l|awk '/^ii/{ print $2 }'|grep -v -e ^lib -e -dev -e $(uname -r) > lista.txt
Published in:
linux,
shell,
tips
Posted by:
admin (lug 26)
Ecco un esempio di come riprendere a scaricare un file parzialmente scaricato via scp o rsync. Visto che scp non supporta il resume, se siè iniziato a scaricare il file con questo comando, dobbiamo comunque sostituirlo con un alternativa basata su rsync:
rsync –partial –progress –rsh="ssh -p 1022" root@remotehost:/~/filename filename
Nell'esempio riportato sopra è anche indicato come comporre il comando se si sta usando una porta diversa dalla tradizionale 22 per il protocollo SSH.
Published in:
linux,
shell,
tips
Posted by:
admin (lug 22)
Provate ad usare il validissimo Plowshare (un programma a linea di comando) ingrado di eseguire l'upload e il download per alcuni dei più popolari siti web di file-sharing. Funziona sui sistemi Linux e Unix-like, supporta: Megaupload, Rapidshare, 2Shared, 4Shared, ZShare, Badongo, DepositFiles and Mediafire. In pratica è un sostitutivo di wget per questi siti.
Per installare Plowshare in Ubuntu Linux
1. Se non soddisfatte, ottemperiamo alle dipendenze:
sudo apt-get install curl recode imagemagick tesseract-ocr-eng spidermonkey-bin aview
2. Download Plowshare, estraete il contenuto ed installate. Esiste anche la versione già pacchettizata .deb, se usate quella versione vi basta fare doppio click sul pacchetto e confermare l'installazione, viceversa:
tar xvzf plowshare-0.X
3. Now let's set up Plowshare:
cd plowshare-0.X
sudo bash setup.sh install
I comandi di Plowshare
Download di un file da rapidshare:
plowdown http://www.rapidshare.com/files/86545320/Tux-Trainer_25-01-2008.rar
Download di u na lista di files (uno per linea):
plowdown file_with_links.txt
Download di un file da megaupload con free membership ID:
plowdown -a myuser:mypassword http://www.megaupload.com/?d=132348234
Download di un file protetto da password da megaupload:
plowdown -p somepassword http://www.megaupload.com/?d=ieo1g52v
Get only the file URL without actually downloading it. Very handy if you want to use another web downloader:
plowdown –link-only http://www.2shared.com/file/4446939/c9fd70d6/Test.html | xargs -rt wget
Per utenti avanzati: se hai trovato una pagina con diversi links a files ospitati su megaupload vuoi farne il download, per vedere i primi 10 links, devi usare il seguente comando:
curl http://some-website.com/page.html | \
grep -o "http://www.megaupload.com/[^\"< ]*" | uniq | head -n10 | plowdown -
Per filtrare i links funzionanti in un file di testo:
plowdown -c file_with_links.txt > file_with_active_links.txt
Upload di un file su megaupload con un free membershipID:
plowup -a myuser:mypassword -d "My description" /path/myfile.txt megaupload
Upload di un file su megaupload con un Premium ID e multifetch upload:
plowup -a myuser:mypassword -d "My description" –multifetch http://www.somewherefarbeyond.com/somefile megaupload
Upload di un file su rapidshare anonomamente, cambiando il nome del file dopo l'upload:
plowup /path/myfile.txt rapidshare:anothername.txt
Con screen si può condividere la sonsole tra più utenti connessi in locale o via ssh. Per farlo basta seguire i seguenti passi, le istruzioni sono tipiche per un sistema debian, ma valgono similarmente per altre distribuzioni.
1. Installare screen
sudo apt-get install screen
2. Dal computer host viene eseguito screen col parametro per avviare una sessione screen -S SessionName. -S permette di specificare un nome per la sessione, questo permette di gestire molteplici sessioni e molti user contemporaneamente in maniera facile.
screen -S screen-test
4. L'utente remoto (guest) usa SSH per connettersi al computer remoto (remotehost)
ssh guest@remotehost
5. Il computer host (remotehost) acconsente la connessione multi utente nella sessione screen digitando CTRL-A: multiuser on (tutti i 'comandi screen' si aprono con la sequenza di escape CTRL-A).
CTRL-A:multiuser on
6. Quindi, l'host (remotehost) deve concedere l'autorizzazione per l'utente remoto (guest) per permettergli di accedere alla sessione di screen con il commadn CTRL-A: acladd nome_utente dove nome_utente è login dell'utente remoto.
CTRL-A:acladd guest
7. L'utente remoto può connettersi alla sessione dell'host. La sintassi per connettersi alla sessione di screen di un altro utente è host_username screen-x / sessionname.
screen -x username/screen-test
Published in:
HowTo,
linux,
shell,
tips