Linux Filesystem Hierarchy: Versione 0.65 | ||
---|---|---|
Indietro | Capitolo 1. La gerarchia del filesystem Linux | Avanti |
Linux distingue gli eseguibili "normali" da quelli usati per la manutenzione del sistema e per attività di amministrazione. Gli ultimi si trovano sia in questa directory che - quelli meno importanti - in /usr/sbin. I programmi per l'amministrazione del sistema installati localmente dovrebbero stare in /usr/local/sbin.
I programmi che vengono eseguiti, dopo che è stato verificato che /usr è montato, si trovano generalmente in /usr/sbin. La directory /sbin contiene i binari essenziali per il funzionamento del sistema e comprendono programmi per l'amministrazione del sistema e programmi per la manutenzione e configurazione del'hardware, come lilo, fdisk, init, ifconfig, etc.
Un'altra directory che contiene binari di sistema è /usr/sbin. Questa directory contiene altri binari ad uso dell'amministratore del sistema. È qui che si trovano i demoni di rete per il sistema, assieme ad altri binari ai quali (generalmente) ha accesso solo l'amministratore, ma che non sono richiesti per la manutenzione e il ripristino del sistema. Normalmente queste directory non fanno mai parte delle $PATH degli utenti normali, solo degli utenti root (PATH è una variabile d'ambiente che controlla la sequenza delle directory dove il sistema tenta di cercare i comandi).
Il FSSTND asserisce che:
/sbin dovrebbe contenere solo i binari essenziali per avviare, ripristinare, recuperare o riparare il sistema in aggiunta ai binari che si trovano in /bin.
Una particolare eccentricità della gerarchia del filesystem di Linux è che i binari di /sbin originaramente venivano sistemati in /etc.
Decidere quali comandi vanno nelle directory "sbin" è semplice: se un utente generico (non un amministratore del sistema) li esegue direttamente, devono essere posti in una delle directory "bin". Ordinariamente gli utenti non dovrebbero mettere nessuna delle directory sbin nel loro percorso di ricerca. Per esempio, file come chfn, che gli utenti usano solo occasionalmente, devono essere messi sempre in /usr/bin; ping, assolutamente necessario per l'utente root (diagnosi e ripristino della rete), viene usato spesso dagli utenti e per questa ragione deve risiedere in /bin. È bene che gli utenti abbiano il permesso di lettura ed esecuzione per tutto quello che c'è in /sbin ad eccezione, forse, di certi programmi come setuid e setgid. La divisione tra /bin e /sbin non è stata creata per ragioni di sicurezza o per impedire agli utenti di vedere il sistema operativo, ma per fornire una buona suddivisione fra binari usati da tutti gli utenti e quelli usati principalmente per attività di amministrazione. Non c'è nessun vantaggio inerente la sicurezza nel rendere /sbin inaccessibile agli utenti.
La conformità all'FSSTND esige che i seguenti comandi, o collegamenti simbolici ai comandi, siano richiesti in /sbin.
shutdown. Comando per arrestare il sistema.
I seguenti file, o collegamenti simbolici ai file, devono stare in /sbin se il sottosistema corrispondente è installato:
fastboot Riavvia il sistema senza controllare i dischi (opzionale) fasthalt Ferma il sistema senza controllare i dischi (opzionale) fdisk Utilità per gestire la tabella delle partizioni (opzionale) fsck Utilità per verificare e riparare i filesystem (opzionale) fsck.* Utilità per verificare e riparare un filesystem specifico (opzionale) getty Il programma getty (opzionale) halt Comando per fermare il sistema (opzionale) ifconfig Configura un'interfaccia di rete (opzionale) init Processo iniziale (opzionale) mkfs Comando per creare un filesystem (opzionale) mkfs.* Comando per creare un filesystem specifico (opzionale) mkswap Comando per impostare un'area di swap (opzionale) reboot Comando per riavviare il sistema (opzionale) route Utilità della tabella di instradamento IP (opzionale) swapon Abilita la paginazione e l'uso della swap (opzionale) swapoff Disabilita la paginazione e l'uso della swap (opzionale) update Demone che periodicamente svuota i buffer del filesystem (opzionale)