11.07.2015 Views

Amministrare GNU/Linux - Cia

Amministrare GNU/Linux - Cia

Amministrare GNU/Linux - Cia

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

1.4. IL CONTROLLO DEGLI ACCESSI 47a caratteri. Qualora si crei un file di dispositivo (che sia a blocchi o a caratteri è lo stesso)devono poi essere specificati di seguito il major number ed il minor number 71 che lo identificanounivocamente. 72Si noti che creare un file di dispositivo è una azione diversa dall’accedere al dispositivosottostante, cosa che invece è regolata dai permessi di quest’ultimo (come file). Pertanto se si èstati poco accorti e si è permesso agli utenti l’accesso in scrittura a /dev/hda, anche se questi nonpossono creare un file di dispositivo, potranno comunque scriverci sopra ed ad esempio sarannotranquillamente in grado di ripartizionare il disco.Si tenga presente però che per un utente è comunque possibile creare una fifo usando ilcomando dedicato mkfifo, che prende come argomento il nome della stessa. Il comando supportaanche l’opzione -m che permette di specificare la maschera dei permessi (con la stessa sintassi dichmod) da applicare alla stessa.Infine alcuni filesystem supportano delle operazioni speciali, che non rientrano nella normalegestione dei file, attraverso quelli che vengono chiamati gli attributi. Questi sono una serie dicapacità aggiuntive, fornite dai filesystem che le supportano, che possono essere attivata o menoper ciascun file. 73 Alcuni di questi attributi (in particolare quelli che permettono di imporre dellespeciali restrizioni all’accesso) possono essere impostati soltanto dall’amministratore, questo è ilmotivo per cui si è scelto di trattare questo argomento in questa sezione.Facendo riferimento ad estensioni che non è detto siano presenti su tutti i filesystem 74 gliattributi dei file non possono essere visualizzati con il comando ls, per visualizzarli esiste uncomando apposito, lsaddr.Il comando è analogo a ls sia per l’uso degli argomenti, che per l’uso delle opzioni -R, -a e-d che hanno lo stesso significato visto in tab. 1.3. Il comando stampa a video l’elenco dei file,preceduto dal relativo valore degli attributi speciali, pertanto se lo eseguiamo sui file di questedispense otterremo qualcosa del tipo:[piccardi@gont corso]$ lsattr *.tex----------------- advadmin.tex----------------- appendici.tex----------------- config.tex----------------- corso.tex----------------- netadmin.tex----------------- netbase.tex----------------- netinter.tex----------------- ordadmin.tex----------------- ringraziamenti.tex----------------- shell.tex----------------- stradmin.tex----------------- struttura.texche ci mostra come nessun attributo speciale sia stato impostato. 75 Quando uno di essi è attivoquesto viene indicato nell’elenco dalla presenza della lettera che lo identifica (vedi tab. 1.16) alposto del carattere “-”.71 questi due numeri sono il meccanismo con cui storicamente vengono identificati i dispositivi all’interno delkernel (cosi come gli inode identificano un file); il nome sotto /dev è solo una etichetta, potrebbe essere qualunque(anche se poi molti script non funzionerebbero), quello che indica al kernel quale dispositivo usare quando siaccede a quel file sono questi due numeri.72 per una lista completa delle corrispondenze di questi numeri con i vari dispositivi si può fare riferimento alfile devices.txt distribuito con i sorgenti del kernel nella directory Documentation.73 come per tutte le altre proprietà di un file, anche la lista degli attributi attivi viene mantenuta all’internodell’inode.74 queste estensioni sono state introdotte con ext2, ma sono supportate anche dagli altri i filesystem più comuniusati con <strong>Linux</strong>, come ext3 e reiserfs.75 questo è il caso normale, gli attributi speciali infatti vannno impostati esplicitamente, i file vengono semprecreati senza che nessuno di essi sia presente.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!