Le plus petit élément qu'utilise FreeBSD pour
retrouver des fichiers est le nom de fichier. Les noms de
fichiers sont sensibles à la casse des caractères,
ce qui signifie que readme.txt
et
README.TXT
sont deux fichiers
séparés. FreeBSD n'utilise pas l'extension
(.txt
) d'un fichier pour déterminer
si ce fichier est un programme, un document ou une autre forme
de donnée.
Les fichiers sont stockés dans des répertoires. Un répertoire peut ne contenir aucun fichier, ou en contenir plusieurs centaines. Un répertoire peut également contenir d'autre répertoires, vous permettant de construire une hiérarchie de répertoires à l'intérieur d'un autre. Cela rend plus simple l'organisation de vos données.
Les fichiers et les répertoires sont
référencés en donnant le nom du fichier ou
du répertoire, suivi par un slash, /
,
suivi par tout nom de répertoire nécessaire. Si
vous avez un répertoire foo
, qui
contient le répertoire bar
, qui
contient le fichier readme.txt
, alors le
nom complet, ou chemin
(“path”) vers le fichier est
foo/bar/readme.txt
.
Les répertoires et les fichiers sont stockés sur un système de fichiers. Chaque système de fichiers contient à son niveau le plus haut un répertoire appelé répertoire racine pour ce système de fichiers. Ce répertoire racine peut alors contenir les autres répertoires.
Jusqu'ici cela est probablement semblable à n'importe
quel autre système d'exploitation que vous avez pu avoir
utilisé. Il y a quelques différences: par
exemple, MS-DOS® utilise \
pour séparer
les noms de fichier et de répertoire, alors que MacOS
utilise :
.
FreeBSD n'utilise pas de lettre pour les lecteurs, ou
d'autres noms de disque dans le chemin. Vous n'écrirez
pas c:/foo/bar/readme.txt
sous
FreeBSD.
Au lieu de cela, un système de fichiers est
désigné comme système de
fichiers racine. La racine du système de
fichiers racine est représentée par un
/
. Tous les autres systèmes de
fichiers sont alors montés sous le
système de fichiers racine. Peu importe le nombre de
disques que vous avez sur votre système FreeBSD, chaque
répertoire apparaît comme faisant partie du
même disque.
Supposez que vous avez trois systèmes de fichiers,
appelés A
, B
, et
C
. Chaque système de fichiers
possède un répertoire racine, qui contient deux
autres répertoires, nommés A1
,
A2
(et respectivement B1
,
B2
et C1
,
C2
).
Appelons A
le système de fichiers
racine. Si vous utilisiez la commande ls
pour visualiser le contenu de ce répertoire, vous verriez
deux sous-répertoires, A1
et
A2
. L'arborescence des répertoires
ressemblera à ceci:
Un système de fichiers doit être monté
dans un répertoire d'un autre système de fichiers.
Supposez maintenant que vous montez le système de
fichiers B
sur le répertoire
A1
. Le répertoire racine de
B
remplace A1
, et les
répertoires de B
par conséquent
apparaissent:
Tout fichier de B1
ou
B2
peut être atteint avec le chemin
/A1/B1
ou /A1/B2
si
nécessaire. Tous les fichiers qui étaient dans
A1
ont été temporairement
cachés. Ils réapparaîtront si
B
est
démonté de A.
Si B
a été monté sur
A2
alors le diagramme sera semblable à
celui-ci:
et les chemins seront /A2/B1
et
respectivement /A2/B2
.
Les systèmes de fichiers peuvent être
montés au sommet d'un autre. En continuant l'exemple
précédent, le système de fichiers
C
pourrait être monté au sommet
du répertoire B1
dans le
système de fichiers B
, menant à
cet arrangement:
Où C
pourrait être
monté directement sur le système de fichiers
A
, sous le répertoire
A1
:
Si vous êtes familier de MS-DOS®, ceci est semblable, bien
que pas identique, à la commande
join
.
Ce n'est normalement pas quelque chose qui doit vous préoccuper. Généralement vous créez des systèmes de fichiers à l'installation de FreeBSD et décidez où les monter, et ensuite ne les modifiez jamais à moins que vous ajoutiez un nouveau disque.
Il est tout à fait possible de n'avoir qu'un seul grand système de fichiers racine, et de ne pas en créer d'autres. Il y a quelques inconvénients à cette approche, et un avantage.
Les différents systèmes de fichiers peuvent avoir différentes options de montage. Par exemple, avec une planification soigneuse, le système de fichiers racine peut être monté en lecture seule, rendant impossible tout effacement par inadvertance ou édition de fichier critique. La séparation des systèmes de fichiers inscriptibles par l'utilisateur permet leur montage en mode nosuid; cette option empêche les bits suid/guid des exécutables stockés sur ce système de fichiers de prendre effet, améliorant peut-être la sécurité.
FreeBSD optimise automatiquement la disposition des fichiers sur un système de fichiers, selon la façon dont est utilisé le système de fichiers. Aussi un système de fichiers contenant beaucoup de petits fichiers qui sont écrits fréquemment aura une optimisation différente à celle d'un système contenant moins, ou de plus gros fichiers. En ayant un seul grand système de fichiers cette optimisation est perdue.
Les systèmes de fichiers de FreeBSD sont très robustes même en cas de coupure secteur. Cependant une coupure secteur à un moment critique pourrait toujours endommager la structure d'un système de fichiers. En répartissant vos données sur des systèmes de fichiers multiples il est plus probable que le système redémarre, vous facilitant la restauration des données à partir de sauvegardes si nécessaire.
Les systèmes de fichiers ont une taille fixe. Si vous créez un système de fichiers à l'installation de FreeBSD et que vous lui donnez une taille spécifique, vous pouvez plus tard vous apercevoir que vous avez besoin d'une partition plus grande. Cela n'est pas facilement faisable sans sauvegardes, recréation du système de fichiers, et enfin restauration des données.
FreeBSD dispose d'une commande, growfs(8), qui permettra d'augmenter la taille d'un système de fichiers au vol, supprimant cette limitation.
Les systèmes de fichiers sont contenus dans des
partitions. Cela n'a pas la même signification que
l'utilisation commune du terme partition (par exemple une
partition
MS-DOS®), en raison de l'héritage Unix de FreeBSD.
Chaque partition est identifiée par une lettre de
a
à h
. Chaque
partition ne contient qu'un seul système de fichiers,
cela signifie que les systèmes de fichiers sont souvent
décrits soit par leur point de montage typique dans la
hiérarchie du système de fichiers, soit par la
lettre de la partition qui les contient.
FreeBSD utilise aussi de l'espace disque pour l'espace de pagination (“swap”). L'espace de pagination fournit à FreeBSD la mémoire virtuelle. Cela permet à votre ordinateur de se comporter comme s'il disposait de beaucoup plus de mémoire qu'il n'en a réellement. Quand FreeBSD vient à manquer de mémoire il déplace certaines données qui ne sont pas actuellement utilisées vers l'espace de pagination, et les rapatrie (en déplaçant quelque chose d'autre) quand il en a besoin.
Quelques partitions sont liées à certaines conventions.
Partition | Convention |
---|---|
a | Contient normalement le système de fichiers racine |
b | Contient normalement l'espace de pagination |
c | Normalement de la même taille que la tranche
(“slice”) contenant les partitions. Cela
permet aux utilitaires devant agir sur
l'intégralité de la tranche (par exemple
un analyseur de blocs défectueux) de travailler
sur la partition c . Vous ne devriez
normalement pas créer de système de
fichiers sur cette partition. |
d | La partition d a eu dans le
passé une signification particulière, ce
n'est plus le cas aujourd'hui, et d
pourra être utilisée comme une partition
classique. |
Chaque partition contenant un système de fichiers est stockée dans ce que FreeBSD appelle une tranche (“slice”). Tranche - “slice” est le terme FreeBSD pour ce qui est communément appelé partition, et encore une fois, cela en raison des fondations Unix de FreeBSD. Les tranches sont numérotées, en partant de 1, jusqu'à 4.
Les numéros de tranche suivent le nom du
périphérique, avec le préfixe
s
, et commencent à 1. Donc
“da0s1” est la première
tranche sur le premier disque SCSI. Il ne peut y avoir que
quatre tranches physiques sur un disque, mais vous pouvez avoir
des tranches logiques dans des tranches physiques d'un type
précis. Ces tranches étendues sont
numérotées à partir de 5, donc
“ad0s5” est la première
tranche étendue sur le premier disque IDE. Elles sont
utilisées par des systèmes de fichiers qui
s'attendent à occuper une tranche entière.
Les tranches, les disques “en mode
dédié”, et les autres disques contiennent
des partitions, qui sont
représentées par des lettres allant de
a
à h
. Cette
lettre est ajoutée au nom de périphérique,
aussi “da0a” est la partition a
sur le premier disque da, qui est en “en mode
dédié”.
“ad1s3e” est la
cinquième partition de la troisième tranche du
second disque IDE.
En conclusion chaque disque présent sur le système est identifié. Le nom d'un disque commence par un code qui indique le type de disque, suivi d'un nombre, indiquant de quel disque il s'agit. Contrairement aux tranches, la numérotation des disques commence à 0. Les codes communs que vous risquez de rencontrer sont énumérés dans le Tableau 3.1, « Codes des périphériques disques ».
Quand vous faites référence à une
partition, FreeBSD exige que vous nommiez également la
tranche et le disque contenant la partition, et quand vous
faites référence à une tranche vous devrez
également faire référence au nom du disque.
On fait donc référence à une partition en écrivant le nom du disque,
s
, le numéro de la tranche, et enfin
la lettre de la partition. Des exemples sont donnés dans
l'Exemple 3.1, « Exemples d'appellation de disques, tranches et
partitions ».
L'Exemple 3.2, « Modèle conceptuel d'un disque » montre un exemple de l'organisation d'un disque qui devrait aider à clarifier les choses.
Afin d'installer FreeBSD vous devez tout d'abord configurer les tranches sur votre disque, ensuite créer les partitions dans la tranche que vous utiliserez pour FreeBSD, et alors créer un système de fichiers (ou espace de pagination) dans chaque partition, et décider de l'endroit où seront montés les systèmes de fichiers.
Code | Signification |
---|---|
ad | Disque ATAPI (IDE) |
da | Disque SCSI |
acd | CDROM ATAPI (IDE) |
cd | CDROM SCSI |
fd | Lecteur de disquette |
Nom | Signification |
---|---|
ad0s1a | Première partition (a )
sur la première tranche (s1 )
du premier disque IDE
(ad0 ). |
da1s2e | Cinquième partition (e )
sur la seconde tranche (s2 ) du
deuxième disque SCSI
(da1 ). |
Ce diagramme montre comment FreeBSD voit le premier disque
IDE attaché au système. Supposons que le disque
a une capacité de 4 Go, et contient deux tranches
de 2 Go (partitions MS-DOS®). La première tranche
contient un disque MS-DOS®, C:
, et la
seconde tranche contient une installation de FreeBSD. Dans
cet exemple l'installation de FreeBSD a trois partitions de données, et
une partition de pagination.
Les trois partitions accueilleront chacune un
système de fichiers. La partition a
sera utilisée en tant que système de fichiers
racine, la partition e
pour le contenu du
répertoire /var
, et
f
pour l'arborescence du répertoire
/usr
.
Ce document, ainsi que d'autres peut être téléchargé sur ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Pour toutes questions à propos de FreeBSD, lisez la
documentation avant de contacter
<questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez
<doc@FreeBSD.org>.