Dimensione: 16062
Commento: piccole modifiche
|
Dimensione: 15425
Commento: modificato link "nano"
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 2: | Linea 2: |
#format wiki | |
Linea 6: | Linea 7: |
[[Include(StrumentiWiki/GuideConsigliate)]] |
|
Linea 10: | Linea 13: |
Tante delle azioni sopra elencate, come noto alla maggior parte degli utenti, possono essere svolte tramite programmi a interfaccia grafica. La shell può essere utile qualora sussistano dei malfunzionamenti di tali programmi e si vogliano tracciare eventuali ''bug'', nel caso non esistano programmi a interfaccia grafica o semplicemente perché l'utente ritiene comodo usarla. Il seguente tutorial non è una guida dettagliata all'uso dei comandi, vuole solo introdurre gli utenti alle prime armi alla linea di comando e ad alcuni aspetti del file system. Per approfondire l'uso dei singoli comandi si rimanda alla pagina [:ComandiBase] e alle singole pagine presenti nel wiki di Ubuntu. = Come funziona la shell = |
Tante delle azioni sopra elencate, come noto alla maggior parte degli utenti, possono essere svolte tramite programmi a interfaccia grafica. La riga di comando può essere utile qualora sussistano dei malfunzionamenti di tali programmi e si vogliano tracciare eventuali [:Bug:bug], nel caso non esistano programmi a interfaccia grafica o semplicemente perché l'utente ritiene comodo usarla. Gli esempi contenuti in questa guida sono volutamente banali, la maggior parte delle seguenti operazioni possono essere svolte facilmente con pochi clic di mouse, ciò non toglie che la conoscenza di alcuni concetti base può permettere anche agli utenti tecnicamente meno preparati di riuscire a svolgere le procedure più comuni. = Come funziona il terminale = |
Linea 17: | Linea 20: |
== Aprire un terminale == Per aprire un terminale: * con Ubuntu dalla versione '''5.10''' e successive: * '''''Applicazioni -> Accessori -> Terminale''''' * con le versioni di Ubuntu __precedenti__ alla '''5.10''': * '''''Applicazioni -> Strumenti di sistema -> Terminale''''' ##aggiungere Kubuntu e Xubuntu |
== Aprire una finestra di terminale == Seguire le indicazioni adatte alla versione del sistema in uso: * '''Ubuntu''': * fare clic su '''''Applicazioni -> Accessori -> Terminale'''''; * '''Kubuntu''': * fare clic su '''''Menu K -> Sistema -> Konsole'''''; * '''Xubuntu''': * fare clic su '''''Applications -> Accessories -> Terminale'''''. |
Linea 31: | Linea 35: |
Per capire come funziona la shell si prenda come modello un utente che durante l'installazione, fra le varie cose, abbia impostato: * nome utente: '''mario''' * nome del computer: '''mario-desktop''' Questo utente, all'interno della directory {{{home}}}, avrà un'altra directory con il suo stesso nome, cioè {{{mario}}} il cui percorso sarà {{{/home/mario}}}. Può accedervi dal menù '''''Risorse -> Cartella Home'''''. Questa cartella, nota anche come '''home utente''', riveste una grande importanza all'interno del sistema, dato che al suo interno, sotto forma di file nascosti (file con un punto davanti al nome), sono memorizzate tutte le configurazioni dell'utente. [[Immagine(Icone/Piccole/note.png,,left)]] [[BR]] Per visualizzare file nascosti, scegliere '''''Visualizza -> Mostra file nascosti'''''. [[BR]] [[BR]] Per esempio, nella directory {{{.mozilla}}} sono memorizzati i dati riguardanti il browser '''Firefox''': segnalibri, estensioni, impostazioni menù, ecc.; nel caso sia installato il programma di posta '''Thunderbird''', in {{{.mozilla-thunderbird}}} saranno archiviate le email, gli indirizzi di posta ecc.; e così via per qualsiasi programma installato. Vediamo ora più dettagliatamente dove si colloca la '''home utente''' all'interno del file system con l'aiuto di alcune immagini. |
=== Il contenuto della cartella Home === Per capire come funziona la riga di comando si prenda come modello un utente che durante l'installazione, fra le varie cose, abbia impostato come nome utente '''mario''' e come nome del computer '''mario-desktop'''. A disposizione di tale utente, all'interno della cartella `/home`, ci sarà una cartella con il suo stesso nome, cioè `mario`, il cui percorso completo sarà `/home/mario`, alla quale potrà accedervi dal menu '''''Risorse -> Cartella Home'''''. Tale cartella, nota anche come '''home utente''', riveste una grande importanza all'interno del sistema, dato che al suo interno, sotto forma di file nascosti, sono memorizzate tutti file di configurazione dei programmi. ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Grandi/info.png,,center)]] ||<style="padding:0.5em; border:none;">Per visualizzare file nascosti, fare clic su '''''Visualizza -> Mostra file nascosti'''''. || Per esempio, nella sottocartella `~/.mozilla` vengono memorizzati i dati riguardanti il browser '''Firefox''': segnalibri, estensioni, impostazioni menu, etc; nel caso sia installato il programma di posta '''Thunderbird''', in `~/.mozilla-thunderbird` saranno archiviate le email, gli indirizzi di posta etc. ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''Per nascondere un file è sufficiente preporre un punto prima del suo nome. Ad esempio, per nascondere il file'' `script.sh` ''è sufficiente [:AmministrazioneSistema/ComandiBase#mv:rinominarlo] in'' `.script.sh`. || === Il file system === attachment:file_system70.png Si può accedere alla radice del file system scegliendo '''''Risorse -> Computer''''', facendo clic sull'icona «'''File system'''» oppure selezionando «'''File system'''» dalla barra laterale sinistra. Il file system, inteso come la directory che contiene tutte le altre, è rappresentato dal simbolo «/», chiamato '''root''', da non confondere con la cartella `/root`, la '''Home''' dell'amministratore. Se si desiderano maggiori informazioni sulle partizioni consultare la [:Hardware/DispositiviPartizioni/PartizioniUbuntu:relativa guida]. === La directory /home/ === attachment:home70.png È la directory che contiene tutte le '''Home''' degli utenti presenti nel sistema. Nel sistema in figura è presente solo la '''Home''' dell'utente '''mario''', ma aggiungendo utenti al sistema verranno create le relative cartelle '''Home'''. === La cartella Home === attachment:home_utente70.png Nella directory `/home/mario` sono presenti alcuni file, alcuni memorizzati dall'utente stesso e altri già presenti dalla prima installazione come, ad esempio, la directory `Desktop` che ovviamente andrà a contenere tutti i file, cartelle e icone di avvio presenti sulla scrivania. |
Linea 43: | Linea 65: |
=== File system === attachment:file_system70.png Vi si può accedere scegliendo '''''Risorse -> Computer''''', facendo clic sull'icona '''File system''' o selezionando '''File system''' dalla barra laterale sinistra. Il file system, inteso come la directory che contiene tutte le altre, è rappresentato dal simbolo «'''/'''», chiamato anche "radice" (root), da non confondere con la directory {{{/root}}} (che sarebbe la Home dell'utente root). Si possono trovare maggiori informazioni sul significato delle singole directory nelle pagine [http://help.ubuntu-it.org/6.06/ubuntu/desktopguide/it/linux-basics.html Fondamenti di Linux] e [:PartizioniUbuntu]. La directory che prenderemo ora in esame è quella evidenziata nella figura: la directory `home`. === home === attachment:home70.png È la directory che contiene tutte le eventuali '''home utente''' presenti nel sistema. Nel sistema in figura è presente solo la Home dell'utente '''mario''', ma aggiungendo utenti al sistema verranno create le relative cartelle Home. === home utente === attachment:home_utente70.png Come vedete, nella directory `/home/mario` sono presenti alcuni file, certi memorizzati dallo stesso '''mario''' altri già presenti dalla prima installazione come la directory `Desktop` che ovviamente andrà a contenere tutti i file, cartelle e icone di avvio presenti sulla scrivania. == La shell == Un'ultima osservazione prima di addentrarci nei dettagli: nella shell, la '''home utente''' viene generalmente indicata con il simbolo '''~''', chiamato «tilde». Per ottenerlo, occorre premere i tasti '''Alt``Gr+ì'''. [#aprire Aprendo un terminale] l'utente '''mario''' visualizzerà: |
== Digitare i comandi nel terminale == La cartella '''Home''' viene generalmente indicata con il simbolo «~», chiamato ''tilde''. Per ottenerlo, occorre premere i tasti '''Alt``Gr+ì'''. [#aprire Aprendo un terminale] l'utente '''mario''' otterrà un risultato simile al seguente: |
Linea 71: | Linea 73: |
Questo messaggio dice che: * l'utente '''mario''', all'interno del computer '''mario-desktop''', si trova attualmente nella propria '''home utente''', cioè '''{{{mario}}}''', cioè '''~'''.[[BR]] [[BR]] Il simbolo «'''$'''» indica la modalità "utente". Esiste anche una modalità "amministratore" (comando: {{{sudo su}}}) caratterizzata dal simbolo «'''#'''», che però in Ubuntu capita di vedere di rado. Si veda a tal proposito la pagina [http://wiki.ubuntu-it.org/Sudo Sudo]. Per avere la conferma di essere nella cartella {{{mario}}}, è utile eseguire il comando «'''pwd'''», che serve a visualizzare il percorso attuale in cui si trova la shell. Quindi digitando: {{{ |
Il messaggio della figura mostra alcune informazioni: * l'utente '''mario''', all'interno del computer '''mario-desktop''', si trova attualmente nella propria '''Home''', cioè `/home/mario/, indicata con «~»; * è attiva la ''modalità utente'', indicata dal simbolo «$». Esiste anche una ''modalità amministratore'', attivabile con il comando '''sudo su''', caratterizzata dal simbolo «#». Per maggiori informazioni sui privilegi di amministrazione consultare la [:Amministrazione/Sudo:relativa guida]. Per avere la conferma di essere nella cartella `/home/mario/` è utile eseguire il comando [:AmministrazioneSistema/ComandiBase#pwd:pwd], il quale stamperà a schermo il percorso corrente. Digitare il seguente comando: {{{ |
Linea 78: | Linea 80: |
}}} e premendo '''Invio''' (ovviamente va sempre dato l'invio per far partire un comando) si otterrà: | }}} Il risultato sarà simile al seguente: |
Linea 82: | Linea 86: |
Se invece darà il comando «'''ls'''», otterrà l'elenco dei file presenti nella cartella {{{mario}}} (il comando «'''ls -a'''» elenca anche i file nascosti): {{{ | Se invece si digiterà il comando [:AmministrazioneSistema/ComandiBase#ls:ls] si otterrà l'elenco dei file presenti nella cartella `/home/mario/`: {{{ |
Linea 86: | Linea 91: |
Il nostro utente può muoversi attraverso il file system con la shell usando il comando '''cd'''. Supponiamo voglia spostarsi nella cartella {{{doc}}} (percorso: {{{/usr/share/doc}}}). Dovrà dare il comando {{{cd /usr/share/doc}}}: {{{ | L'utente può muoversi attraverso il file system con il terminale utilizzando il comando [:AmministrazioneSistema/ComandiBase#cd:cd]. Se si desidera spostarsi nella cartella `/usr/share/doc` sarà utile digitare il comando '''cd /usr/share/doc''', come nel seguente esempio: {{{ |
Linea 88: | Linea 94: |
}}} ed otterrà: {{{ | }}} Il risultato sarà simile al seguente: {{{ |
Linea 91: | Linea 100: |
Si noti che ora, alla sinistra del simbolo «'''$'''», viene indicata la nuova posizione nella cartella {{{doc}}}. Abbiamo quindi capito che con la shell possiamo andare "a spasso" per il file system e al suo interno sarà possibile eseguire i comandi di cui abbiamo bisogno. Consultando la guida [:ComandiBase] potrete familiarizzare con i comandi basilari. Questa guida procede ora con alcuni esempi pratici e relativi suggerimenti sull'uso della shell. Più che altro, si vuole mettere in guardia l'utente da possibili errori. Per fare questo continuiamo ad avvalerci della preziosa collaborazione dell'utente '''mario''' e del suo file system. |
Dopo aver digitato il precedente comando, alla sinistra del simbolo «$», viene indicata la nuova posizione nella cartella `/usr/share/doc`. |
Linea 98: | Linea 104: |
Linea 102: | Linea 109: |
Per evitare di digitare ogni singola lettera scrivendo per es. `/home/mario/Desktop`, si può usare il tasto '''Tab''' (individuabile sulla sinistra della tastiera: è quello con le due frecce sovrapposte, accanto al tasto «'''Q'''»). Digitando `/h` e premendo il tasto '''Tab''', la stringa si autocompleta in `/home/`. Aggiungendo la «'''m'''»: `/home/m` + '''Tab''' si avrà `/home/mario/` e così via fino ad ottenere `/home/mario/Desktop`. Se nella directory `/home` sono presenti sia mario che michele, alla pressione del tasto '''tab''' non accadrà niente, perchè giustamente non è possibile sapere quale dei due l'utente stia richiedendo, ma premendo una seconda volta il tasto '''tab''' verranno presentati tutti i file e directory che iniziano per «'''m'''»; digitando anche la lettera «'''a'''» l'ambiguità scompare e quindi premendo nuovamente '''tab''' il nome ''mario'' verrà completato. Se oltre a ''mario'' e ''michele'' è presente anche ''maria'', l'autocompletamento si bloccherà correttamente a `/home/mari`, e l'utente dovrà aggiungere l'ultima lettera. [[Immagine(Icone/Piccole/warning.png,,left)]] [[BR]] '''Attenzione: nella shell le lettere minuscole sono "diverse" dalle lettere maiuscole: si dice che è [http://it.wikipedia.org/wiki/Sensibile_alle_maiuscole sensibile alle maiuscole] o case sensitive. Vale per tutto: comandi, file, directory. La digitazione deve necessariamente rispettare le lettere maiuscole e minuscole.'''[[BR]] |
Per evitare di digitare ogni singola lettera si può usare il tasto «'''Tab'''» (posto solitamente sulla sinistra della tastiera, accanto al tasto «'''Q'''»). Ad esempio, digitando «/h» e premendo il tasto '''Tab''', la stringa si autocompleterà in «/home/». Aggiungendo la «m» e premendo nuovamente «'''Tab'''» si otterrà la stringa «/home/mario/» e così via fino ad ottenere «/home/mario/Desktop». Se nella cartella `/home/` sono presenti degli utenti '''mario''' e '''michele''', alla pressione del tasto «'''Tab'''» non accadrà niente poichè ci si trova di fronte ad un'ambiguità. Premendo una seconda volta il tasto «'''Tab'''» verrà stampato l'elenco dei file e delle directory che iniziano per «m»; se successivamente si digita anche la lettera «a» l'ambiguità sarà risolta, dunque premendo nuovamente «'''Tab'''» la stringa «mario» verrà completata. Se oltre a ''mario'' e ''michele'' è presente anche ''maria'', l'autocompletamento si bloccherà correttamente a «/home/mari», e l'utente dovrà aggiungere l'ultima lettera. ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''Poichè il terminale è [http://it.wikipedia.org/wiki/Sensibile_alle_maiuscole sensibile alle maiuscole], le lettere minuscole sono diverse da quelle maiuscole. La digitazione dei comandi e dei percorsi deve necessariamente rispettare la corretta sintassi''. || |
Linea 112: | Linea 119: |
Non è possibile selezionare con il mouse una delle parole interne ad un comando per modificarla o cancellarla. Dovremo necessariamente spostare il cursore con i tasti '''Freccia destra/sinistra''' per portarlo nella posizione che ci interessa. Per velocizzare lo spostamento del cursore si possono usare alcune combinazioni con i tasti '''Freccia''' e i tasti '''Fine''' e '''Home''' (tasto con la freccia diretta in alto a sinistra): * '''Ctrl+Freccia destra/sinistra''': il cursore "salta" di parola in parola * '''Home''': cursore ad inizio stringa * '''Fine''': cursore a fine stringa |
Poichè non è possibile selezionare con il mouse una delle parole interne ad un comando per modificarlo o cancellarlo, è necessario spostare il cursore con i tasti «'''Freccia destra'''» e «'''Freccia sinistra'''» per portarlo nella posizione desiderata. Per velocizzare lo spostamento del cursore si possono usare alcune combinazioni con i tasti sopracitati e i tasti «'''Fine'''» e «'''Home'''» (tasto con la freccia diretta in alto a sinistra). Quelli che seguono sono degli esempi: ||<tablestyle="width:50%" : 10% style="background-color:#FB8B00;">'''Combinazione''' ||<style="background-color:#FB8B00;":>'''Descrizione''' || ||<:>'''Ctrl+Freccia destra''' || sposta il cursore di una parola a destra || ||<:>'''Ctrl+Freccia sinistra''' || sposta il cursore di una parola a sinistra || ||<:>«'''Home'''» || sposta il cursore all'inizio della stringa || ||<:>«'''Fine'''» || sposta il cursore alla fine della stringa || |
Linea 121: | Linea 131: |
* '''Ctrl+W''': cancella la parola a sinistra del cursore * '''Ctrl+U''': cancella tutte le parole a sinistra del cursore * '''Ctrl+K''': cancella tutte le parole a destra del cursore |
Le seguenti combinazioni di tasti sono utili per cancellare velocemente le parole digitate: ||<tablestyle="width:50%" : 10% style="background-color:#FB8B00;">'''Combinazione''' ||<style="background-color:#FB8B00;":>'''Descrizione''' || ||<:>'''Ctrl+W''' || cancella la parola a sinistra del cursore || ||<:>'''Ctrl+U''' || cancella tutte le parole a sinistra del cursore || ||<:>'''Ctrl+K''' || cancella tutte le parole a destra del cursore || |
Linea 127: | Linea 140: |
I comandi impartiti rimangono in memoria. Per poterli richiamare è sufficiente usare i tasti '''Freccia su/giù'''; in su per scorrere a ritroso i comandi già utilizzati e in giù per tornare a quelli più recenti. | I comandi impartiti rimangono in memoria. Per poterli richiamare è sufficiente usare i tasti «'''Freccia su'''» (per lo scorrimento a ritroso) e «'''Freccia giù'''» (per lo scorrimento in avanti). |
Linea 133: | Linea 146: |
Per agire sui file (creare, rimuovere, spostare, copiare, ecc.) occorre indicare il percorso delle directory oppure spostarsi all'interno della directory in cui si trova il file interessato. Supponiamo di voler rimuovere, attraverso il comando «'''rm'''», il file {{{canzone.ogg}}} che si trova in {{{/home/mario/Desktop}}}. Si può dare subito il comando con il percorso: {{{ | Per [:AmministrazioneSistema/ComandiBase#gestionefiledirectory:agire sui file] occorre indicare sempre i percorsi completi oppure spostarsi all'interno della cartella in cui si trova il file interessato. Supponiamo di voler rimuovere, attraverso il comando [:AmministrazioneSistema/ComandiBase#rm:rm], il file `canzone.ogg`, memorizzato in `/home/mario/Desktop`. A tale scopo è possibile digitare il seguente comando, nel quale viene specificato il percorso completo del file: {{{ |
Linea 136: | Linea 150: |
oppure prima ci possiamo spostare nella directory {{{Desktop}}}: {{{ | In alternativa è possibile spostarsi nella cartella `Desktop` per poi procedere alla rimozione del file con i seguenti comandi: {{{ |
Linea 138: | Linea 154: |
}}} e poi dare il comando: {{{ | |
Linea 142: | Linea 157: |
Comando senza percorso: Dalla shell, certi comandi si possono eseguire indipendentemente dalla directory in cui ci si trova. Un esempio può essere l'installazione di programmi tramite [:Apt:apt-get]: {{{ sudo apt-get install nome_programma |
Alcuni comandi non necessitano della digitazione di alcun percorso. Ad esempio, per [:AmministrazioneSistema/InstallareProgrammi:installare] un pacchetto con [:AmministrazioneSistema/Apt:apt-get] è sufficiente specificarne solo il nome; la sintassi del comando sarà dunque simile alla seguente: {{{ sudo apt-get nome_pacchetto |
Linea 148: | Linea 164: |
È importante rispettare gli spazi all'interno del comando. Nel caso precedente, usando: {{{ rm /home/mario/Desktop/canzone.ogg }}} è stata rispettata questa forma: {{{ |
Affinchè i comandi vengano correttamente eseguiti è necessario rispettare gli spazi durante la digitazione. Nel'esempio precedente relativo alla cancellazione di un file è stata rispettata la seguente forma: {{{ |
Linea 156: | Linea 169: |
Ci vorrà più attenzione se aumentano gli input. Per esempio, supponiamo di avere il file {{{canzone.ogg}}} nel ''Desktop'' (percorso {{{/home/mario/Desktop/canzone.ogg}}}) e di volerne creare una copia con il nome {{{song.ogg}}} in una cartella del ''Desktop'' chiamata {{{archivio_musica}}} (percorso: {{{/home/mario/Desktop/archivio_musica/song.ogg}}}). Usando il comando '''cp''' si ha: {{{ | Più parole verranno incluse nel comando e maggiore sarà l'attenzione necessaria. Ad esempio, supponendo di voler creare una copia del file `/home/mario/Desktop/canzone.ogg` in `/home/mario/Desktop/archivio_musica/`, assegnando a tale copia il nome `song.ogg`, sarà utile digitare il seguente comando: {{{ |
Linea 159: | Linea 173: |
È stata rispettata la forma: {{{ | Dall'esempio precedente si può notare come sia stata rispettata la seguente forma: {{{ |
Linea 163: | Linea 179: |
Se non si rispettano gli spazi il comando non va a buon fine! == Nominare file e directory == '''È consigliabile nominare file e cartelle evitando spazi all'interno del nome.''' La shell può avere problemi a riconoscere una directory con un nome {{{cartella miei documenti}}}. Il comando: |
== Assegnare nomi a file e cartelle == La riga di comando può avere problemi a riconoscere nomi di cartelle contenenti simboli di spaziatura. Ad esempio, il seguente comando non viene riconosciuto dal terminale: |
Linea 173: | Linea 185: |
non viene riconosciuto. Verrebbe riconosciuto se riformulato con questa formattazione: | Il precedente comando verrebbe riconosciuto se digitato con questa la seguente formattazione, facilmente ottenibile con l'uso del tasto «'''Tab'''»: |
Linea 177: | Linea 190: |
ottenibile usando il tasto '''Tab'''. Oppure mettendo l'apostrofo all'inizio e alla fine del percorso: |
In alternativa è possibile inserire l'apostrofo all'inizio e alla fine del percorso, come nel seguente comando: |
Linea 182: | Linea 195: |
Quindi conviene dare dei nomi del tipo {{{cartella_miei_documenti}}} o {{{cartella-miei-documenti}}}. '''È bene usare con parsimonia il punto «.»''' Essendo usato per contraddistinguere un formato tipo {{{foto.jpg}}}, {{{canzone.ogg}}}, ecc., evitando di usarlo si possono evitare possibili equivoci. Il punto anteposto al nome, come già visto, viene usato per indicare un file nascosto (per esempio {{{.file_nascosto}}}). == Immissione della password == La password viene richiesta quando dobbiamo agire con i privilegi dell'amministratore. In questo modo si ha la possibilità di accedere a directory non accessibili al singolo utente e modificare eventuali file di sistema. Supponiamo di voler modificare con l'editor di testo '''[:Nano:nano]''' il file `sources.list` appartenente alla directory `apt` (percorso: `/etc/apt/sources.list`). Per farlo occorre usare il comando '''[:Sudo:sudo]''' che viene sempre anteposto a tutti gli altri comandi: {{{ |
||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Grandi/info.png,,center)]] ||<style="padding:0.5em; border:none;">È consigliato non inserire spazi all'interno dei nomi di file e cartelle. È suggerito sostituire il carattere di spaziatura con quello di ''underscore'' «'''_'''». || Il carattere punto «.» viene usato per contraddistinguere un tipo di file, limitandone l'uso si riduce il rischio di incorrere in ambieguità. Inoltre, come visto in precedenza, può essere utilizzato anteponendolo al nome di un file che si desidera nascondere. == Immissione della parola d'ordine == La parola d'ordine viene richiesta quando si desidera eseguire un'azione con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione]. In questo modo si ha la possibilità di accedere a cartelle non accessibili all'utente normale e modificare eventuali file di sistema. Ad esempio, se si desidera modificare con l'editor di testo [:EditorDiTesto/Nano:nano] il file `/etc/apt/sources.list` è utile digitare il seguente comando: {{{ |
Linea 195: | Linea 207: |
}}} dopo l'invio verrà richiesta la password: {{{ | }}} Dopo la pressione del tasto «'''Invio'''» verrà richiesta la parola d'ordine: {{{ |
Linea 199: | Linea 214: |
Quando verrà immessa la password, per motivi di sicurezza, non appariranno i caratteristici asterischi (****), bensì il campo rimarrà vuoto. Non preoccupatevi, digitate la password e date l'invio. Per alcuni minuti la password rimane attiva, quindi se bisogna riusare '''sudo''', non ci sarà bisogno di ridigitarla. Se vogliamo interrompere il suo effetto, basterà digitare: {{{ sudo -k }}} == Errori == In caso di errori la shell ci avvertirà con dei messaggi. Al contrario, quando il comando è andato a buon fine, non avremo nessuna segnalazione. Torniamo all'utente '''mario''' che vuole creare la cartella {{{musica}}} sul ''Desktop'' con il comando «'''mkdir'''»: {{{ |
Per motivi legati alla sicurezza, durante la digitazione della parola d'ordine non apparirà alcun carattere nel relativo campo. == Stampa degli errori == Se i comandi digitati non contengono errori non verrà stampato alcun messaggio. Ad esempio, se si desidera creare una cartella `musica` all'interno di `/home/mario/Desktop/` è utile digitare il seguente comando: {{{ |
Linea 211: | Linea 223: |
}}} dopo aver dato '''Invio''' otterrà: {{{ | }}} Una volta premuto «'''Invio'''» verrà creata la cartella desiderata e la riga di comando apparirà come nel seguente esempio: {{{ |
Linea 215: | Linea 230: |
A volte questo può spiazzare un utente alle prime armi che magari si aspetterebbe un segnale di conferma dell'avvenuta creazione della directory {{{musica}}}. Andando a controllare sul ''Desktop'', '''mario''' troverà la sua nuova cartella. = Considerazioni finali = Gli esempi mostrati sono volutamente banali. Nella maggior parte dei casi le operazioni citate possono essere svolte con pochi clic del mouse. Lo scopo era quello di prendere confidenza con la shell, partendo da nozioni già conosciute quali: la copia/rimozione di un file, la creazione di una directory, ecc. Come avrete notato, la linea di comando è molto sfruttata all'interno delle guide. Questo, per il semplice motivo che in questo modo, oltre ad ottenere una guida molto sintetica, c'è il vantaggio di avere comandi che possono rimanere immutati nel tempo. Al contrario, descrivere passaggi in modalità grafica genera guide più lunghe e si crea il rischio di avere una guida presto obsoleta, dal momento che un'interfaccia grafica è soggetta a cambiamenti all'uscita di nuove versioni. La conoscenza di alcuni concetti base può permettere anche agli utenti tecnicamente meno preparati di riuscire a destreggiarsi nel mondo dei comandi. Non occorre conoscere a memoria tutti i dettagli (se ciò avviene tanto meglio), bastano poche nozioni per porsi davanti a un'eventuale guida comprendendo dove si andrà a parare senza abbandonarsi al mero copia/incolla. |
Andando a controllare sul '''Desktop''', l'utente '''mario''' troverà la sua nuova cartella. Il terminale non stampa le conferma dell'esecuzione dei comandi digitati, bensì solo messaggi di errori nel caso che in tali comandi fossero presenti degli errori. |
Linea 227: | Linea 236: |
* [http://help.ubuntu-it.org/6.06/ubuntu/desktopguide/it/linux-basics.html Fondamenti di Linux: presentazione di un sistema GNU/Linux nei suoi aspetti principali] * [:ComandiBase:Guida ai comandi fondamentali] * [:Sudo:Guida ai comandi per ottenere il privilegio dell'amministratore di sistema] * [:PermessiFile:Guida agli strumenti di modifica dei permessi sui file] * [:Apt:Guida all'installazione di programmi tramite apt-get] * [:InstallareProgrammiDaSorgenti:Guida alla compilazione del codice sorgente] * [:CheckInstall:Guida alternativa all'installazione da sorgente] |
* [:AmministrazioneSistema/ComandiBase:Guida ai comandi fondamentali] * [:AmministrazioneSistema/Sudo:Guida ai privilegi di amministrazione] * [:AmministrazioneSistema/PermessiFile:Guida ai permessi dei file] * [:AmministrazioneSistema/InstallareProgrammi:Guida all'installazione dei programmi] * [http://help.ubuntu-it.org/6.06/ubuntu/desktopguide/it/linux-basics.html Una presentazione di un sistema GNU/Linux nei suoi aspetti principali] ---- CategoryAmministrazione CategoryConsigliata |
IndiceBRTableOfContents(2) |
Include(StrumentiWiki/GuideConsigliate)
Introduzione
Shell, terminale e riga di comando, sono termini che indicano in maniera equivalente un dispositivo a interfaccia testuale. Può servire a svolgere gran parte delle mansioni in un sistema operativo: muoversi attraverso il file system per creare, cancellare o rinominare file, scaricare, installare o rimuovere programmi, per configurare l'hardware, per creare script e molte altre cose.
Tante delle azioni sopra elencate, come noto alla maggior parte degli utenti, possono essere svolte tramite programmi a interfaccia grafica. La riga di comando può essere utile qualora sussistano dei malfunzionamenti di tali programmi e si vogliano tracciare eventuali [:Bug:bug], nel caso non esistano programmi a interfaccia grafica o semplicemente perché l'utente ritiene comodo usarla.
Gli esempi contenuti in questa guida sono volutamente banali, la maggior parte delle seguenti operazioni possono essere svolte facilmente con pochi clic di mouse, ciò non toglie che la conoscenza di alcuni concetti base può permettere anche agli utenti tecnicamente meno preparati di riuscire a svolgere le procedure più comuni.
Come funziona il terminale
Aprire una finestra di terminale
Seguire le indicazioni adatte alla versione del sistema in uso:
Ubuntu:
fare clic su Applicazioni -> Accessori -> Terminale;
Kubuntu:
fare clic su Menu K -> Sistema -> Konsole;
Xubuntu:
fare clic su Applications -> Accessories -> Terminale.
Home utente e file system
Il contenuto della cartella Home
Per capire come funziona la riga di comando si prenda come modello un utente che durante l'installazione, fra le varie cose, abbia impostato come nome utente mario e come nome del computer mario-desktop.
A disposizione di tale utente, all'interno della cartella /home, ci sarà una cartella con il suo stesso nome, cioè mario, il cui percorso completo sarà /home/mario, alla quale potrà accedervi dal menu Risorse -> Cartella Home. Tale cartella, nota anche come home utente, riveste una grande importanza all'interno del sistema, dato che al suo interno, sotto forma di file nascosti, sono memorizzate tutti file di configurazione dei programmi.
Per visualizzare file nascosti, fare clic su Visualizza -> Mostra file nascosti. |
Per esempio, nella sottocartella ~/.mozilla vengono memorizzati i dati riguardanti il browser Firefox: segnalibri, estensioni, impostazioni menu, etc; nel caso sia installato il programma di posta Thunderbird, in ~/.mozilla-thunderbird saranno archiviate le email, gli indirizzi di posta etc.
Per nascondere un file è sufficiente preporre un punto prima del suo nome. Ad esempio, per nascondere il file script.sh è sufficiente [:AmministrazioneSistema/ComandiBase#mv:rinominarlo] in .script.sh. |
Il file system
attachment:file_system70.png
Si può accedere alla radice del file system scegliendo Risorse -> Computer, facendo clic sull'icona «File system» oppure selezionando «File system» dalla barra laterale sinistra. Il file system, inteso come la directory che contiene tutte le altre, è rappresentato dal simbolo «/», chiamato root, da non confondere con la cartella /root, la Home dell'amministratore. Se si desiderano maggiori informazioni sulle partizioni consultare la [:Hardware/DispositiviPartizioni/PartizioniUbuntu:relativa guida].
La directory /home/
attachment:home70.png
È la directory che contiene tutte le Home degli utenti presenti nel sistema. Nel sistema in figura è presente solo la Home dell'utente mario, ma aggiungendo utenti al sistema verranno create le relative cartelle Home.
La cartella Home
attachment:home_utente70.png
Nella directory /home/mario sono presenti alcuni file, alcuni memorizzati dall'utente stesso e altri già presenti dalla prima installazione come, ad esempio, la directory Desktop che ovviamente andrà a contenere tutti i file, cartelle e icone di avvio presenti sulla scrivania.
Digitare i comandi nel terminale
La cartella Home viene generalmente indicata con il simbolo «~», chiamato tilde. Per ottenerlo, occorre premere i tasti AltGr+ì.
[#aprire Aprendo un terminale] l'utente mario otterrà un risultato simile al seguente:
attachment:shell.png
Il messaggio della figura mostra alcune informazioni:
l'utente mario, all'interno del computer mario-desktop, si trova attualmente nella propria Home, cioè `/home/mario/, indicata con «~»;
è attiva la modalità utente, indicata dal simbolo «$». Esiste anche una modalità amministratore, attivabile con il comando sudo su, caratterizzata dal simbolo «#». Per maggiori informazioni sui privilegi di amministrazione consultare la [:Amministrazione/Sudo:relativa guida].
Per avere la conferma di essere nella cartella /home/mario/ è utile eseguire il comando [:AmministrazioneSistema/ComandiBase#pwd:pwd], il quale stamperà a schermo il percorso corrente. Digitare il seguente comando:
pwd
Il risultato sarà simile al seguente:
attachment:shell_pwd.png
Se invece si digiterà il comando [:AmministrazioneSistema/ComandiBase#ls:ls] si otterrà l'elenco dei file presenti nella cartella /home/mario/:
Desktop documenti Examples foto lettera.odt scheda.ods
L'utente può muoversi attraverso il file system con il terminale utilizzando il comando [:AmministrazioneSistema/ComandiBase#cd:cd]. Se si desidera spostarsi nella cartella /usr/share/doc sarà utile digitare il comando cd /usr/share/doc, come nel seguente esempio:
mario@mario-desktop:~$ cd /usr/share/doc
Il risultato sarà simile al seguente:
mario@mario-desktop:/usr/share/doc$
Dopo aver digitato il precedente comando, alla sinistra del simbolo «$», viene indicata la nuova posizione nella cartella /usr/share/doc.
Esempi e suggerimenti
Tasti di selezione rapida
Autocompletamento
Per evitare di digitare ogni singola lettera si può usare il tasto «Tab» (posto solitamente sulla sinistra della tastiera, accanto al tasto «Q»).
Ad esempio, digitando «/h» e premendo il tasto Tab, la stringa si autocompleterà in «/home/». Aggiungendo la «m» e premendo nuovamente «Tab» si otterrà la stringa «/home/mario/» e così via fino ad ottenere «/home/mario/Desktop».
Se nella cartella /home/ sono presenti degli utenti mario e michele, alla pressione del tasto «Tab» non accadrà niente poichè ci si trova di fronte ad un'ambiguità. Premendo una seconda volta il tasto «Tab» verrà stampato l'elenco dei file e delle directory che iniziano per «m»; se successivamente si digita anche la lettera «a» l'ambiguità sarà risolta, dunque premendo nuovamente «Tab» la stringa «mario» verrà completata. Se oltre a mario e michele è presente anche maria, l'autocompletamento si bloccherà correttamente a «/home/mari», e l'utente dovrà aggiungere l'ultima lettera.
Poichè il terminale è [http://it.wikipedia.org/wiki/Sensibile_alle_maiuscole sensibile alle maiuscole], le lettere minuscole sono diverse da quelle maiuscole. La digitazione dei comandi e dei percorsi deve necessariamente rispettare la corretta sintassi. |
Posizione del cursore
Poichè non è possibile selezionare con il mouse una delle parole interne ad un comando per modificarlo o cancellarlo, è necessario spostare il cursore con i tasti «Freccia destra» e «Freccia sinistra» per portarlo nella posizione desiderata.
Per velocizzare lo spostamento del cursore si possono usare alcune combinazioni con i tasti sopracitati e i tasti «Fine» e «Home» (tasto con la freccia diretta in alto a sinistra). Quelli che seguono sono degli esempi:
Combinazione |
Descrizione |
Ctrl+Freccia destra |
sposta il cursore di una parola a destra |
Ctrl+Freccia sinistra |
sposta il cursore di una parola a sinistra |
«Home» |
sposta il cursore all'inizio della stringa |
«Fine» |
sposta il cursore alla fine della stringa |
Cancellare parole
Le seguenti combinazioni di tasti sono utili per cancellare velocemente le parole digitate:
Combinazione |
Descrizione |
Ctrl+W |
cancella la parola a sinistra del cursore |
Ctrl+U |
cancella tutte le parole a sinistra del cursore |
Ctrl+K |
cancella tutte le parole a destra del cursore |
Comandi in memoria
I comandi impartiti rimangono in memoria. Per poterli richiamare è sufficiente usare i tasti «Freccia su» (per lo scorrimento a ritroso) e «Freccia giù» (per lo scorrimento in avanti).
In molte circostanze questa funzione può essere comoda per non dover riscrivere un intero comando da capo o per modificarne solo una parte.
Percorsi
Per [:AmministrazioneSistema/ComandiBase#gestionefiledirectory:agire sui file] occorre indicare sempre i percorsi completi oppure spostarsi all'interno della cartella in cui si trova il file interessato. Supponiamo di voler rimuovere, attraverso il comando [:AmministrazioneSistema/ComandiBase#rm:rm], il file canzone.ogg, memorizzato in /home/mario/Desktop. A tale scopo è possibile digitare il seguente comando, nel quale viene specificato il percorso completo del file:
rm /home/mario/Desktop/canzone.ogg
In alternativa è possibile spostarsi nella cartella Desktop per poi procedere alla rimozione del file con i seguenti comandi:
cd /home/mario/Desktop rm canzone.ogg
Alcuni comandi non necessitano della digitazione di alcun percorso. Ad esempio, per [:AmministrazioneSistema/InstallareProgrammi:installare] un pacchetto con [:AmministrazioneSistema/Apt:apt-get] è sufficiente specificarne solo il nome; la sintassi del comando sarà dunque simile alla seguente:
sudo apt-get nome_pacchetto
Spazi
Affinchè i comandi vengano correttamente eseguiti è necessario rispettare gli spazi durante la digitazione. Nel'esempio precedente relativo alla cancellazione di un file è stata rispettata la seguente forma:
comando [spazio] percorso_file
Più parole verranno incluse nel comando e maggiore sarà l'attenzione necessaria. Ad esempio, supponendo di voler creare una copia del file /home/mario/Desktop/canzone.ogg in /home/mario/Desktop/archivio_musica/, assegnando a tale copia il nome song.ogg, sarà utile digitare il seguente comando:
cp /home/mario/Desktop/canzone.ogg /home/mario/Desktop/archivio_musica/song.ogg
Dall'esempio precedente si può notare come sia stata rispettata la seguente forma:
comando [spazio] percorso_file [spazio] percorso_file_copiato_con_nuovo_nome
Assegnare nomi a file e cartelle
La riga di comando può avere problemi a riconoscere nomi di cartelle contenenti simboli di spaziatura. Ad esempio, il seguente comando non viene riconosciuto dal terminale:
cd /home/mario/cartella miei documenti
Il precedente comando verrebbe riconosciuto se digitato con questa la seguente formattazione, facilmente ottenibile con l'uso del tasto «Tab»:
cd /home/mario/cartella\ miei\ documenti/
In alternativa è possibile inserire l'apostrofo all'inizio e alla fine del percorso, come nel seguente comando:
cd '/home/mario/cartella miei documenti'
È consigliato non inserire spazi all'interno dei nomi di file e cartelle. È suggerito sostituire il carattere di spaziatura con quello di underscore «_». |
Il carattere punto «.» viene usato per contraddistinguere un tipo di file, limitandone l'uso si riduce il rischio di incorrere in ambieguità. Inoltre, come visto in precedenza, può essere utilizzato anteponendolo al nome di un file che si desidera nascondere.
Immissione della parola d'ordine
La parola d'ordine viene richiesta quando si desidera eseguire un'azione con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione]. In questo modo si ha la possibilità di accedere a cartelle non accessibili all'utente normale e modificare eventuali file di sistema.
Ad esempio, se si desidera modificare con l'editor di testo [:EditorDiTesto/Nano:nano] il file /etc/apt/sources.list è utile digitare il seguente comando:
sudo nano /etc/apt/sources.list
Dopo la pressione del tasto «Invio» verrà richiesta la parola d'ordine:
Password:
Per motivi legati alla sicurezza, durante la digitazione della parola d'ordine non apparirà alcun carattere nel relativo campo.
Stampa degli errori
Se i comandi digitati non contengono errori non verrà stampato alcun messaggio.
Ad esempio, se si desidera creare una cartella musica all'interno di /home/mario/Desktop/ è utile digitare il seguente comando:
mario@mario-desktop:~$ mkdir /home/mario/Desktop/musica
Una volta premuto «Invio» verrà creata la cartella desiderata e la riga di comando apparirà come nel seguente esempio:
mario@mario-desktop:~$
Andando a controllare sul Desktop, l'utente mario troverà la sua nuova cartella.
Il terminale non stampa le conferma dell'esecuzione dei comandi digitati, bensì solo messaggi di errori nel caso che in tali comandi fossero presenti degli errori.
Ulteriori risorse
[:AmministrazioneSistema/ComandiBase:Guida ai comandi fondamentali]
[:AmministrazioneSistema/Sudo:Guida ai privilegi di amministrazione]
[:AmministrazioneSistema/PermessiFile:Guida ai permessi dei file]
[:AmministrazioneSistema/InstallareProgrammi:Guida all'installazione dei programmi]
[http://help.ubuntu-it.org/6.06/ubuntu/desktopguide/it/linux-basics.html Una presentazione di un sistema GNU/Linux nei suoi aspetti principali]