it-swarm.it

Qual è il significato delle directory predefinite nella gerarchia del filesystem Linux?

Dopo aver installato varie distro Linux per armeggiare, sono perplesso dagli installatori che offrono layout di partizione - per una facile via d'uscita uso solo l'intero spazio disponibile su disco.

Alcune delle partizioni offerte hanno nomi criptici, tra cui / var, swap, / usr e / home. Gli installatori non me lo spiegano davvero: quale scopo servono e quali, se del caso, dovrebbero essere usati?

41
Grant Palin

La breve risposta sui nomi delle directory: digitare "man hier" in un terminale :)

Questa è la pagina man della gerarchia del filesystem, che spiega lo scopo generale dei nomi delle directory e ciò che contengono. Puoi vedere un versione web qui .

C'è anche più lettura su Wikipedia:

Questi collegamenti spiegheranno tutto su quali partizioni sono chiamate cosa e cosa sono state (o sono state storicamente) utilizzate per archiviare.

La risposta sull'utilizzo di partizioni separate anziché solo su directory nella stessa partizione ritorna alla manutenibilità e all'espandibilità. Se hai una partizione con, diciamo, / e /home su di essa, Joe User può riempire la sua cartella /home/joe e l'intera macchina esaurirà lo spazio su disco e si fermerà funziona (sto semplificando qui, ma questo è il risultato generale). Se hai / e /home su partizioni diverse, Joe User può riempire la sua cartella /home/joe e la partizione /home sarà piena, ma la macchina continuerà operare perché / non è interessato.

Quindi estendi quel principio a quasi tutte le diverse directory che si trovano su partizioni diverse e puoi vedere come sarebbe utile, in particolare quando una macchina è in esecuzione 24/7 in un ruolo multiutente e multi-servizio.

61
Ben Williams

Durante l'installazione, molte distribuzioni offrono la possibilità di inserire directory diverse su partizioni diverse. Ad esempio, molti utenti scelgono di avere la directory/home su una partizione diversa rispetto al resto dell'installazione. Questo perché tutto nella directory/home appartiene a un utente - documenti, video e tutti gli altri dati specifici dell'utente vanno qui. Mettendo la directory/home su una partizione separata e i file del sistema operativo reale su un'altra, se un utente decide di fare una nuova installazione del suo sistema operativo Linux, può semplicemente riscrivere la partizione principale e lasciare la sua partizione/home (e tutto dei suoi file) intatto.

Ciò consente inoltre all'utente di installare più distribuzioni Linux su partizioni diverse, condividendo tutte la stessa partizione/home. In questo modo, un utente può accedere ai suoi file indipendentemente dalla versione di Linux in uso.

Un utente occasionale non dovrebbe preoccuparsi troppo di assegnare un/var, swap,/usr separato, ecc. Tutte queste directory fanno parte del sistema operativo e hanno poco a che fare con i file dell'utente.

7
Makario

L'uso dell'intero spazio disponibile su disco è un'opzione perfettamente valida (e probabilmente consigliata) per i personal computer. Partizionare il filesystem in quel modo è secondo me una sosta dai tempi antichi prima che il RAID o la gestione del volume virtuale fossero pratici nel software.

Nei sistemi simili a UNIX il filesystem inizia nella directory principale '/'. Nei termini DOS/Windows sarebbe "C:"

Mentre in DOS/Windows aggiungi unità alle lettere D :, E :, ecc. Nei sistemi simili a UNIX "monti" le unità nelle directory. Ai tempi in cui avevi hard disk da 10 o 10 megabyte, potevi montare varie directory in unità e partizioni diverse per dare l'illusione di un singolo disco di grandi dimensioni. Praticamente un RAID 0 di un uomo povero.

Esistono molte ragioni per suddividere le varie directory di root, ma un'idea popolare è che, poiché le partizioni di swap e/var sono state scritte al massimo, hanno le maggiori probabilità di fallire. Separandoli in diverse partizioni è davvero semplice aggiungere un'altra unità dal backup e rimontarla.

Anche avere una partizione/home separata può essere davvero fantastico se esegui più versioni di Linux su una macchina. (Ad esempio Ubuntu e Red Hat). Poiché i programmi Unix/Linux inseriscono le impostazioni dell'utente nella sua directory home. Funziona molto meglio in teoria che in pratica però. Perché è necessario comprendere a fondo le implicazioni delle autorizzazioni.

Ecco alcune importanti directory per i sistemi operativi simili a UNIX e le loro spiegazioni.

  • /bin - File eseguibili del sistema di base
  • /lib - Librerie di sistema di base (.so in Linux, .dlls in Windows).
  • /boot - Dove vive il tuo kernel. Il computer non si avvia senza questo.
  • /var - La directory in cui i servizi possono archiviare i file. Come file di registro e cassette postali
  • /etc - File di configurazione del sistema
  • /usr - Applicazioni utente non essenziali. (Un sistema unix può avviare senza un/usr (per scopi di recupero) ma non sarebbe molto divertente. Nei sistemi più vecchi è lo stesso di/home.)
  • /home - Directory home dell'utente. Gli utenti normali possono solo scrivere nella propria directory home.
  • swap (non una directory) In genere si tratta di una partizione separata in UNIX. Non esiste una directory di scambio, sebbene sia possibile creare file di scambio in Linux.
5
wm_eddie

È possibile trovare una descrizione molto dettagliata nelle pagine di The Linux Documentation Project : Linux Filesystem Hierarchy

2
ddeimeke

Bene, swap viene utilizzato uno spazio di scambio. È come un file di paging in Windows. In qualche modo integra la RAM.

/home viene utilizzato per dati utente come Documenti in Windows,

/usr è dove la maggior parte dei programmi è molto simile a C:\Windows e

/var contiene dati che vengono modificati quando il sistema funziona normalmente.

Per quanto riguarda il motivo per cui sono in partizioni separate, penso che sia principalmente se il tuo sistema operativo scende, i tuoi dati non diminuiscono. Ma non ne sono davvero sicuro.

1
Cody Harlow

È possibile creare partizioni separate durante l'installazione. una partizione /home significherà ogni volta che si installa Ubuntu le impostazioni personali dell'utente rimarranno.

/ - è la radice.
/varspiegato sopra)
/dev - contiene "collegamenti" ai dispositivi registrati. vale a dire/dev/Video0 è una scheda di acquisizione ...

/bin/sbin - contiene applicazioni

meglio ancora Wikipedia ha un'ottima pagina --- (http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard

La cosa più grande che trovo è avere una seconda partizione (la più grande) per le tue cose e come ho detto ogni volta che reinstalli o aggiorni. Seleziona di nuovo quella partizione e assicurati di deselezionare la casella del formato e quindi tutto è tornato. Anche il tuo sfondo!

1
M J

Storicamente, è considerato best practice avere /home, swap e altri nodi critici risiedono in partizioni diverse, dischi fisici diversi o persino macchine fisiche diverse. Anche se per comodità (nel bene e nel male) e con l'avvento di backup economici o basati su cloud a basso costo, tutto ora vive in un'unica grande partizione e fai semplicemente il backup delle tue cose personali altrove.

/usr, sta per Unix System Resources

/sbin, file binari di sistema

Contrariamente alle credenze popolari, /etc non significa et cetera . Al contrario, sta per Cassetta degli attrezzi estesa . Ma, contrariamente alle credenze popolari, è ancora una questione di dibattito.

Ecco qualche altro info su quelle cartelle e su come sono organizzate.

1
MrZen

La partizione di swap viene utilizzata anche per l'ibernazione. Se si desidera mettere in sospensione il proprio laptop o desktop, è necessario disporre di una partizione di swap o di un file di swap sufficientemente grande da contenere il sistema operativo in esecuzione e le applicazioni aperte.

Si suggerisce spesso che la partizione di swap abbia le stesse dimensioni della memoria RAM.

1
jr0cket

Lo scambio dovrebbe essere tenuto separatamente se lo si utilizza. E usa 1,5-2,0 x la dimensione della tua ram per questo.

Il resto può essere tenuto insieme e non ha molta importanza (Linux/Unix non è Windows e ha una gerarchia di directory singola, indipendentemente dal fatto che la directory/var sia una partizione separata o meno, sembra esattamente la stessa). Lo scopo principale del partizionamento è usare diversi filesystem e dividere possibili scenari "full disk" (quindi, per esempio, se/var si riempie di log di alcune app pazze,/home stil funziona)

Come sidenote, consiglio vivamente di utilizzare LVM che consente di creare tutte le partizioni rimovibili e rimovibili liberamente che si desidera, e anche di aggiungere nuovi dischi rigidi alla famiglia. Tuttavia, richiede l'apprendimento della riga di comando, quindi non è per il principiante totale.

0
Mekk