FHS

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 11 maj 2022; verifiering kräver 1 redigering .
FHS
Skapare Linux Foundation
publiceras 14 februari 1994
senaste versionen
Officiell sida wiki.linuxfoundation.org/…pathname.com/fhs/
_

FHS ( engelsk  Filesystem Hierarchy Standard , "filsystemhierarkistandard") är en standard som förenar platsen för filer och kataloger med ett allmänt syfte i UNIX -filsystemet . De flesta UNIX-liknande system idag följer dessa regler till viss del. Till exempel lagras en typisk användardatabas alltid i en /etc/passwd.

Den nuvarande versionen av standarden är 3.0, tillkännagiven den 3 juni 2015.

För att få hjälp om katalogsystemet som används i operativsystemet finns det ibland ett kommando hierhellerman hier.

Grundläggande information

Processen att utveckla en hierarkistandard för filsystem började i augusti 1993 med försök att effektivisera katalogen och filstrukturen för operativsystemet GNU/Linux . Den 14 februari 1994 släpptes FSSTND ( Filesystem Standard ), en filsystemstandard som är specifik för GNU/Linux. Efterföljande versioner släpptes den 9 oktober 1994 och 28 mars 1995.

I början av 1996 gick BSD -utvecklingsgemenskapen med i utvecklingen av en ny version av FSSTND med målet att utveckla en standard som passar alla UNIX-liknande operativsystem. Namnet på standarden ändrades till Filesystem Hierarchy Standard .

FHS stöds av Free Standards Group  , en ideell organisation som inkluderar stora mjukvaru- och hårdvaruutvecklare som HP , Red Hat , IBM och Dell . Men huvuddelen av distributionsutvecklare, inklusive de som ingår i Free Standards Group, följer inte standarden helt. Speciellt vägar speciellt skapade av gruppen, såsom /srv, används praktiskt taget inte någonstans. Vissa Linux-system förkastar FHS och följer sin egen standard, som GoboLinux .

Sedan FHS startade som ett Linux-gemenskapsinitiativ ignorerar andra UNIX- och UNIX-liknande operativsystem det helt till förmån för sina egna system, som ibland är ganska utbredda. Till exempel använder Mac OS X namn som /Library/, /Applications/och /Users/tillsammans med traditionella UNIX-hierarkinamn.

Katalogstruktur

I FHS finns alla filer och kataloger i rotkatalogen, även om de finns på olika fysiska medier. Vissa av katalogerna kan dock bara finnas med om viss programvara är installerad, till exempel X Window System . De flesta av dessa kataloger finns på alla UNIX-liknande operativsystem och används på liknande sätt.

Beskrivning av kataloghierarkin enligt FHS
Katalog Beskrivning
/ Rotkatalogen som innehåller hela filhierarkin .
/bin Grundläggande verktyg som behövs både i enanvändarläge och under normalt arbete för alla användare (till exempel: cat , ls , cp ).
/boot Startfiler (inklusive bootloader -filer , kärna , initrd, System.map). Placeras ofta i en separat sektion .
/dev Grundläggande enhetsfiler (till exempel /dev/null, /dev/zero).
/etc Systemomfattande konfigurationsfiler (namnet kommer från latinet  et cetera ).
/etc/opt Konfigurationsfiler för /opt.
/etc/X11 X Window System version 11 konfigurationsfiler .
/etc/sgml SGML- konfigurationsfiler .
/etc/xml XML- konfigurationsfiler .
/home Innehåller användarens hemkataloger , som i sin tur innehåller användarens personliga inställningar och data. Placeras ofta på en separat sektion.
/lib Huvudbiblioteken som krävs för att köra program från /binoch /sbin.
/media Monteringspunkter för flyttbara media som CD-ROM , DVD-ROM (beskrivs först i FHS-2.3 ).
/mnt Innehåller temporärt monterade filsystem .
/opt Ytterligare programvara .
/proc Ett virtuellt filsystem som representerar tillståndet för operativsystemets kärna och kör processer som filer .
/root Hemkatalogen för rotanvändaren .
/run Information om systemet från det ögonblick det laddades, inklusive data som behövs för driften av demoner (pid-filer, UNIX-sockets, etc.) [4] .
/sbin Grundläggande systemprogram för systemadministration och konfiguration, t ex init , iptables , ifconfig .
/srv Data för tjänster som tillhandahålls av systemet (t.ex. www eller ftp).
/sys Innehåller information om enheter, drivrutiner och vissa kärnegenskaper. [5]
/tmp Tillfälliga filer (se även /var/tmp).
/usr Sekundär hierarki för användardata . Innehåller de flesta användarapplikationer och verktyg som används i fleranvändarläge. Kan vara nätverksmonterad skrivskyddad och delas mellan flera maskiner [6] .
/usr/bin Ytterligare program för alla användare som inte är nödvändiga i enanvändarläge.
/usr/include Standardhuvudfiler . _
/usr/lib Bibliotek för program som finns i /usr/binoch /usr/sbin.
/usr/local Tertiär hierarki för värdspecifika data. Innehåller vanligtvis underkataloger som bin, lib, share[7] .
/usr/sbin Ytterligare systemprogram (som demoner för olika nätverkstjänster).
/usr/share Arkitekturoberoende delad data.
/usr/src Källkoder (till exempel här är kärnans källkoder).
/var Modifierbara filer som loggfiler , temporära e-postfiler, spoolerfiler .
/var/cache Applikationscache. Sådan data genereras lokalt som ett resultat av resurskrävande beräkningar eller I/O-operationer. Applikationen måste kunna återskapa dessa data. Dessa filer kan raderas utan dataförlust.
/var/lib Statusinformation. Permanent data som programmen ändrar under sitt arbete (till exempel databaser, pakethanterarens metadata etc.).
/var/lock Lås filer som indikerar att någon resurs är upptagen.
/var/log Olika loggfiler .
/var/mail Användarbrevlådor.
/var/run Katalogen för att lagra information om systemet sedan den laddades är för närvarande föråldrad. Du kan göra det till en referens till /run. Katalogen lämnas för bakåtkompatibilitet med program som fortfarande använder katalogen /var/run[8] .
/var/spool Uppgifter som väntar på att bearbetas (till exempel utskriftsköer, olästa eller osända e-postmeddelanden).
/var/spool/mail Placering av användarpostlådor (utfasad).
/var/tmp Tillfälliga filer som bör sparas mellan omstarterna.

Separation i system- och användarkataloger

Separation i system (till exempel /etc , /bin ) och användarkataloger är nödvändig för följande ändamål:

Superanvändarens hemkatalog (root) finns i /root, inte i /home/root, eftersom superanvändarkontot är avsett enbart för att administrera operativsystemet. Detta bidrar till att förbättra systemets tillförlitlighet: /rootdet är vanligtvis placerat på samma partition som systemet, vilket tillåter underhåll och konfiguration av operativsystemet genom att endast montera rotpartitionen.

Anteckningar

  1. https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.pdf
  2. https://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.pdf
  3. https://www.pathname.com/fhs/pub/fhs-2.2.pdf
  4. 3.15. /run : Körtidsvariabeldata . refspecs.linuxfoundation.org. Hämtad 19 mars 2018. Arkiverad från originalet 8 mars 2018.
  5. /sys: Virtuella filsystem för kärna och systeminformation . Filsystemhierarkistandard . Hämtad 4 juni 2017. Arkiverad från originalet 1 juni 2017.
  6. Filesystem Hierarchy Standard Arkiverad 25 maj 2005 på Wayback Machine 
  7. Historiskt och strikt följer standarden, /usr/localär ett arkiv av data som måste lagras på den lokala värden (i motsats till /usr, som kan monteras över nätverket). Det är dock vanligtvis /usrsällan fjärrmonterat, och /usr/localanvänds oftare för att installera programvara och data som inte ingår i distributionen (i det här fallet /usrska det innehålla program och data endast från standarddistributionen). Kanske kommer FHS-standarden i framtiden att modifieras för att återspegla denna etablerade situation.
  8. 5.13. /var/run : Körtidsvariabeldata . refspecs.linuxfoundation.org. Datum för åtkomst: 19 mars 2018. Arkiverad från originalet 4 februari 2018.

Länkar