Guide
Gruppo Pubblico active 3 settimane, 2 giorni fa agoTutte le guide create dagli utenti di pollycoke. Liberamente modificabili e ampliabili grazie a un comodo “Wiki” e rilasciate con licenza libera GNU FDL. Info: http://bit.ly/eXALYa
Fondamenti di Linux – Parte 1
Libera traduzione della serie di tutorial Linux_Fundamentals
Traduzione: ProGNOMmers, Fabrizio Mele, Alberto, [inserisci il tuo nome/URL qui]
Revisione: [inserisci il tuo nome/URL qui]
– Work In Progress –
Prima di cominciare
Riguardo questo tutorial
Benvenuti a “Fondamenti di Linux”, il primo di una serie di quattro tutorial [qui c'è una parte che non vorrei tradurre così com'è] . In questo tutorial verrà introdotta la Bash (la shell più utilizzata in ambienti Linux), verrà mostrato come utilizzare in maniera proficua comandi standard delle shell Linux come ls, cp, ed mv, saranno illustrati gli inodes, gli hard links e i symbolic links (link simbolici), e molto altro. Al termine di questo tutorial, avrai acquisito le nozioni fondamentali di Linux e sarai pronto per imparare alcuni tasks amministrativi. [questa parte vorrei proprio non tradurla]
Introduzione alla Bash
La shell
Se hai già utilizzato un sistema Linux, avrai notato che dopo aver effettuato l’accesso visualizzerai un prompt simile a questo:
$
Il prompt a te mostrato potrebbe essere abbastanza diverso: potrebbe contenere il tuo host name, il nome della directory corrente, o entrambi. Ma una cosa è certa: il programma che gestisce il prompt viene detto “shell”, e molto probabilmente la shell in questione è un programma chiamato bash.
Stai utilizzando bash?
Puoi controllare che shell stai utilizzando dando il comando:
$ echo $SHELL
Se il comando risponde con un errore o in modo diverso da
/bin/bash
allora è probabile che tu stia utilizzando una shell diversa (come ksh o tcsh). In quel caso la maggior parte del tutorial sarebbe comunque valido, ma sarebbe comunque meglio passare a bash.
Riguardo bash
Bash, acronimo di “Bourne-again shell”, è la shell di default sulla maggior parte dei sistemi Linux. Il compito di una shell è quello di eseguire i tuoi comandi per far sì che tu possa interagire con il tuo sistema. Finito di inserire comandi puoi ordinare alla shell di fare il logout o di terminare, a questo punto sarai reindirizzato a un prompt di accesso.
Puoi comunque eseguire il logout premendo la combinazione CTRL+D nel prompt bash.
Usare “cd”
Come probabilmente avrai notato, fissare il prompt bash non è la cosa più entusiasmante del mondo. Quindi iniziamo ad usare bash per navigare nel nostro file system. Inserisci questo comando nel prompt (senza la $):
$ cd /
Abbiamo appena detto a bash che vogliamo lavorare in /, conosciuta anche come directory root; tutte le directory del sistema formano un albero, e / è considerata in cima a questo albero, o alla radice. cd imposta la directory in cui si lavora, chiamata anche “directory corrente”.
Percorsi
Per visualizzare la directory corrente in cui si sta lavorando si usa il comando:
$ pwd /
Nell’esempio precedente l’argomento / del comando cd è chiamato percorso. Ordina a cd dove ci si vuole spostare. In particolare, / è chiamato percorso assoluto, in quanto specifica una directory relativamente alla root del file system.
Percorsi assoluti
Ecco alcuni percorsi assoluti:
/dev /usr /usr/bin /usr/local/bin
Come puoi vedere, la cosa che accomuna tutti i percorsi elencati è che iniziano con /. Con il percorso /usr/local/bin stiamo dicendo a cd di entrare nella directory /, poi in quella usr all’interno di essa, poi in local e infine in bin. I percorsi assoluti sono sempre composti partendo da /.
Percorsi relativi
L’altro genere di percorso è il percorso relativo. Bash, cd, e altri comandi interpretano sempre questi percorsi relativamente alla directory corrente. I percorsi relativi non iniziano mai con /. Quindi, supponendo di spostarci in /usr:
$ cd /usr
Possiamo usare un percorso relativo per spostarci in /usr/local/bin:
$ cd local/bin $ pwd /usr/local/bin
La directory superiore ..
I path relativi possono contenere una o più directories ... La directory .. è una directory speciale che punta alla directory superiore. Quindi, continuando l’esempio precedente:
$ pwd /usr/local/bin $ cd .. $ pwd /usr/local
Come vedi, ora la directory corrente risulta essere /usr/local. Noi possiamo andare “all’indietro” di una directory da quella in cui siamo al momento.
Inoltre, possiamo anche aggiungere a .. un percorso relativo esistente, in modo da navigare in una direcotry situata accanto a quella in cui siamo, per esempio:
$ pwd /usr/local $ cd ../share $ pwd /usr/share
Esempi di percorsi relativi
I percorsi relativi possono assumere forme relativamente complesse. Di seguito alcuni esempi, per i quali non abbiamo scritto la directory risultante. Cerca di immaginare dove andrai a finire dopo aver scritto questi comandi:
$ cd /bin $ cd ../usr/share/zoneinfo $ cd /usr/X11R6/bin $ cd ../lib/X11 $ cd /usr/bin $ cd ../bin/../bin
Ora, scrivili sulla console e controlla se hai afferrato il concetto :)
La directory corrente .
Ci sono ancora un paio di cose da dire prima di chiudere col comando cd. Per iniziare, il seguente comando sta ad indicare la directory corrente: . . Il comando . è spesso usato per indicare un file all’interno della directory corrente, come segue:
$ ./mio_programma
Il lancio di questo comando dalla console avrà come risultato l’esecuzione del file chiamato “mio_programma”.
cd e la directory “home”
Se volessimo entrare nella nostra “home” directory, potremmo scrivere:
$ cd
Se non gli passiamo nessun argomento, cd si sposterà nella directory “home”, che tipicamente corrisponde a /root per il superutente e /home/nome_utente per un utente normale. Se invece volessimo specificare il percorso di un file nella directory home, per esempio del file “mio_programma”, possiamo scrivere:
$ ./mio_programma /home/claudio/mio_file.txt
Tuttavia, usare un percorso assoluto potrebbe risultare scomodo; possiamo però ricorrere al carattere ~ (tilde), che punta alla home del proprio utente:
$ ./mio_programma ~/mio_file.txt
La directory home degli altri utenti
E’ possibile utilizzare la tilde per puntare la directory home di altri utenti. Per esempio se volessimo far riferimento a un file chiamato “file_di_fred.txt” e posizionato all’interno della sua directory home, potremmo digitare:
$ ./mio_programma ~fred/file_di_fred.txt
Usare i comandi Linux
Introduzione di ls
Ora vedremo rapidamente il comando ls. Molto probabilmente conosci già il comando ls e sai che, se lo digiti da solo, ti verrà mostrato il contenuto della directory sulla quale stai lavorando:
$ cd /usr $ ls bin games include lib lib32 lib64 local sbin share src X11R6
Specificando l’opzione -a si possono vedere tutti i file presenti nella directory, anche i file nascosti: quelli che cominciano con “.”. Come puoi notare nell’esemio seguente il comando ls -a rivela il “.” e il “..” link speciali della directory:
$ ls -a . .. bin games include lib lib32 lib64 local sbin share src X11R6
Lunghi elenchi di directory
Puoi specificare uno o più di un file o directory nella riga del comando ls: Se specifichi un file, ls ti mostrerà solamente quel file, mentre se specifichi una directory, ls ti mostrerà solamente il contenuto della directory.
L’opzione -l ti verrà in aiuto quando hai necessità di vedere informazioni quali i permessi, la proprietà, l’ultima modifica e la dimensione del file nel tuo elenco di directory.
La visualizzazione dei commenti è stata disabilitata per questo documento.
L'invio dei commenti è stato disabilitato per questo documento.





Discussioni più calde