In questo capitolo, vi presenteremo i comandi più importanti del vostro sistema SUSE LINUX, accennandone il significato e soffermandoci su alcuni parametri con relativi esempi di applicazione. Per maggiori informazioni sui comandi, lanciate il programma man, seguito dall'opzione corrispondente al comando di cui desiderate conoscere il significato (ad esempio, man ls).
In queste manpage (“pagine di manuale”), potete muovervi in su e in giù con Pag Giù e Pag Sù oppure andare all'inizio o alla fine della documentazione con Home o Fine. Potete terminare questa modalità di visualizzazione premendo Q. Immettendo man man, potete avere ulteriori informazioni sul comando man stesso.
Se siete interessati ad avere un elenco dei diversi programmi a riga di comando più dettagliato di quanto fornito più sotto, vi consigliamo il libro Linux in a Nutshell dell'editore O'Reilly. Nella seguente breve descrizione, i singoli elementi dei comandi saranno contraddistinti da differenti caratteri.
Il comando e le opzioni vanno scritti nell'ordine comando
opzione. Le indicazioni o i parametri che non sono assolutamente
indispensabili vengono indicati fra [parentesi quadre].
Dovrete adattare le possibili indicazioni alle vostre necessità . Non ha
senso scrivere ls file se non esiste veramente un file
chiamato file. Potete generalmente combinare più
parametri semplicemente scrivendo ls -la invece di
ls -l -a.
Nel seguente sezione elencheremo i comandi principali in tema di amministrazione dei file. Tratteremo dalla amministrazione dei file generale fino alla impostazione delle ACL di file system.
[opzioni]
[file]Inserendo ls senza altre indicazioni o parametri, otterrete, in forma abbreviata, il contenuto della directory in cui vi trovate.
-lelenco dettagliato
-amostra i file nascosti
[opzioni]
fileorigine filedestinazione
Crea una copia del file di partenza sul
file di destinazione.
Aspetta una conferma, prima di soprascrivere un file di
destinazione esistente.
-rCopia in modo ricorsivo (includendo le sottodirectory)
[opzioni]
fileorigine filedestinazione
Crea una copia del file di partenza nel
file di destinazione e cancella il file originario.
-b
Crea una copia di sicurezza d fileorigine prima
di spostarlo
-iAspetta eventualmente una conferma, prima di sovrascrivere un filedestinazione esistente
[opzioni] file
Elimina i file indicati dal file system.
rm non cancella le directory, a meno che non
aggiungiate il parametro -r.
Cancella anche le sottodirectory.
Aspetta una conferma prima di cancellare ogni file.
[opzioni]
fileorigine filedestinazione
Crea sul file di destinazione un richiamo interno
(“link”) al file di partenza, sotto un
altro nome. Normalmente, questo richiamo riporta direttamente alla
posizione esatta del file di partenza all'interno di
un file system. Invece, immettendo il comando ln
accompagnato dall'opzione -s, si crea un cosiddetto
link simbolico che riporta solamente al path del
file di partenza e funziona pertanto anche oltre i
confini del file system.
-sCrea un collegamento simbolico
[opzioni]
directoryPassa da una directory ad un'altra. Inserendo solo cd, il programma vi fa passare nella home directory.
opzioni
nomedirectoryCrea una nuova directory.
[opzioni]
nomedirectoryCancella la directory indicata solo se è già vuota.
[opzioni]
nomeutente.gruppo file
Cambia il proprietario di un file, mettendoci lo
username indicato.
-RModifica i file e le directory in tutte le sottodirectory
[opzioni]
nomegruppofile
Cambia il nome del gruppo che possiede un dato file
con il nome del gruppo da voi indicato. Il
proprietario del file può cambiare questo valore solo se è membro sia
del gruppo precedente che del nuovo gruppo.
[Opzioni] modo fileModifica i diritti di accesso.
Il parametro modo ha tre parti:
gruppo, accesso e tipo di
accesso. gruppo accetta i seguenti
caratteri:
utente
gruppo
tutti gli altri
+ e - sono accettati da
accesso; il simbolo + permette
l'accesso, il simbolo - lo impedisce.
Il tipo di accesso è controllato dalle seguenti
opzioni:
lettura
scrittura
esecuzione – per eseguire i file o per entrare nella directory.
bit setuid – il programma viene avviato come se venisse eseguito dal proprietario del file.
Alternativamente, potete usare il codice numerico: le quattro cifre di questo codice risultano rispettivamente dalla somma dei valori 4, 2, e 1. Al primo posto, mettete la set user ID (4), la set group ID (2) e gli atttributi sticky (1). Al secondo posto, definite i diritti del proprietario del file; al terzo posto, i diritti dei membri del gruppo; l'ultimo valore, invece, determina i diritti di tutti gli altri utenti. Il diritto di lettura è codificato dal numero 4, quello di scrittura dal 2 ed il diritto di esecuzione dall'1. Il proprietario di un file, di solito, ottiene un valore di 7, che corrisponde alla somma di tutti i diritti.
[parametri]
file
Questo programma comprime il contenuto dei file per mezzo di una una
complessa procedura matematica. I nomi dei file cosà compressi terminano
con .gz e devono essere decompressi prima di potere
essere usati. Per comprimere più file o intere directory, invece, si
ricorre anche al comando tar.
decomprime i file gzip compressi; questi ritornano alla loro dimensione originale e possono venire elaborati normalmente (corrisponde al comando gunzip).
opzioni nome
archivio filetar riunisce uno o (più solitamente) una serie di file in un unico “archivio”, che può in seguito essere compresso.
tar è un comando molto complesso che mette a disposizione un gran numero di opzioni. Qui sotto vi spiegheremo le opzioni usate più frequentemente.
-fScrive l'output su un file e non sullo schermo come avviene di solito
-cCrea un nuovo archivio tar
-rAggiunge file ad un archivio già esistente
-tElenca il contenuto di un archivio
-uAggiunge file, ma solo se più recenti di quelli già contenuti nell'archivio
-xEstrae i file da un archivio eXtraction
-zComprime l'archivio creato con gzip
-jComprime l'archivio creato con bzip2
-vElenca i nomi di tutti i file elaborati
I file di archivio creati da tar terminano con
.tar. Se l'archivio tar è stato anche compresso
usando gzip, il suffisso è .tgz
oppure .tar.gz. Se è stato compresso usando
bzip2, il suffisso è .tar.gz,
per bzip2 è .tar.bz2.
Potete trovare alcuni esempi nella Sezione 19.1.8, “Archiviazione e compressione dei dati”.
modelli
Questo comando è disponibile solo se avete installato il
pacchetto findutils-locate. Con locate, potete scoprire in quale directory
si trovi un determinato file. Potete anche usare i "caratteri jolly".
Il programma lavora molto velocemente, perché non cerca lentamente nel
filesystem, ma in una banca dati creata appositamente. Questo, tuttavia,
è anche il tallone d'Achille di questo velocissimo comando, dal momento
che, nella banca dati, non troverete i file creati successivamente al suo
ultimo aggiornamento.
Il database può essere generato da root tramite il comando
updatedb.
[opzioni]
Questo comando vi permette di aggiornare la banca dati di
locate. Per includervi tutti i file, dovrebbe
essere l'utente root ad avviare il programma. Inoltre, vi conviene
farlo eseguire in sottofondo aggiungendo, alla fine del comando, una “e”
commerciale (&); in questo
modo, potete continuare a lavorare anche voi (updatedb
&).
Questo comando viene eseguito di solito come job di cron
quotidiano (si veda
cron.daily).
[opzioni]Con il comando find, potete cercare un file in una determinata directory. Il primo argomento indica la directory da cui debba partire la ricerca. L'opzione -name ha bisogno di una stringa da cercare, la quale potrà contenere anche le "wildcard". Al contrario di locate, find va a cercare il file nella directory e non in una banca dati propria.
[opzioni] file
Il comando cat stampa senza interruzione il contenuto del file indicato.
Aggiunge sul bordo sinistro i numeri di riga
[opzioni] file
Questo comando vi permette di percorrere il contenuto del file indicato. Ad esempio, con i tasti PagGiù e PagSu, potete far scorrere una mezza pagina in avanti ed indietro, mentre, con la barra dello spazio, saltate di una pagina intera. Inoltre, con Pos1 o Fine, passate rispettivamente all'inizio e alla fine del file. Con Q, si chiude il programma.
[comandi]
lemma nomefile
grep serve a trovare un determinato lemma nei
file indicati. Se la ricerca ha successo,
grep indica la riga in cui ha trovato il lemma
e anche il nome del file.
-iIgnora le differenze tra maiuscole e minuscole
-HIndica solo il nome del file corrispondente, ma non la riga del testo
-nIndica anche il numero delle righe in cui si trova il lemma
-l
Elenca solo i file in cui lemma
non appare
[opzioni]
file1 file2Il comando diff è stato creato per confrontare il contenuto di due file e visualizzarne le righe modificate, in forma di elenco. Questo comando viene spesso usato dai programmatori che in questo modo possono scambiarsi solo le loro modifiche dei programmi e non l'intero codice sorgente.
-qComunica solo se i due file indicati differiscono
-uProduce un diff “unified” per un output comodamente leggibile
[opzioni]
[dispositivo] punto di mount
Questo comando vi permette di montare qualsiasi lettore o supporto dati nel filesystem. "Montare" significa integrare disci rigidi, CD-ROM e altre unità in una directory del filesystem di Linux.
-rmontare solo per la lettura read-only.
-t filesystem
indica il filesystem. I più usati sono: ext2 per i
dischi rigidi di Linux, msdos per i dispositivi
MS-DOS, vfat per il filesystem di Windows e
iso9660 per i CD.
Per i dischi rigidi che non sono definiti nel file
/etc/fstab, dovete indicare anche il tipo di
dispositivo. In questo caso, solo l'utente
root può montare. Se il
filesystem deve essere montato anche da altri utenti, indicate ,
nell'apposita riga del file /etc/fstab, l'opzione
user (separata da virgole) e salvate questa modifica.
Per maggiori dettagli, vi preghiamo di consultare la voce mount(1).
[opzioni]
puntodimount
Questo comando estrae un qualsiasi dispositivo dal filesystem. Date
questo comando prima di rimuovere un supporto di dati dal lettore,
altrimenti rischiate di perdere i dati del supporto. Sia
mount, che umount possono essere
eseguiti solo da root, a meno
che non si specifichi l'opzione user nel file
/etc/fstab.
Nella seguente sezione elencheremo alcuni dei principali comandi per recuperare delle informazioni sul sistema nonché per il controllo dei processi di sistema e della rete.
[opzioni]
[directory]Il comando df disk free chiamato senza opzioni, mostra i dati relativi a tutto lo spazio disco, allo spazio disco occupato e allo spazio disponibile su tutte le unità montate. Se invece specificate una directory, verranno mostrate le informazioni relative all'unità su cui si trova la directory.
-hmostra il numero dei blocchi occupati in Gigabyte, Megabyte o Kilobyte — in formato umanamente leggibile
-Ttipo dell'unità (ext2, nfs, ecc.).
[opzioni]
[percorso]Questo comando, immesso senza parametri, mostra lo spazio totale del disco usato da tutti i file contenuti nella directory corrente. Se esistono sottodirectory, vengono mostrate anche le loro dimensioni.
-aIndica la dimensione di ogni singolo file
-hVisualizzazione in forma umanamente leggibile
-sIndica solo la dimensione totale calcolata
[opzioni]
free indica l'insieme della memoria totale, della RAM e della memoria di swap.
-bIndicazione in byte,
-kIndicazione in kilobyte,
-mIndicazione in megabyte
[opzioni]
Questo piccolo programma indica l'ora attuale del sistema. L'utente
root può usare questo comando
anche per cambiare l'ora del sistema. Potete trovare ulteriori dettagli
nella manpage (date(1)).
[opzioni]
top elenca i processi attualmente in esecuzione. Premete H ed otterrete una spiegazione delle opzioni più importanti che permettono di adattare il programa alle necessità individuali dell'utente.
[opzioni]
[ID processo]Immesso senza opzioni, questo comando fornisce una tabella di tutti i vostri processi, cioè quei programmi o processi avviati da voi. Attenzione: le opzioni di questo comando non hanno bisogno di essere precedute da un trattino.
Fornisce un elenco dettagliato di tutti i processi, indipendentemente dal proprietario.
[opzioni]
ID processoPuò succedere che non si riesca più a chiudere un programma. Specificate l' ID di processo (vd. top e ps) quindi eseguite kill per “fredderà” tutti quei processi “duri a morire”. Tale comando invia un cosiddetto segnale TERM che ingiunge al programma di terminare le proprie operazioni. Se ciò non dovesse funzionare, esiste un parametro più utile:
Invia un segnale KILL al posto di un segnale TERM terminando nella maggioranza dei casi il processo specificato.
[opzioni]
nomeprocessoQuesto comando funziona in maniera simile a kill, con la differenza che gli basta il nome del processo (e non l'ID) per terminare tutti i processi con quel nome.
[opzioni]
nomehost o indirizzo IP
Non c'è niente di meglio di ping per verificare il funzionamento delle reti TCP/IP. Questo programma invia un piccolo pacchetto di dati ad un altro computer con l'ordine di rimandarlo subito indietro. Se funziona, ping vi comunica che la vostra rete è in grado di trasmettere e ricevere.
-c
numero stabilisce il numero totale dei pacchetti da
spedire e il programma termina dopo il loro invio. Se non si specifica
questa opzione, non vi è alcun limite prestabilito.
-f
flood ping, ossia
inondazione ping invia la maggior quantità possibile di
pacchetti di dati. E' un buon metodo, riservato a root, per controllare le reti.
-i
valore stabilisce l'intervallo in secondi fra due
pacchetti di dati; di solito si tratta di un secondo.
Per trasformare il nome di un dominio in un indirizzo IP, ecco a voi il Domain Name System. Questo strumento vi consente di contattare irelativi servizi di informazione (server DNS).
[opzioni]
hostname/indirizzo IP
Telnet, comunque, è anche il nome di un programma Linux che interpreta proprio questo protocollo e vi rende possibile lavorare con altri computer senza dover sedere davanti ad essi.
![]() | Avvertimento |
|---|---|
Fate attenzione, tuttavia, a non usare telnet su reti che possono venire intercettate da altre persone. Soprattutto su Internet, è bene usare metodi di trasmissione cifrati, come ssh, per evitare il rischio di un uso improprio della vostra password (consultate la pagine di manuale di ssh). | |
[opzioni]
[nomeutente]
Ogni utente può cambiare in qualsiasi momento la propria password con
questo comando. Anche il superutente root può usarlo per cambiare la
password di qualsiasi utente.
[opzioni]
[nomeutente]
su vi permette di cambiare utente durante la sessione.
Senza altri parametri, il comando vi chiede la password di
root e, se la immettete
correttamente, vi fornisce i diritti di superutente. Inoltre, indicando
il nome di un utente e la sua password corretta, potete lavorare a suo
nome. Per inciso, l'utente
root non ha bisogno di questa
password, dal momento che può assumere l'identità di qualunque
utente. Se utiizzate il comando senza specificare un nome utente
vi verrà chiesta la password di root
per diventare il superuser (root).
[opzioni]Se non volete perdere dati, vi consigliamo di usare sempre questo programma per spegnere gradualmente il vostro computer.
[opzioni]Funziona allo stesso modo di halt, con la differenza che riavvia subito il sistema.
Se la console di testo vi è diventata troppo piena, “ripulitela” con questo comando. E' un comando senza opzioni.