Introduzione
Chi si avvicina al mondo linux non può non conscere i comandi per il terminale, detto anche shell. Questi comandi ci permettono di gestire la nostra macchina in tutte le sue parti.
Con questa mini-guida cercherò di illustrare i comandi più importanti e usati nel mondo linux e sue distro.
Basi
Un comando che sicuramente ci può tornare molto utile è il man. Con questo comando infatti possiamo vedere il “manuale” di un programma o di una funzione e quindi vedere una descrizione e le opzioni che il programma ci offre. Spesso si può “sostituire” il man con l’opzione –help (attenzione: sono 2 trattini prima di help), che a volte può risultare già più che sufficiente.
Sintassi:
man [-c|-f|-k|-w|-tZT dispositivo] [-i|-I] [-adlhu7V] [-Mpercorso]
[-Ppaginatore] [-Cfile] [-Selenco] [-msistema] [-pstringa] [-Llocale]
[-eestensione] [sezione] pagina …
Questo può essere sostituito come già detto da –help. Per esempio: man –help se si vuole vedere l’help del man; oppure ls –help per vedere l’help di ls e così via per tutti i comandi e funzioni del sistema. Sia il man che l’–help funzionano anche per i programmi installati successivamente. Per esempio man ettercap oppure ettercap –help. Per uscire dal man bisogna premere ctrl+z (per chi si stesse disperando ad uscire dal man e non ci riesce ed è costretto a chiudere sempre il terminale). I comandi possono essere usati anche “contemporaneamente” nella stessa riga.
Esempio:
$ lspci | grep 06.04.0
Con questo comando diciamo di elencarci tutte le schede pci (comando lspci) e di visualizzarci solo la linea contenente la scritta 06.04.0. Tutte le altre non verranno visualizzate. Per fare ciò abbiamo usato 2 comandi: lspci e grep. Per usarli “insieme” abbiamo messo una barra verticale (|), ma in alternativa si può usare anche 2 ‘e’ commerciali (&&).
Alcuni si staranno chiedendo cos’è “$”? Il simbolo del dollaro ($) viene usato per abbreviare l’utente. Bisogna fare a questo punto una distinzione. In ambiente linux esistono gli utenti (1,2,3,4,… quanti se ne vogliono creare) e l’admin, detto root (1 solo ci può essere). Root ha i privileggi di fare ciò che vuole senza dover chiedere il permesso a nessuno, a differenza invece degli utenti che devono chiedere sempre la password per poter eseguire programmi che “lavorano” su file di sistema (come per esempio /etc/fstab). Per abbreviare”l’utente” si usa il simbolo del dollaro ($), mentre per abbreviare l’admin, cioè root si usa il simbolo del cancelletto (#).
Comandi utenti
A questo punto sorge spontanea una domanda: E’ possibile da terminale “passare” a root? La risposta è si. Per fare ciò esiste un comando: su. Una volta dato questo comando ci viene chiesta la password di root. Una volta data, siamo root e possiamo agire nei confronti di file e programmi “senza più restrizioni”, quindi fate attenzione alle modifiche che fate, perchè indietro non si può più tornare se non avete una copia di backup.
Per non usare il comando su esiste una “variante”, chiamata sudo. Il sudo permette di avviare un’applicazione che servono magari i privileggi di root, inserendo la password dell’utente corrente e usare questa applicazione come un super utente (attenzione: questo comando funziona solo con il primo utente creato nel sistema, per gli altri va abilitato con il comando visudo che vedremo in seguito e ricordate che sudo “mantiene” la password ‘solo’ per 5 minuti).
Esempio:
sudo gedit /etc/fstab
Con questo comando apriamo il file /etc/fstab (il file che contiene la mappatura delle nostre partizioni) con gedit (è un editor di testo), con privileggi di super utente.
Le sintassi dei comandi sono:
su:
su [-] [nome_utente [argomenti]]
sudo:
sudo -K | -L | -V | -h | -k | -l | -v
sudo [-HPSb] [-a auth_type] [-c class|-] [-p prompt] [-u username|#uid]
{-e file [...] | -i | -s | command}
Maggiori informazioni le si trova nei man (man su oppure man sudo).
Vediamo ora la modifica del file /etc/sudoers.tmp con il seguente comando:
export EDITOR=gedit && sudo visudo
Per “disabilitare” il sudo anche al primo utente e quindi al tutto gruppo “%admin”, mettere un cancelletto (#) come primo carattere alla riga che ha %admin, quindi avremo:
#%admin ALL=(ALL) ALL
Se invece vogliamo aggiungere ulteriori utenti:
nome_utente ALL=(ALL) ALL
nome_utente è il nome utente che vogliamo dare il potere di sudo.
Altro comando per la gestione degli utenti che ci può tornare utile è passwd. Come il nome lascia intuire, questo comando ci permette di modificare la password degli utenti.
La sintassi è la seguente:
passwd [-f|-s] [nome]
passwd [-g] [-r|-R] gruppo
passwd [-x max] [-n min] [-w warn] [-i inact] login
passwd {-l|-u|-d|-S|-e} login










