Filesystem Hierarchy Standard
De Filesystem Hierarchy Standard (FHS) definieert een open standaard voor de directory-structuur voor UNIX-achtige besturingssystemen. De standaardisatie van de directory-structuur is onder meer belangrijk voor software-ontwikkeling en pakketbeheer op platforms met een Unix-achtig bestandssysteem. Daarom is de directory-structuur die door BSD en Linux gebruikt wordt terug te vinden in de Filesystem Hierarchy Standard.

Voor het systeembeheer op een Unixachtig-platform, zoals een pc met een Linux-desktop, is inzicht in de basisprincipes en de opbouw van de FHS vereist. De FHS maakt deel uit van de Linux Standard Base en wordt ontwikkeld op basis van de IEEE 1003.n POSIX-norm. De FHS wordt onderhouden door The Linux Foundation.

Inleiding
Hoe de 'schijfinhoud', de inhoud van een computer-systeem te zien is voor de gebruiker, is voor "MS-DOS-systemen" en "Unixachtige systemen" zeer verschillend.
Op een Windows computer ziet men stationsletters (drive letters), C:\, D:\ enzovoorts met daarachter padnamen (path names) zoals C:\WINDOWS\SYSTEM32\ eindigend op de naam van een bestand, bijvoorbeeld NOTEPAD.EXE.
Als een schijfeenheid zoals een harde schijf of USB-stick wordt toegevoegd, verschijnt een nieuwe stationsletter.

Op een 'Linux-achtig' systeem is een vaststaand systeem te zien. De top van de 'boom', de tophiërarchie is altijd een schuine streep zonder toevoeging, ongeacht hoeveel schijven binnen de 'boom' vallen.
De vaststaande directory's zijn /bin, /dev, /home, /lib enzovoorts, op alle POSIX-systemen is deze structuur terug te vinden.
Deze structuur dient praktische doelen, elke directory heeft een functie. 
De vastgelegde afspraken over deze voorstelling van directory's en bestanden is waar FHS over gaat.

Geschiedenis
De Filesystem Hierarchy Standard is ontwikkeld op initiatief van de Filesystem Hierarchy Standard Group. Voordat de eerste versies van de Filesystem Hierarchy Standard opgesteld werden, bestonden al een aantal conventies over de indeling van Unix-bestandssystemen. Voor de komst van package managers werd de installatie en het beheer van software op Unix-platforms vaak handmatig en op ad-hocbasis uitgevoerd.
Op 14 februari 1994 werd FSSTND v1.0 gepubliceerd, waarna in ruim een jaar de 1.1 en 1.2 versies volgden.
Op 26 oktober 1997 werd de FHS v2.0 gepubliceerd.
Op 4 december 2000, werd FHS v2.1 gepubliceerd, ruim een half jaar later gevolgd door de 2.2-versie.
Op 29 januari 2004, werd de FHS v2.3 gepubliceerd.
Op 3 juni 2015 werd de FHS v3.0 gepubliceerd.

Eigenschappen van bestanden
De bestanden in het bestandssysteem worden afhankelijk van hun functie en eigenschappen binnen een overzichtelijk systeem ingedeeld. In de tabellen worden een paar eigenschappen van de directory's en bestanden met een kleurcode aangegeven.

Statisch vs. variabel

Essentieel vs. optioneel

Bestanden delen
In de Filesystem Hierarchy Standard staan alle bestanden en directory's (mappen) onder de root directory "/". Dat is zelfs het geval als de bestanden zich op een andere fysieke locatie bevinden (een andere computer), bijvoorbeeld bij een netwerkbestandssysteem. Bestanden kunnen via netwerken met andere hosts gedeeld worden als ze aan een aantal voorwaarden voldoen. Architectuur-onafhankelijke bestanden zijn meestal deelbaar tussen verschillende hosts terwijl configuratiebestanden over het algemeen niet deelbaar zijn. In onderstaande tabel worden een paar voorbeelden gegeven.

Er is geen algemene regel waarmee in alle gevallen een onderscheid gemaakt kan worden tussen deelbare en niet-deelbare bestanden. Soms kan architectuur-afhankelijkheid een beperking zijn. Daardoor kan een bestand deelbaar zijn met een host met dezelfde architectuur terwijl dat bestand niet-deelbaar is met een host met een andere architectuur.

Secundaire en tertiaire hiërarchieën
Behalve de primaire hiërarchie aan de basis van het bestandssysteem komen in de FHS secundaire en tertiaire hiërarchieën voor. De secundaire en tertiaire hiërarchieën zijn meestal afspiegelingen van de primaire hiërarchie. De secundaire en tertiaire hiërarchieën bevatten bestandssystemen met een speciale functie in relatie tot de bestanden in de primaire hiërarchie. Secundaire en tertiaire hiërarchieën zijn onder andere te vinden in /opt, /usr, /usr/local, /var en /var/opt.

Bestandssysteem
De onderstaande omschrijvingen gelden voor de FHS-2.3-specificatie die door The Linux Foundation gepubliceerd is. De omschrijvingen in onderstaande tabellen hoeven niet juist te zijn voor andere versies of voor afwijkende implementaties van de FHS.

/
De slash, /, geeft de rootdirectory van het bestandssysteem op de host aan.

/usr
De /usr-directory is de op een na grootste directory in het bestandssysteem. De afkorting staat voor ""unix system resources"" en heeft niets te maken met ""user"". Het is een gedeelde directory voor alle gebruikers op het systeem en het bevat alleen read-only-gegevens. Dat houdt in dat de /usr-directory gedeeld kan worden met verschillende hosts met een FHS-compliant bestandssysteem. Host-specifieke gegevens of veranderlijke gegevens dienen elders opgeslagen te worden.

/usr/local
Tertiaire hiërarchie voor lokale, niet-deelbare gegevens en bestanden, specifiek voor deze host.

/usr/share
De tertiaire hiërarchie voor deelbare gegevens en bestanden die toegankelijk zijn voor verschillende hosts op een netwerk.

/var
/var bevat variabele gegevensbestanden. Dit omvat onder meer spool directory's en logbestanden en tijdelijke bestanden.

Sommige delen van /var zijn niet-deelbaar tussen verschillende hosts, zoals /var/log, /var/lock en /var/run.
Andere bestanden kunnen wel worden gedeeld, met name de bestanden in /var/mail, /var/cache/man, /var/cache/fonts en /var/spool/news.

Zie ook 
 Linuxbestandssysteem

Referenties

Externe links
 Website van The Linux Foundation
 IEEE POSIX-certificatie
 Open Source Initiative
 Linux Document Project

Bestandssysteem
Linux
Unix
Open standaard
De Filesystem Hierarchy Standard ( FHS ) definieert een open standaard voor de directory-structuur voor UNIX-achtige besturingssystemen . De standaardisatie van de directory-structuur is onder meer belangrijk voor software-ontwikkeling en pakketbeheer op platforms met een Unix-achtig bestandssysteem . Daarom is de directory-structuur die door BSD en Linux gebruikt wordt terug te vinden in de Filesystem Hierarchy Standard . Voor het systeembeheer op een Unixachtig-platform , zoals een pc met een Linux-desktop , is inzicht in de basisprincipes en de opbouw van de FHS vereist . De FHS maakt deel uit van de Linux Standard Base en wordt ontwikkeld op basis van de IEEEn POSIX-norm . De FHS wordt onderhouden door The Linux Foundation . Inleiding Hoe de ' schijfinhoud ' , de inhoud van een computer-systeem te zien is voor de gebruiker , is voor " MS-DOS-systemen " en " Unixachtige systemen " zeer verschillend . Op een Windows computer ziet men stationsletters ( drive letters ) , C:\ , D: \ enzovoorts met daarachter padnamen ( path names ) zoals C: \WINDOWS \SYSTEM32 \ eindigend op de naam van een bestand , bijvoorbeeld NOTEPAD.EXE . Als een schijfeenheid zoals een harde schijf of USB-stick wordt toegevoegd , verschijnt een nieuwe stationsletter . Op een ' Linux-achtig ' systeem is een vaststaand systeem te zien . De top van de ' boom ' , de tophiërarchie is altijd een schuine streep zonder toevoeging , ongeacht hoeveel schijven binnen de ' boom ' vallen . De vaststaande directory's zijn /bin , /dev, /home , /lib enzovoorts , op alle POSIX-systemen is deze structuur terug te vinden . Deze structuur dient praktische doelen , elke directory heeft een functie . De vastgelegde afspraken over deze voorstelling van directory's en bestanden is waar FHS over gaat . Geschiedenis De Filesystem Hierarchy Standard is ontwikkeld op initiatief van de Filesystem Hierarchy Standard Group . Voordat de eerste versies van de Filesystem Hierarchy Standard opgesteld werden , bestonden al een aantal conventies over de indeling van Unix-bestandssystemen . Voor de komst van package managers werd de installatie en het beheer van software op Unix-platforms vaak handmatig en op ad-hocbasis uitgevoerd . Opfebruariwerd FSSTND v1.0 gepubliceerd , waarna in ruim een jaar de1 en2 versies volgden . Opoktoberwerd de FHS v2.0 gepubliceerd . Opdecember werd FHS v2.1 gepubliceerd , ruim een half jaar later gevolgd door de2-versie . Opjanuari werd de FHS v2.3 gepubliceerd . Opjuniwerd de FHS v3.0 gepubliceerd . Eigenschappen van bestanden De bestanden in het bestandssysteem worden afhankelijk van hun functie en eigenschappen binnen een overzichtelijk systeem ingedeeld . In de tabellen worden een paar eigenschappen van de directory's en bestanden met een kleurcode aangegeven . Statisch vs. variabel Essentieel vs. optioneel Bestanden delen In de Filesystem Hierarchy Standard staan alle bestanden en directory's ( mappen ) onder de root directory " / " . Dat is zelfs het geval als de bestanden zich op een andere fysieke locatie bevinden ( een andere computer ) , bijvoorbeeld bij een netwerkbestandssysteem . Bestanden kunnen via netwerken met andere hosts gedeeld worden als ze aan een aantal voorwaarden voldoen . Architectuur-onafhankelijke bestanden zijn meestal deelbaar tussen verschillende hosts terwijl configuratiebestanden over het algemeen niet deelbaar zijn . In onderstaande tabel worden een paar voorbeelden gegeven . Er is geen algemene regel waarmee in alle gevallen een onderscheid gemaakt kan worden tussen deelbare en niet-deelbare bestanden . Soms kan architectuur-afhankelijkheid een beperking zijn . Daardoor kan een bestand deelbaar zijn met een host met dezelfde architectuur terwijl dat bestand niet-deelbaar is met een host met een andere architectuur . Secundaire en tertiaire hiërarchieën Behalve de primaire hiërarchie aan de basis van het bestandssysteem komen in de FHS secundaire en tertiaire hiërarchieën voor . De secundaire en tertiaire hiërarchieën zijn meestal afspiegelingen van de primaire hiërarchie . De secundaire en tertiaire hiërarchieën bevatten bestandssystemen met een speciale functie in relatie tot de bestanden in de primaire hiërarchie . Secundaire en tertiaire hiërarchieën zijn onder andere te vinden in /opt , /usr, /usr/local , /var en /var/opt . Bestandssysteem De onderstaande omschrijvingen gelden voor de FHS-2.3-specificatie die door The Linux Foundation gepubliceerd is . De omschrijvingen in onderstaande tabellen hoeven niet juist te zijn voor andere versies of voor afwijkende implementaties van de FHS. / De slash , / , geeft de rootdirectory van het bestandssysteem op de host aan . /usr De /usr-directory is de op een na grootste directory in het bestandssysteem . De afkorting staat voor " " unix system resources " " en heeft niets te maken met " " user " " . Het is een gedeelde directory voor alle gebruikers op het systeem en het bevat alleen read-only-gegevens . Dat houdt in dat de /usr-directory gedeeld kan worden met verschillende hosts met een FHS-compliant bestandssysteem . Host-specifieke gegevens of veranderlijke gegevens dienen elders opgeslagen te worden . /usr/local Tertiaire hiërarchie voor lokale , niet-deelbare gegevens en bestanden , specifiek voor deze host. /usr/share De tertiaire hiërarchie voor deelbare gegevens en bestanden die toegankelijk zijn voor verschillende hosts op een netwerk. /var /var bevat variabele gegevensbestanden . Dit omvat onder meer spool directory's en logbestanden en tijdelijke bestanden . Sommige delen van /var zijn niet-deelbaar tussen verschillende hosts , zoals /var/log , /var/lock en /var/run . Andere bestanden kunnen wel worden gedeeld , met name de bestanden in /var/mail , /var/cache/man , /var/cache/fonts en /var/spool/news . Zie ook Linuxbestandssysteem Referenties Externe links Website van The Linux Foundation IEEE POSIX-certificatie Open Source Initiative Linux Document Project Bestandssysteem Linux Unix Open standaard