5.1 Sicurezza nel filesystem (i diritti d’accesso)

Dalla directory corsolinux, digita

ls -l (l sta per lunga lista)

Vedrai che ora otterrai maggiori informazioni sul contenuto della directory, come nell’esempio sotto

-rwxrw-r– 1 stefano users 2450 Sept 29 11:52 file1

A ciascun file (e directory) sono associati i diritti d’accesso, che si possono sapere digitando appunto ls -l.

Nella colonna a sinistra c’è un gruppo di 10 lettere che consistono nei simboli d, r, w, x, , e, occasionalmente, s o S. Se la lettera d è presente all’inizio di questa sequenza allora significa che si tratta di una directory, altrimenti è il simbolo con cui inizia la stringa.

Le rimanenti 9 lettere indicano i permessi, o i diritti d’accesso, e sono in gruppi di 3.

  • il gruppo a sinistra mostra i permessi dell’utente cui appartiene il file o la directory (stefano nell’esempio precedente);
  • il gruppo centrale mostra i permessi per il gruppo di utenti a cui il file o la directory appartiene (users nell’esempio precedente);
  • il gruppo più a destra mostra i permessi per tutti gli altri.

Le lettere r, w, ecc., hanno significati leggermente diversi a seconda se si riferiscono a un semplice file o a una directory.

Diritti d’accesso ai file

  • r (o -), indica il permesso di lettura (o la sua assenza), cioè la presenza o l’assenza del permesso di leggere e copiare il file
  • w (o -), indica il permesso di scrittura (o la sua assenza), cioè la presenza o l’assenza del permesso di modificare il file
  • x (o -), indica il permesso di esecuzione (o la sua assenza), cioè il permesso di eseguire un file, ove appropriato

Diritti d’accesso alle directory

  • r consente agli utenti di elencare i file nella directory;
  • w indica che gli utenti possono eliminare i file dalla directory o spostarli in essa;
  • x indica il diritto di accedere ai file nella directory. Ciò implica che puoi  leggere i file nella directory purché tu abbia il permesso di lettura sui singoli file.

Quindi, per leggere un file, devi avere il permesso di usare la directory (x) che contiene quel file, nonché su qualsiasi directory che contiene quella directory come sottodirectory, e così via, risalendo l’albero.

Alcuni esempi

-rwxrwxrwx un file che tutti possono leggere, scrivere ed eseguire (ed eliminare).
-rw——- un file che solo il proprietario può leggere e scrivere – nessun altro può leggere o scrivere e nessuno ha diritti di esecuzione (ad esempio, il file della tua mailbox)

5.2 Cambiare i diritti d’accesso

chmod (changing a file mode)

Only the owner of a file can use chmod to change the permissions of a file. The options of chmod are as follows

Carattere

Significato

u

utente

g

gruppo

o

gli altri

a

tutti

r

lettura

w

scrittura (e cancellazione)

x

esecuzione (e accesso alle directory)

+

aggiungi un permesso

rimuovi un permesso

For example, to remove read write and execute permissions on the file listagrande for the group and others, type

chmod go-rwx listagrande

This will leave the other permissions unaffected.

To give read and write permissions on the file listagrande to all,

chmod a+rw listagrande

Try changing access permissions on the file science.txt and on the directory backups

Use ls -l to check that the permissions have changed.

Sommario

Comando

Significato

ls -lag list access rights for all files
chmod [options] file change access rights for named file

 

whitone@netstudent.polito.it, © 25 febbraio 2009
m.stonebank@surrey.ac.uk, © 9 ottobre 2000
Questa esercitazione è rilasciata sotto Creative Commons License.