Lezione 5 – Gestione dei permessi

In questa lezione vedremo cosa sono i permessi sui file e cartelle e come cambiarne i proprietari.

Introduciamo l’utente root
In tutti i sistemi Linux esiste l’utente “root”, che è l’amministratore del sistema, colui che può fare qualsiasi attività sul pc compreso cancellare files importanti e modificare partizioni.
In ogni distribuzione linux ci sono almeno 2 utenti quello impostato durante l’installazione e l’utente “root”.
Per fare tutte le operazioni importanti si effettua il login come utente “root”., questo utente è disabilitato di default ; per ‘loggarci’ come utente root  dobbiamo dare da terminale il comando


su

(Che sta pere SuperUser)
Ci permette di ‘loggarci’ come utente root
Ci verrà richiesta la password (creata durante l’installazione).


sudo

sudo [comando]

Permette di eseguire il  comando come utente root direttamente nel terminale. (sta per SuperUser do)
Ci verrà richiesta la password (creata durante l’installazione).

Glli utenti con i superpoteri sono quelli che fanno parte del gruppo “admin”.


Bisogna fare molt attenzione quando diventiamo utenti root in quanto si possono fare tutte le operazioni di modifica di file e cartellle con tutti i vantaggi e anche i rischi cui si può incorrere andando erroneamente a modificare files/directory, anche cancellandole, e causando con ciò danni irreversibili al sistema.

Vediamo ora i permessi sui file

In GNU/linux file e cartelle sono sempre considerate come file , ogni file al momento della sua creazione viene assegnato un proprietario, che a sua volta appartiene ad un gruppo di utenti presenti sul pc.
I permessi sono il diritto di un determinato utente di poter fare determinate azioni sul file.
Le azioni possibili sono tre:
1- lettura ( read) contraddistinta dalla letta r
2- scrittura (write) contraddistinta dalla letta w
3- esecuzione (execute) contraddistinta dalla letta x

Questi permessi vanno attribuiti a determinati utenti
Nei sistemi Unix-like esistono TRE utenti distinti per ogni file presente nel computer:
Anche qui sono 3 i tipi possibili :
1- proprietario (user) contraddistinta dalla letta u
2- gruppo (group) al quale appartiene il proprietario contraddistinta dalla letta g
3- altri utenti (other) contraddistinta dalla letta o

Eseguiamo nel terminale il comando ls esso visualizzerà l’elenco dei file/directory

drwxr-xr-x 2 rosario rosario  4096 nov 24 11:50 PROVA

Nella prima colonna sono indicate I permessi , la terza colonna e la quarta (root e root) indicano rispettivamente il “proprietario” e il “gruppo” del file seguiti da dimensione data creazione del file e nome file.

Analizziamo nel dettaglio: drwxr-xr-x

– La prima lettera d indica che il nostro contenuto è una cartella (directory), sarebbe invece sostituita da un trattino (“-“) se il contenuto fosse stato un file.
– I successivi nove caratteri sono i permessi per le 3 tipologia di utenti : user , group, other
(rwx) (r-x) (r-x)
quindi
rwx:  l’utente user ha il permesso sul file di lettura (read) r sul contenuto, quello di scrittura (write) w e anche il permesso di esecuzione x (execute) –
r-x  l’utente  group ha i permessi di r (read) , non ha permesso di scrittura infatti la lettera w è sostituita da, ha il permesso x (execute)
r-x:  indica i permessi di “all” associati a “chiunque” other vuole accedere al file , sono di lettura r , execute x

Tutti gli utenti hanno bisogno di permessi per accedere ai file , tranne l’utente di root che è  l’amministratore di sistema.


Analizziamo ora i comandi del terminale per cambiare i permessi


chmod

chmod [parametri] [nome file]

Permette di cambiare i permessi di un file  (a patto però di esserne il proprietario corrente o utente root)
Riferendoci all’esempio precedente volendo cambiare i permessi

Per ottenere quanto sopra, possiamo usare la notazione ALFABETICA e la notazione NUMERICA/OTTALE.
Partiamo con quella ALFABETICA che appare forse più immediata.
Abbiamo detto che per ogni file esistono tre gruppi di utenti: u , g , o
ai quali possiamo aggiungere un permesso con il segno  + o toglierlo con il segno

esempio

r–wxr-xr 2 rosario rosario  4096 nov 24 11:50 nomefile

dopo il comando
~$chmod u+x nomefile

aggiungeremo il permesso di execute x all’utente user per il file nomefile
dopo ls avremo
-r-xwxr-xr- 2 rosario rosario  4096 nov 24 11:50 nomefile

Il punto debole di usare la notazione alfabetica è che se vogliamo cambiare i permessi di due o più gruppi e queste modifiche sono diverse per ciascun gruppo ecco che si deve esegure il comando chmod per almeno DUE volte.
Con la notazione NUMERICA OTTALE  si possono cambiare con un solo comando i permessi di utente e gruppo.
Nella tabella seguente è indicato come viene effettuato il calcolo della notazione ottale per il permesso da dare

tabella1

Per ogni parametro va impostato uno di questi valori seguendo la tabella

chmod [a,u,g,o] [+,-] [r,w,x] nomefile

dove
[a,u,g,o] indichiamo chi sarà il destinatario del permesso, per cui a è riferito a all, u user, g  group, o  others.
[+,-] indicano l’azione che si vuole compiere, cioè l’accordare (“+”) o il revocare un determinato permesso (“-“).
[r,w,x] indica il tipo di permesso che si intende accordare o revocare all’utente o agli utenti coinvolti.

Per cui, se per esempio intendiamo assegnare a tutti gli utenti il permesso di lettura su un determinato file la nostra istruzione dovrà essere simile alla seguente:

chmod a+w nome_contenuto

chmod 777  nomefile

servirà ad abilitare per tutti e 3 i gruppi wrx per il file nomefile

Per chiarire basta ricordarsi che essendoci TRE gruppi di utenti ,si avranno TRE numeri  (compresi tra lo 0 e il 7), CIASCUNO DEI QUALI RAPPRESENTA LE AUTORIZZAZIONI PER QUEL GRUPPO.

Nella tabella successiva sono indicati le autorizzazioni più frequenti

tabella2


chown

chown  [nomeproprietario:nomegruppo] [nomefile]


permette di  cambiare l’utente proprietario e/o il gruppo assegnato ad un file o ad una directory, omettendo il gruppo cambia solo il nome del proprietario


chgrp

chgrp [nomegruppo] [nomefile]

permette di  cambiare il gruppo di un file o directory (senza poter intervenire sul proprietario)


 

Lezione Precedente :  Comandi base Terminale                                                           Lezione Prossima: Trucchi

 

———————————————————————————————————-
La presente guida è stata realizzata con  creativecommons Creative Commons
———————————————————————————————————-

 

One thought on “Lezione 5 – Gestione dei permessi

  1. Lio

    Finalmente…. spiegazione semplice, chiara e precisa !
    Anche la grafica in evidenza risalta meglio la spiegazione…
    Complimenti, da oggi seguirò anche il Vostro sito !

    Lio

    Reply

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Anti-spam: complete the taskWordPress CAPTCHA