Read in english

13 apr 2016

Terminale Linux : I Permessi (File)

TUTORIAL LINUX: I PERMESSI


Ciao ragazzi, pagina blog dedicata a Linux, oggi affronteremo la tematica dei permessi su Linux.
Partiamo subito col dire che Linux nasce con un concetto di multiutente, al contrario per esempio di Windows che nasce come Sistema Operativo a utente singolo e, solo successivamente è stato implementato il multiutente, Linux nasce già in un ambiente di multiutenza.

Come primo passo per inoltrarci nella multiutenza, digitiamo il comando sudo -sH per divenire utente ROOT ossia capo. Poi proviamo a creare un nuovo utente: il comando da utilizzare è useradd -m (con useradd aggiungiamo utente e con -m creiamo la directory della home) e creiamo dando un nome "utente" (useradd -m utente).
Bene abbiamo creato "Utente" (sì lo so fantasia, portami via).
Però ancora il nostro Utente non appartiene a nessun gruppo, poichè mancano alcune cose, ma tempo al tempo.

Ora gli assegnamo una password per l'account, digitiamo passwd (che serve a cambiare la pass standard) e il nome dell'account ovvero "Utente" (passwd Utente); inserite la password che desiderate e aggiornate.
Per vedere che tutto sia stato fatto bene digitiamo il comando login, e digitiamo Utente, immettiamo la password e ora siamo l'utente "Utente".
Ora col comando ls notiamo che è vuoto e col comando pwd notiamo che viene solo la striscia /home/utente. Per vedere se cis ono altri utenti basterà salire di una cartella col comando ls ../
Per l'esercizio vi pregherei di creare altri quattro utenti e di verificarne la creazione come spiegatro prima.

Io ho crato gli utenti "morro", "pluto, e "pippo".

Bene ora con l'utente pippo (facendo login e entrando con pippo) creiamo un file col comando touch e lo chiamiamo file-di-pippo (touch file-di-pippo), con ls controlliamo che sia creato.
Ora attenzione, questo file di pippo è veramente di pippo, tanto è vero che se diamo il comando ls -l file-di-pippo verrà fuori questa stringa:
rw-r--r-- 1 pippo pippo ...... il proprietario è pippo (il primo nome è il proprietario), quindi se noi volessimo fare delle modifiche su questop file e non siamo l'utente pippo, queste ci verranno negate, poichè non siamo il proprietario del file. Cioè se l'utente pluto vorrà modificarne il contenuto non potrà. perchè come dice la stringa rw-r--r--, ossia la rigs dei permessi, che dopo affronteremo, se tu non sei l'utente (ossia i primi tre bit rw- questo sta per Read and write), non puoi modificare il contenuto del file.

Ma allora come si fa a modificare i permessi?

Inanzitutto bisogna ritornare a essere utente ROOT, e digitare il comando chown (change owm cambia propietario) e si digita il nome dell'utente a cui il file andrà in mano, nel nostro caso l'utente pluto, poi specifichiamo il file e il suo percorso. (chown pluto /home/pippo/file-di-pippo).
Se torniamo ora ad essere pippo e digitiamo ls -l file-di-pippo vedremo la seguente stringa:
rw-r--r-- 1 pluto pippo ..... come vedete il nuovo proprietario è proprio pluto. Ora chiaramente sulo pluto che fa parete dei primi tre bit potrà leggere e scrivere.
Quindi eseguendo il login con pluto, possiamo usare l'editor /nano e andare a modificare il file appena assegnatoci dal ROOT.
Se provate a farlo con pippo non potrete più modificarlo ma solo leggerlo come indica la seconda sequenza di bit (r--).

Questa era solo un introduzione per spiegare cosa significa quando un file "appartiene" ad un solo utente.
La stringa dei permessi si può sintetizzare con primi tre bit "Utente", secondi bit "Gruppo", terzo bit "Altri/other":
rw- r-- r--
U G O