Home > guide, Linux, Ubuntu > Sudo…ma non per il caldo

Sudo…ma non per il caldo

luglio 4, 2007

terminal.jpeg

Se siete degli sventurati utenti che provengono dal mondo microsoft o magari avete poca dimestichezza con l’universo delle console magari questo titolo non vi dirà niente o, nella peggiore delle ipotesi, penserete che ho gravi problemi personali🙂 Ma non è così…

Facciamo un pò di storia…

I sistemi *nix, hanno sempre avuto il concetto di utente e di privilegi. Ogni utente può accedere ai suoi documenti, può lanciare ed eseguire determinati file e può modificarne degli altri. Tale struttura è nata quando i pc non esistevano. C’erano solo i grossi e costosi mainframe in cui piu’ persone accedevano contemporaneamente tramite terminali stupidi (senza offesa per i terminali ma si chiamavano così :-)). Con questo sistema era possibile evitare che un utente andasse a modificare i documenti di un altro o dati sensibili per il sistema. Gli utenti venivano poi raggrupati in gruppi. Così ogni singolo file nei sistemi *nix ha permessi relativi agli utenti, al gruppo a cui appartiene l’utente e a tutto il resto del mondo.

Se aprite un terminale (se avete ubuntu lo trovate sotto Applications/Accesories/Terminal) e digitate “ls -l” senza doppi apici potreste vedere una cosa del genere

drwxr-xr-x 13 daniele daniele 4096 2007-07-04 14:36 Desktop
drwxr-xr-x 3 daniele daniele 4096 2007-05-15 10:30 Totem
-rwxrwxr– 1 daniele daniele 8493622 2005-06-06 13:22 et-linux-2.60-update.x86.run

L’inizio di ogni riga rappresenta i permessi per quel file. La prima lettera viene usata per vari scopi. Se contiene una D come per Desktop e Totem vuol dire che siamo in presenza di una directory.

Gli altri caratteri sono formati da 3 gruppi di 3 permessi. I primi 3 (partendo da sinistra) rappresentano i permessi per l’utente creatore del file (che vediamo al terzo posto “daniele”), gli altri 3 rappresentano i permessi per il gruppo a cui l’utente appartiene (che vediamo al quarto posto subito dopo il nome utente. In questo caso sempre “daniele” ), mentre gli ultimi 3 rappresentano i permessi per tutti gli altri utenti che non fanno parte del gruppo dell’utente creatore.

Ogni gruppo di tre caratteri rappresenta i permessi di (r)ead (w)write e(x)ecute. Quindi lettura, scrittura, esecuzione. A differenza di windows in cui un programma è eseguibile se ha come estensione “.exe” o “.com”, in linux non vi è il discorso delle estensioni. Un programma è eseguibile e viene provato a lanciare quando ha il permesso di execute impostato.

Nell’esempio sopra citato, la cartella Desktop così come la cartella Totem hanno permessi di lettura,scrittura,esecuzione per l’utente Daniele e di lettura e esecuzione per gli utenti del gruppo e gli altri utenti normali. Il file et-linux-2.60-update.x86.run invece ha permessi di lettura, scrittura ed esecuzione per Daniele e il suo gruppo (sempre Daniele) ma solo di lettura per gli altri utenti.

Chiudiamo questa piccola parentesi sui permessi dei file e torniamo al discorso degli utenti. Come in ogni magico regno che si rispetti, vi è sempre un sovrano. Una persona che può fare tutto sugli altri e che ha sempre ragione. Il sovrano di linux è l’utente root.

L’utente root è colui che può fare tutto nel sistema. Gli utenti “normali” possono accedere in lettura/scrittura e fare ciò che vogliono all’interno della loro directory home. Quella contraddistinta da /home/<nome utente> ma non possono modificare i file sotto le directory cuore del sistema operativo (quali /etc /boot /usr etc). Molti utenti (sprovveduti) usano root normalmente per accedere al sistema. Questo porta a grossi problemi di sicurezza (sia da parte di eventuali intrusioni esterne sia da parte nostra che potremmo cancellare accidentalmente dati fondamentali per il sistema)

Con ubuntu non si conosce la password dell’utente di root e questo fa in modo che una persona non possa accedere alla macchina direttamente come utente root (ci sono altre gabole per aggirare la cosa ma non starò a spiegarvele :-)).

Come si risolve la questione della modifica dei file di sistema allora?. Ubuntu utilizza un sistema facile, efficacie ed elegante: sudo.

Se noi volessimo modificare ad esempio il file /etc/hosts basterà digitare da console “sudo vi /etc/hosts”. Ci verrà richiesta la password. Ma quale password? Abbiamo detto che la password di root non la conosciamo, quindi quale password dobbiamo digitare?

La risposta è semplice : La password del primo utente creato.

Il primo utente creato ha dei particolari permessi che permettono di invocare sudo.

Sudo è molto interessante perchè permette di eseguire SINGOLI comandi come amministratore e quindi una volta eseguito il comando, il controllo ritorna al livello di sicurezza dell’utente corrente. Un’altra cosa interessante è che se noi eseguiamo diversi comandi di seguito, la password non ci verrà richiesta ogni volta. Sudo memorizza il tempo dell’ultima richiesta della password e, se non è passato un determinato lasso di tempo, non la richiede nuovamente.

Se storcete il naso al solo pensiero della console vi svelo un altro trucchetto. Se sotto gnome premete i tasti ALT-F2 vi apparirà una finestrella dove potete lanciare dei comandi a mano digitando il nome (con tanto di autocompletamento). Se volete lanciare un comando come amministratore e volete digitare la password tramite una finestrella grafica al posto di sudo usate gksu. Quindi, ad esempio, se volete lanciare il comando gedit (l’editor standard di gnome) come amministratore basta premere ALT-F2 e poi digitare “gksu gedit” (senza le doppie virgolette)

Facile no?

Alla prossima puntata…

Daniele

Categorie:guide, Linux, Ubuntu
  1. pepi
    luglio 14, 2007 alle 4:54 pm

    sono alle prime armi,cerco di installare un programma da terminale (t@b video editor) ma alla richiesta di password i tasti rimangono bloccati.
    uso ubuntu 7.0
    ciao e grazie in anticipo

  2. Daniele
    luglio 19, 2007 alle 8:21 pm

    Di che programma si tratta Pepi?. Tieni conto che quando da console ti viene richiesta la password di amministratore a video non vedi i caratteri premuti e nemmeno degli asterischi. Alla richiesta di password tu devi digitare “al buio” la tua password e poi premere invio.

  3. pepi
    luglio 26, 2007 alle 9:56 am

    il programma di video editing si chiama : t@b_zweistein
    volevo provarlo perchè cinelerra è complicato.
    (ho formattato vista e installato linux circa un mese fa,funziona tutto alla perfezione,ho una pagina su youtube “REDNECKPEPI64” che va alla grande (100000 visioni al mese) e mi serviva un prog tipo movie maker.
    grazie per le informazioni!
    pepi

  4. Daniele
    luglio 26, 2007 alle 10:47 am

    Io non uso mai programmi di videoediting. Però magari qui puoi trovare qualche programma che ti potrebbe interessare http://barnux.wordpress.com/video-editing-su-linux/

  1. luglio 10, 2007 alle 9:24 pm
I commenti sono chiusi.
%d blogger cliccano Mi Piace per questo: