Filesystem Hierarchy Standard
- Den här artikeln handlar om standarden FHS, för högskolan se Försvarshögskolan.
Filesystem Hierarchy Standard (FHS) definierar huvudkatalogerna och dess innehåll i de flesta Linux-baserade operativsystem. Det är en formalisering och utökning av vanliga UNIX-arbetssätt. Den nuvarande versionen är 3.0 och annonserades den 3 juni 2015 [1].
Struktur
Inom FHS finns alla kataloger under roten "/", även om de i praktiken lagras på olika fysiska enheter. Notera dock att vissa av nedanstående kataloger kanske inte finns på ett specifikt unixsystem, beroende på om vissa undersystem såsom X Window System är installerade.
De flesta av dessa kataloger existerar i alla unixliknande operativsystem och används generellt på ungefär samma sätt. Denna beskrivning är dock den som används av FHS och anses inte standardisera andra plattformar än linux.
Uppdelningen i olika grenar följer a priori Unix-tradition, men denna har renodlats så att filsystemet enkelt kan fördelas på olika partitioner med olika grader av åtkomst, skrivbehov, säkerhetskopiering, central administration etcetera. Också enskilda programs filer delas upp på olika kataloger beroende på dessa behov.
Katalog | Beskrivning |
---|---|
/ | Primär hierarki, rot för hela systemet. |
/bin/ | Nödvändiga kommandon, programfiler som behövs i single user mode för alla användare såsom "cat", "ls" och "cp". |
/boot/ | Bootfiler, såsom operativsystemkärnor och initrd. Ofta en separat partition. |
/dev/ | Essentiella enheter (devices), också till exempel /dev/null, som inte representerar en fysisk enhet. |
/etc/ | Värdspecifika konfigurationsfiler för hela systemet. Namnet kommer från et cetera. |
| Konfigurationsfiler för /opt/. |
| Konfigurationsfiler för X Window System, version 11. |
| Konfigurationsfiler för SGML. |
| Konfigurationsfiler för XML. |
/home/ | Användares hemkataloger – innehåller sparade filer, personliga inställningar och så vidare. Ofta en separat partition. FHS förutsätter inte att katalogen existerar och inga antaganden om dess struktur skall göras. Däremot finns vissa specifikationer för konfigurationsfilerna i enskilda användares hemkataloger. |
/lib/ | Programbibliotek ("libraries") som är essentiella för programmen i /bin/ och /sbin/. |
/media/ | Anslutningspunkter för borttagbara media såsom CD-ROM (lades till i FHS 2.3). |
/mnt/ | Tillfälligt anslutna filsystem. |
/opt/ | Valfria ("optional") tillämpningsprogram och programvarupaket. |
/proc/ | Virtuellt filsystem som dokumenterar kärna och processtatus som textfiler, till exempel uptime, network. |
/root/ | Hemkatalog för root-användaren. |
/sbin/ | Essentiella programfiler för systemet, som init, route och ifup. |
/srv/ | Sajtspecifik data som servas av systemet, till exempel www-sidor. |
/tmp/ | Temporära filer (även /var/tmp) |
/usr/ | Sekundär hierarki för användardata, innehåller majoriteten av multianvändar-program och funktioner.[a] |
| Icke-essentiella programfiler som ej behövs i single user mode, för alla användare. |
| Standardiserade include-filer (header files). |
| Bibliotek för programmen i /usr/bin/ och /usr/sbin/. |
| Icke-essentiella programfiler för systemet (såsom daemons för nätverkstjänster). |
| Arkitekturoberoende (delat) data. |
| Källkod (exempelvis kärnans källkod med header-filer). |
| X Window System, version 11, release 6. |
| Tertiary hierarchy för lokalt data, specifik för värden. Har oftast underkataloger såsom bin/, lib/, share/[b] |
/var/ | Variabla filer, såsom loggar, spoolfiler och temporära e-postfiler. |
| Låsfiler. Filer som håller koll på resurser som används för tillfället. |
| Diverse loggfiler. |
| Användares e-postlådor (mailboxar). |
| Informationen om det aktiva systemet sedan den senaste booten (nuvarande inloggade användare och aktiva daemoner. |
| Spool för aktiviteter som väntar på att bli bearbetade (som väntande utskrifter och oläst mail). |
| Gammal katalog för användares mailboxar. |
| Temporära filer som bevaras mellan omstarter av systemet. |
Noter för tabellen
- ^ Skall kunna vara delat och kunna anslutas read-only http://www.pathname.com/fhs/pub/fhs-2.3.html.
- ^ Historiskt och strikt efter standarden är /usr/local/ för data som måste lagras på den lokala värden (i motsats till /usr/ som kan anslutas över ett nätverk. I verkligheten ansluts dock /usr/ oftast inte över ett nätverk, och /usr/local används oftare för att installera mjukvara eller data som inte är en del av operativsystemet (tredjepartsprogram som installeras förbi systemets pakethantering). Det är möjligt att FHS i framtiden ändras för att reflektera denna de facto-konvention).
Se även
- Linux Standard Base
- freedesktop.org
Källor
- ^ ”FHS 3.0 Released”. 3 juni 2015. Arkiverad från originalet den 31 maj 2016. https://web.archive.org/web/20160531064927/http://www.linuxfoundation.org/collaborate/workgroups/lsb/fhs-30. Läst 21 januari 2017.