Giu 04 2012

I comandi della shell

Category: Linux,Ubuntuadmin @ 23:04

Come è noto di comandi ce ne sono davvero tanti,in questo articolo tratterò quelli più importanti e necessari ad un uso avanzato di un sistema gnu/linux.

Halt – reboot – shutdown

Tre comandi atti allo spegnimento del sistema,da eseguire da root o con sudo.

Halt: Comando “rapido” per spegnere o riavviare il sistema.Con l’opzione –force(doppio meno) permette il riavvio con reboot, altrimenti semplicemente andrà ad invocare
shutdown.

Reboot: Semplicemente permette un riavvio della macchina. Con opzione -p esegue uno spegnimento invocando il comando halt con poweroff.

Shutdown: Con esso è possibile sia riavviare che spegnere il sistema, anche in differita.Ci sono varie opzioni:
#shutdown -r now “esegue il reboot immediatamente”
#shutdown -h now “esegue lo spegnimento subito”
#shutdown -t secondi “l’opzione t serve a dire dopo quanti secondi il comando viene effettivamente lanciato”
#shutdown -h + min “spegne il sistema dopo il numero di minuti indicato al posto di min
#shutdown -h hh:min ” dà un orario vero e proprio per l’esecuzione dello shutdown
#shutdown -c “annulla una operazione  di shutdown impostata precedentemente ”

Comandi di gestione

Who:permette di vedere chi è connesso al sistema:

root@ps3lab-pc:#who
ps3lab pts/0 2012-06-10 11:30(:0)
l’utente ps3lab è connesso dalle 11:30 del 10 giugno 2012

logout: Permette il logout dal sistema, riporta al prompt di richiesta utente e password. Nei sistemi grafici è come tornare alla schermata di login, in quelli testuali
è la schermata iniziale dove si richiede nome utente e password, per l’accesso al sistema.

Pwd: Comando che può tornare utile su sistemi “non propri”e con la shell senza opzioni di sorta.Permette di visualizzare la directory corrente in cui si trova.
Alcuni sistemi infatti sono configurati in modo tale da non mostrare il full path dove l’utente si trova al momento. Con pwd si può visualizzare,evitando eventuali
errori.Un rm dato nella directory sbagliata  può portare a conseguenze catastrofiche.

Esempio:
root@ps3lab-pc:/var/lib#pwd
/var/lib/

Passwd:
Permette di cambiare la propria password,o se si è root specificando l’utente,la password del utente richiesto.

Head:Permette di visualizzare le righe iniziali di un file di testo,se non viene specificato il numero di righe ne fornirà di default 10.

Esempio per dmesg
ps3lab@ps3lab-pc:~$ head -5 /var/log/dmesg
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 3.2.0-24-generic-pae
[    0.000000] KERNEL supported cpus:
[    0.000000] Intel GenuineIntel

Tail: Permette di visualizzare n righe di un file di testo.Comodo soprattutto in caso di analisi di log.

Per esempio
#tail -10 /var/log/dmesg
Mostrerà le ultime 10 righe del file dmesg in /var/log/.
Interessante è l’opzione -f che sta per follow,permette di aprire “in visione” un file che man mano si “riempie”per esempio dopo aver lanciato un comando che andrà
a loggare output in un file,aprendolo con -f si vedranno in tempo reale le nuove righe aggiunte nei file di log.

Whereis: Permette di localizzare dove si trovi un eseguibile,in particolare il binario,il sorgente e il manuale di un comando.

Per esempio
ps3lab@ps3lab-pc:~$ whereis top
top: /usr/bin/top /usr/bin/X11/top /usr/share/man/man1/top.1.gz
Si può vedere che viene indicato il path del comando top e dove si trovi il manuale.

Time: permette di visualizzare il tempo impiegato per un comando.Utile in caso di analisi su eseguibili.
Esempio:
ps3lab@ps3lab-pc:~$ time df -h

File system        Dim. Usati Dispon. Uso% Montato su
/dev/sda1           6,9G  4,3G    2,3G     66%         /
udev                    1,9G  4,0K    1,9G      1%        /dev
tmpfs                  751M  1,3M    749M   1%        /run
none                    5,0M     0        5,0M   0%       /run/lock
none                    1,9G  220K    1,9G    1%       /run/shm

real   0m0.009s
user  0m0.000s
sys    0m0.004s

in particolare real,user e sys indicano la tempistica d’esecuzione.

Ps e pstree: Come sappiamo ps permette di visualizzare tutti i processi del sistema,ci può essere utile in fase di analisi, per visualizzare i processi degli utenti,
se un processo ha problemi ed eseguirne eventualmente il kill e così via.Pstree in particolare permette di visualizzare l’albero dei processi e come essi sono collegati.

Finger:fornisce informazioni sugli utenti, senza argomenti su quelli connessi alla macchina, con argomento l’utente, da informazioni sul utente specificato.
Esempio:
ps3lab@ps3lab-pc:~$ finger
Login     Name       Tty      Idle  Login Time   Office     Office Phone
ps3lab    ps3lab     pts/0          Jun  4 23:08 (:0)

uname: Fornisce informazioni riguardo la macchina a cui si è collegati,ci sono vari parametri che si possono utilizzare. In particolare con l’opzione -a è possibile ricevere tutte le informazioni.
ps3lab@ps3lab-pc:~$ uname -a
Linux ps3lab-pc 3.2.0-24-generic-pae #39-Ubuntu SMP Mon May 21 18:54:21 UTC 2012 i686 athlon i386 GNU/Linux

Date.Semplicemente fornisce ora e data corrente.
ps3lab@ps3lab-pc:~$ date
lun  4 giu 2012, 23.15.15, CEST

Env:il comando env permette di visualizzare le variabili d’ambiente e da varie informazioni riguardanti il sistema.Inoltre è possibile tramite env, modificare le variabili stesse.
Per esempio se si dà tale comando da root, si potranno visualizzare varie informazioni sull’utente root per esempio la shell usata sarà la bash,il nome utente,root, le email andranno in
/var/mail/root la home directory sarà /root e cosi via.

Alcuni cenni infine sull aggiunta di utenti e gruppi.

Adduser: Permette l’aggiunta di un nuovo utente al sistema, in modo semplice e veloce. Basta dare adduser nomeutente.
Verrà chiesta la password per l’utente, ed eventuali informazioni riguardanti lo stesso, come per esempio il nome,
il numero di telefono e così via.Sono comunque informazioni non fondamentali,l’importante sono il nome utente e la password.

Addgroup: Per aggiungere un nuovo gruppo invece si usa addgroup,per esempio per aggiungere il gruppo optical.

root@ps3lab-pc:~# addgroup optical
Aggiunta del gruppo <<optical>> (GID 1002)…
Fatto.

Aggiungere un utente a un gruppo
Per aggiungere un utente a un gruppo semplicemente si usa usermod
Si aggiungerà l’utente ps3lab al gruppo optical
root@ps3lab-pc:~# usermod -G optical ps3lab

Verifica gruppi di un utente
root@ps3lab-pc:~# groups ps3lab
ps3lab: ps3lab optical
ps3lab quindi appartiene al gruppo optical

Per creare un utente o gruppo si possono usare anche useradd e groupadd.

Inoltre per modificare un utente o un gruppo si usano rispettivamente groupdel e groupmod

Infine per rimuovere un utente e un gruppo si possono usare userdel e groupdel.

Rispondi

Per commentare devi accedere al sito. Accedi.

SiteLock