Gestione sistema: comandi principali

Inserito da il 9 June 2007, 218298 visite totali

Capita molto spesso che l’utente alle prime armi con Gnu/Linux si trovi spaesato e non sappia come muoversi all’interno del nuovo sistema.

Tengo a precisare che Gnu/Linux è completamente gestibile tramite comandi eseguiti su una shell, che altro non è che una sorta di dos ma molto più potente. Un esempio della potenza della bash (di norma la shell predefinita) è il tasto TAB che permette il completamento automatico delle parole consentendo all’utente un notevole risparmio di tempo.
Altro punto di forza della bash è la possibilità di concatenare più comandi tra di loro tramite delle pipe (|). L’esempio che segue passa in entrata al comando grep il risultato di ls:

ls |grep quello_che_vuoi_trovare

NB: i comandi possono essere seguiti da vari switch che per questione di spazio non vengono qui riportati, ma possono essere visualizzati semplicente utilizzando il comando man o per una veloce consultazione usando lo switch --help o -h

man nome_comando
nome_comando --help
nome_comando -h

Quello che segue è un elenco dei principali comandi “manuali” che possono essere utilizzati in linux.

  • adduser: crea o aggiorna un utente sul sistema. Dopo aver digitato il comando basta rispondere alle domande proposte.
  • alias: visualizza o definisce degli alias. Ad esempio se usiamo sempre il comando ls -l possiamo defire un alias in modo da non dover digitare sempre il -l:
    alias ls="ls -l"
  • cat: legge una sequenza di file e ne stampa a video il contenuto nello stesso ordine, in poche parole concatena dei file per stamparne a video il contenuto.
  • cd: cambia la directory di lavoro. Il suo utilizzo è molto semplice:
    cd /percorso_directory_di_interesse
  • cfdisk: permette di manipolare la tabella delle partizioni, consente quindi di creare, modificare, ed eliminare partizioni da un disco fisico. L’uso è molto semplice ed intuitivo:
    cfdisk /dev/nome_device
  • chmod: cambia i permessi sui file e directory. Ad esempio se si vuole rendere un file scrivibile, leggibile ed eseguibile a tutti gli utenti si deve digitare:
    chmod 777 nome_file
  • chown: cambia proprietario e/o gruppo ad un file o una directory. Esempio:
    chown nuovo_utente:nuovo_gruppo nome_file
  • chroot: cambia la directory di root che normalmente è impostata a “/”. Questo comando risulta particolarmente utile quando si accede al proprio sistema tramite una distro live ed si vogliono eseguire comandi sulla propria distro. Esempio:
    chroot directory_che_deve_diventare_la_root
  • clear: pulisce il terminale.
  • cp: copia file o cartelle.
    cp file_di_origine file_di_destinazione
  • date: visualizza o imposta la data e l’ora sul sistema.
  • df: mostra lo spazio libero su disco.
  • dhclient: imposta il dhcp sull’interfaccia specificata.
  • diff: mostra le differenze tra 2file
  • exit: esegue il log-out dal sistema.
  • fdisk: consente di manipolare la tabella delle partizioni ma in maniera molto meno intuitiva rispetto a cfdisk.
  • file: determina il tipo di file
  • find: trova file o cartelle.
  • free: mostra lo stato della memoria.
  • fsck: esegue un controllo su un filesystem. Esistono varie implementazioni di fsck come ad esempio fsck.ext3, fsck.msdos, fsck.vfat ecc… Per ragioni di sicurezza è consigliato smontare il filesystem prima di controllarlo.
  • fuser: restituisce il PID dei processi che tengono occupata una periferica o socket:
    fuser /dev/periferica 
  • grep: cerca nei file o nello standard input le righe che contengono un modello. Nell’esempio viene cercata ogni occorrenza di “02” nel file varia.m3u:
    grep 02 varia.m3u
  • gzip: comprime ed spande file
  • hostname: mostra o imposta l’hostname
  • id: fornisce informazioni su un utente del sistema o se eseguito senza parametri sull’utente corrente
  • ifconfig: configura le interfaccie di rete. Un esempio del suo uttilizzo può essere quello di assegnare un indirizzo ip e una netmask per l’interfaccia eth0 (la prima scheda di rete):
    ifconfig eth0 192.168.1.2 netmask 255.255.255.0

    Se fatto seguire dal parametro down disattiva la periferica:

    ifconfig eth0 down
  • iwconfig: configura le interfaccie di rete wifi. Può essere utilizzato ad esempio per associare l’interfaccia wlan0 al vosto access point:
    iwconfig wlan0 essid Vostro_AP
  • kill: invia un segnale ad un processo, se eseguito senza parametri invia il segnale SIGTERM (termina):
    kill PID_processo
  • killall: killa i processi usando il nome:
    killall nome_programma
  • less: programma simile a more solo che permette lo scorrimento in alto e basso della lista.
  • ln: crea un link ad un file. Esempio:
    ln -s file_di_origine file_di_destinazione
  • ls: visualizza il contenuto di una directory. Può essere utilizzato senza alcun percorso ed in questo caso viene visualizzato il contenuto della directory corrente:
    ls 

    o seguito da un percorso specifico

    ls /percorso_di_interesse
  • lsmod: elenca i moduli caricati nel kernel
  • man: mostra se presenti le pagine di manuale di un comando o programma
  • mesg: abilita/disabilita la visualizzazione sul terminale di messaggi provenienti da altri utenti tramite il comando write. Per abilitare i messaggi:
    mesg y
  • mkdir: crea una directory:
    mkdir nome_nuova_directory
  • mkfs: crea un filesystem in un device o in una partizione. Esistono varie implementazioni di mkfs come ad esempio mkfs.ext2, mkfs.ext3, mkfs.msdos, mkfs.vfat ecc… Per maggiori informazioni leggere le pagine di man.
  • modprobe: carica (scarica) i moduli (o driver se preferite) del kernel. Esempio:
    modprobe nome_modulo
  • more: serve a dividere un testo lungo per pagine. Può essere usata anche tramite un pipe (|) per renderizzare il risultato di comandi tipo ls.
  • mount: monta (aggancia) un filesystem di un dispositivo esterno al filesystem del sistema, se eseguito senza alcun parametro mostra tutti i filesystem montati nel sistema. Questo comando può essere usato per agganciare delle partizioni di un harddisk o dei filesystem remoti come samba o nfs:
    mount -t tipo dispositivo directory_di_montaggio
  • mv: muove o rinomina file. Esempio:
    mv vecchio_nome nuovo_nome
  • netstat: visualizza lo stato delle connessioni.
  • passwd: modifca la password di un utente, se eseguito senza parametri cambia la password dell’utente corrente.
  • ps: mostra lo stato dei processi del sistema.
  • pwd: mostra la directory corrente
  • rm: elimina file o directory. Esempio:
    rm nome_file
    rm -r nome_directory
  • rmdir: rimuove directory se vuote
  • rmmod: rimuove moduli caricati.
  • rmuser: rimuove un utente dal sistema.
  • route: visualizza ed imposta la tabella di routing.
  • scp: copia file su di una macchina in rete usando ssh
  • ssh: consente la connessione a macchine remote tramite il protocollo ssh
  • tail: visualizza le ultime righe (di default 10) di un file
  • tar: crea da un insieme di file un unico archivio dal quale poi possono essere estratti singoli file. Un esempio di utilizzo di tar che crea l’archivio esempio.tar composto dai file esempio1 ed esempio2:
    tar -cf esempio.tar esempio1 esempio2
  • top: visualizza informazioni sui processi, sul carico della memoria e della cpu del sistema.
  • umount: smonta i filesystem montati con mount
  • unzip: elenca, controlla ed estrae il contenuto di archivi ZIP.
  • wc: stampa il numero di newline, parole e bit di un file
  • wget: effettua il download di file dalla rete
  • who: mostra l’elenco degli utenti collegati al sistema
  • whoami: visualizza lo username dell’utente
  • write: invia messaggi ad altri utenti. Per maggiori info potete visualizzare il tip messaggiare sul terminale

Segnalate ogni errore o imprecisione od eventuali comandi mancanti che vi piacerebbe trovare elencati 😉

Questo è un work in progress

Versione 0.3

Versione 0.4 13/06/08 aggiunti vari comandi tra cui alias, cfdisk, fdisk, ckfs, mkfs, free, gzip, unzip, tar, route,rmdir

Versione 0.4.1 17/06/08 aggiunti grep, wc, diff, file, wget, ssh, scp

6 commenti per “Gestione sistema: comandi principali”

  1. Virgilio scrive:

    Molto bene!
    Comando mkdir nome directory
    Crea una directory

  2. Virgilio scrive:

    Lsmod
    Lista moduli driver

  3. pennega scrive:

    Grazie aggiunti 😉

  4. alessamdro scrive:

    grazie, spero che mi sia utile visto le enormi difficoltà in cui mi dibatto.

  5. santo scrive:

    Si potrrebbe specificare i comandi che si lanciano come user e e superuser
    santo

  6. pennega scrive:

    Si certo si potrebbe fare, ma non credo che lo farò, anche perchè questo dipende da come è impostato un sistema, nel senso che un admin potrebbe ritenere opportuno abilitare agli utenti normali alcuni comandi che di norma sono privileggio di root.
    In linea di massima cmq quando esegui un comando e ti viene restituito un errore di autorizzazione vuol dire che quel comando lo devi eseguire da root se vuoi che funzioni.
    Altra cosa da ricordare è che i comandi che vanno a modificare il sistema vanno eseguiti da root, così se desideri cambiare l’ora del sistema devi eseguire date da root.
    Spero di essere stato chiaro.
    Colgo l’occasione per dirvi che ho aggiunto dei comandi che spero vi piacciano 😉
    un saluto

Lascia una risposta

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *