  Linux Partition Mini-HOWTO
  Kristan Koehntopp, kris@koehntopp.de Guillaume Bertucat,
  guillaume@ibpc.fr.
  Partition mini-HOWTO v 2.4, le 03 mars 1998

  Ce Mini-HOWTO de Linux dcrit comment prvoir et organiser l'espace
  disque de votre systme Linux. Il traite des aspects matriels des
  disques, des partitions, de la taille et du positionnement des zones
  de swap, des systmes de fichiers, des types de systmes de fichiers
  ainsi que de thmes apparents.  L'objectif est de donner quelques
  notions fondamentales, pas les modes opratoires.
  ______________________________________________________________________

  Table des matires


  1. Introduction

     1.1 De quoi s'agit-il?
     1.2 De quoi ne s'agit-il pas (et HOWTO apparents) ?

  2. Qu'est-ce qu'une partition ?

     2.1 Les sauvegardes sont importantes
     2.2 Noms et numros des priphriques

  3. De quelles partitions ai-je besoin ?

     3.1 De combien de partitions ai-je besoin ?
     3.2 Quelle taille attribuer  ma zone swap ?
     3.3 O positionner ma zone swap ?
     3.4 Quelques bricoles au sujet des systmes de fichiers et de la fragmentation
     3.5 Dure de vie des fichiers et cycles de sauvegarde sont des critres dans le choix des partitions

  4. Un exemple

     4.1 Un modle  suivre pour dbutant ambitieux

  5. Comment je m'y suis pris personnellement



  ______________________________________________________________________

  11..  IInnttrroodduuccttiioonn

  11..11..  DDee qquuooii ss''aaggiitt--iill??


  Ceci est un Mini-HOWTO de Linux. Un Mini HOWTO est un court texte qui
  fait le point sur des questions relatives  l'installation et  la
  maintenance de Linux.  C'est Mini, parce que tant le texte que le
  thme trait sont trop "petits" pour justifier un vrai HOWTO ou un
  livre. Un HOWTO ne constitue pas une rfrence : les pages "man" sont
  l pour a.


  11..22..  DDee qquuooii nnee ss''aaggiitt--iill ppaass ((eett HHOOWWTTOO aappppaarreennttss)) ??


  Ce Mini-HOWTO de Linux explique comment prvoir et organiser l'espace
  disque de votre systme Linux. Il traite des aspects matriels des
  disques, des partitions, de la taille et du positionnement des zones
  de swap, des systmes de fichiers, des types de systmes de fichiers
  ainsi que de thmes apparents.  L'objectif est de donner quelques
  notions fondamentales, aussi nous parlerons essentiellement de
  principes et non pas d'outils dans ce texte.

  Dans des circonstances idales, ce document devrait tre lu avant
  votre premire installation, mais c'est sans doute peu raliste dans
  la  plupart des cas. Les dbutants ont gnralement d'autres problmes
  que d'optimiser l'organisation de leur disque. Par consquent, vous
  tes probablement quelqu'un qui vient juste de finir l'installation de
  Linux, et qui maintenant se demande comment optimiser cette
  installation, ou comment viter quelques dplaisantes erreurs de
  calculs pour la prochaine fois. Bien sr, j'espre que lorsqu'ils en
  auront fini avec ce document, certains voudront laisser tomber leur
  ancienne configuration pour une nouvelle installation. :-)

  Ce document se limite pour l'essentiel  la prvision et
  l'organisation de l'espace disque. Il ne dcrit pas l'utilisation de
  fdisk, LILO, mke2fs ou des programmes de sauvegarde. Il y a d'autres
  HOWTO qui traitent de ces problmes. Reportez-vous  la Liste-des-
  HOWTO de Linux pour obtenir les informations relatives aux diffrents
  HOWTOs de Linux. La liste contient galement les informations
  ncessaires pour obtenir les documents eux-mmes.

  Pour apprendre  estimer les besoins en taille et en vitesse pour les
  diffrentes parties du systme de fichiers, reportez-vous au "Linux
  Multiple Disks Layout mini-HOWTO", de Gjoen Stein <gjoen@nyx.net>.

  Pour obtenir des informations et des instructions concernant les
  disques de plus de 1024 cylindres, reportez-vous au "Linux Large Disk
  Mini-HOWTO", de Andries Brouwer <aeb@cwi.nl>.

  Pour obtenir des instructions sur la manire de limiter l'espace
  disque allou  chaque utilisateur, reportez-vous au "Linux Quota
  Mini-HOWTO", de Albert M.C.  Tam <bertie@scn.org>

  Actuellement il n'y a pas de documentation gnrale sur la sauvegarde
  des disques, mais il existe un certain nombre de documents qui font le
  point sur des solutions spcifiques de sauvegarde. Reportez-vous au
  "Linux ADSM Backup Mini-HOWTO" de Thomas Koenig
  <Thomas.Koenig@ciw.uni-karlsruhe.de> pour obtenir des renseignements
  sur la manire d'intgrer Linux dans un environnement de sauvegarde
  IBM ADSM. Reportez-vous au "Linux Backup with MSDOS Mini-HOWTO" de
  Christopher Neufeld <neufeld@physics.utoronto.ca> pour obtenir des
  informations sur les sauvegardes Linux pilots par MSDOS.

  Pour obtenir des instructions sur la manire d'crire et de soumettre
  un HOWTO, reportez-vous  la "Liste-des-HOWTO" de Linux de ric Dumas
  <dumas@Linux.EU.Org>.

  Butiner dans /usr/src/linux/Documentation peut aussi se rvler trs
  instructif.  Les fichiers ide.txt et scsi.txt fournissent quelques
  informations fondamentales sur les proprits de vos pilotes disque,
  et jeter un coup d'oeil  l'arborescence de votre systme de fichiers
  ne peut pas faire de mal.


  22..  QQuu''eesstt--ccee qquu''uunnee ppaarrttiittiioonn ??


  Lorsque les disques durs pour PC ont t mis au point, on a rapidement
  cherch  avoir la possibilit d'installer plusieurs systmes
  d'exploitation, mme si on ne disposait que d'un seul disque. Par
  consquent, il fallait un procd permettant de diviser un seul disque
  physique en plusieurs disques logiques. Une partition, c'est justement
  cela : une section contigu de blocs sur le disque dur, considre
  comme un disque totalement indpendant par la plupart des systmes
  d'exploitation.

  Il est bien vident que les diffrentes partitions ne doivent pas se
  recouvrir : un systme d'exploitation n'apprciera certainement pas
  qu'un autre OS install sur la mme machine crase des donnes
  importantes  cause d'un tel recouvrement. D'autre part, il ne devrait
  pas non plus y avoir de "trou" entre deux partitions adjacentes. Bien
  que ce ne soit pas nuisible en soi, vous gcheriez une place prcieuse
  en laissant vides de tels espaces.

  Il n'est pas indispensable que le disque soit entirement partitionn.
  Vous pouvez dcider de laisser de la place  la fin du disque qui ne
  soit attribue  aucun de vos systmes d'exploitation. Par la suite,
  lorsque vous saurez quel systme vous utilisez le plus souvent, vous
  pourrez partitionner l'espace restant, et crer dessus un systme de
  fichier appropri.

  Les partitions ne peuvent tre ni dplaces, ni redimensionnes sans
  dtruire le systme de fichiers qui s'y trouve. C'est pourquoi
  modifier la table de partition implique gnralement de sauvegarder
  puis de restaurer tous les systmes de fichiers touchs par cette
  opration. En fait il est assez facile de faire des dgts
  irrparables en repartitionnant, et vous devriez faire une sauvegarde
  intgrale de tous les disques de la machine en question avant mme de
  penser  utiliser un utilitaire comme fdisk.

  Bon,  vrai dire, certaines partitions contenant certains types de
  systme de fichiers _p_e_u_v_e_n_t tre coupes en deux sans perte de donnes
  (si vous avez de la chance). Par exemple, il y a un utilitaire appel
  fips pour couper en deux les partitions MS-DOS, ce qui permet de crer
  un espace pour installer Linux sans avoir  rinstaller MS-DOS. Mais
  vous n'avez pas vraiment l'intention de jouer avec a sans sauvegarder
  soigneusement tout ce qui ce trouve sur votre machine ?


  22..11..  LLeess ssaauuvveeggaarrddeess ssoonntt iimmppoorrttaanntteess


  Pour les sauvegardes, les lecteurs de bandes sont vos amis. Ils sont
  rapides fiables et faciles  utiliser, ce qui permet de faire de
  frquentes sauvegardes, de prfrence automatiquement, et sans
  s'embter.

  Je tiens particulirement  insister sur les points suivants : je
  parle de vrais lecteurs de bandes, pas de cette daube de ftape pilote
  par le contrleur du disque. Envisagez d'investir dans le SCSI : Linux
  supporte le SCSI de faon native. Vous n'aurez pas besoin de
  tlcharger des pilotes ASPI. Vous ne perdrez pas non plus de
  prcieuses HMA sous Linux ds que vous aurez install votre contrleur
  SCSI, vous n'aurez plus qu' y ajouter vos disques durs, lecteur de
  bandes et lecteurs CDROM. Pas d'autres adresses I/O, plus besoin de
  jongler avec les IRQ, ni de s'inquiter des compatibilits
  matre/esclave ou des niveaux PIO.  En outre, un contrleur SCSI
  appropri vous donne de hautes performances I/O sans augmenter
  notablement la charge du CPU. Mme en cas de grande activit du
  disque, vous pourrez constater de bons temps de rponse. Si vous
  envisagez d'utiliser un systme Linux comme un centre de distribution
  de news, ou si vous vous apprtez  vous lancer dans le domaine des
  services d'accs  Internet, ne pensez mme pas  un systme sans
  SCSI.


  22..22..  NNoommss eett nnuummrrooss ddeess pprriipphhrriiqquueess


  Le nombre de partitions sur un systme  base d'Intel  t limit
  depuis le commencement : la table de partitions originale faisait
  partie intgrante du secteur d'amorage, et la place prvue nous
  limitait  quatre partitions. Ces partitions sont maintenant appeles
  partitions primaires.  Lorsqu'il est devenu vident que beaucoup
  avaient besoin de plus de quatre partitions sur leurs systmes, les
  partitions logiques ont t cres. Le nombre de partitions logiques
  n'est pas limit : chaque partition logique contient un pointeur sur
  la suivante, et par consquent, vous disposez potentiellement d'une
  liste non limite de partitions.

  Pour des raisons de compatibilit, l'espace occup par les partitions
  logiques doit tre comptabilis. Si vous utilisez les partitions
  logiques, une des partitions primaires est donc note "partition
  tendue" ; son bloc initial et son bloc final dlimitent l'espace
  occup par les partitions logiques. Ceci signifie que l'espace
  attribu pour toutes les partitions logiques doit tre contigu. Il ne
  peut y avoir qu'une seule partition tendue : aucun fdisk n'acceptera
  de crer plus d'une partition tendue.

  Linux ne peut prendre en charge qu'un nombre limit de partitions par
  disque.  Ainsi avec Linux, vous disposez de 4 partitions primaires
  (dont 3 utilisables si vous utilisez les partitions logiques) et au
  mieux 15 partitions en tout sur un disque SCSI (63 en tout sur un
  disque IDE).

  Sous Linux, les partitions sont identifies par des fichiers
  priphriques. Un fichier priphrique est un fichier de type c (pour
  priphrique "caractre", les priphriques qui ne font pas usage de
  la cache tampon) ou b (pour priphrique "bloc", qui font usage de la
  cache tampon). Sous Linux, tous les disques sont reprsents sous la
  forme de priphriques blocs uniquement.  Contrairement  d'autres
  Unix, Linux ne propose pas de version strictement caractre des
  disques et de leurs partitions.

  Les seules choses importantes  retenir d'un fichier priphrique sont
  ses numros de priphrique, majeur et mineur, affichs  la place de
  la taille du fichier :



       ______________________________________________________________________
       $ ls -l /dev/hda
       brw-rw----   1 root     disk       3,   0 Jul 18  1994 /dev/hda
                                          ^    ^
                                          |    numro priphrique mineur
                                          numro priphrique majeur
       ______________________________________________________________________




  Lorsqu'on accde au fichier priphrique, le numro majeur dtermine
  quel pilote priphrique va tre appel pour raliser l'opration
  d'entre/sortie. Cet appel est fait en prenant comme paramtre le
  numro mineur, et c'est l'affaire du pilote d'interprter correctement
  ce numro mineur. La documentation du pilote dcrit gnralement la
  manire dont il interprte ces numros mineurs. Pour les disques IDE,
  cette documentation se trouve dans
  /usr/src/linux/Documentation/ide.txt. Pour les disques SCSI, on
  s'attendrait  trouver la documentation dans
  /usr/src/linux/Documentation/scsi.txt, mais elle ne s'y trouve pas. Il
  peut tre ncessaire de consulter la source du pilote pour tre sr
  (/usr/src/linux/driver/scsi/sd.c:184-196). Heureusement, il y a la
  liste des noms et numros de priphriques de Peter Anvin dans
  /usr/src/linux/Documentation/devices.txt; reportez vous dans cette
  liste  block devices, major 3, 22, 33, 34 pour les disques IDE, et
  major 8 pour les disques SCSI. Les numros majeurs et mineurs sont
  cods chacuns sur un bit, ce qui explique pourquoi le nombre de
  partition par disque est limit.

  Par convention, les fichiers priphriques ont un nom dfini, et la
  plupart des utilitaires systme sont compils en ayant connaissance de
  ces noms. Ils s'attendent  ce que vos disques IDE s'appellent
  /dev/hd* et vos disques SCSI /dev/sd*. Les disques sont numrots a,
  b, c et ainsi de suite, donc /dev/hda est votre premier disque IDE, et
  /dev/sda votre premier disque SCSI. Chaque priphrique reprsente un
  disque  part entire dmarrant au bloc un. crire sur un de ces
  priphriques avec les mauvais utilitaires dtruira l'enregistrement
  principal d'initialisation (MBR) et la table de partition, ce qui
  rendra toutes les donnes de ce disque inutilisables, et le systme ne
  pourra plus dmarrer sur ce disque. Donc soyez srs de ce que vous
  faites, et encore une fois, sauvegardez avant de faire quoi que ce
  soit.

  Les partitions primaires sur le disques sont numrotes 1, 2, 3 et 4.
  Par consquent, /dev/hda1 est la premire partition primaire du
  premier disque IDE, et ainsi de suite. Les partitions logiques se
  voient attribuer les numros 5 et suivants; /dev/sdb5 est donc la
  premire partition logique du second disque SCSI.

  Chaque partition se voit attribuer deux adresses pour les blocs
  initial et final, ainsi qu'un type. Le type est un code numrique (un
  bit) qui dfinit une partition pour un systme d'exploitation donn.
  Pour la plus grande joie des experts, il n'existe pas vraiment de code
  unique dfinissant les diffrents types de partition, aussi il y a
  toujours une possibilit que deux systmes d'exploitation utilisent le
  mme code pour des partitions de type diffrent.

  Linux rserve les codes 0x82 pour les partitions swap, et 0x83 pour
  les systmes de fichier "natif" (c'est  dire ext2 pour la plupart
  d'entre vous). Autrefois populaire et maintenant prim, le systme de
  fichiers Linux/Minix utilisait le code 0x81 pour ses partitions. OS/2
  marque ses partitions du type 0x07, tout comme les NTFS de Windows NT.
  MS-DOS attribue plusieurs codes pour les diffrentes FAT de ses
  systmes de fichier : on connat 0x01, 0x04 et 0x06.  DR-DOS utilisait
  0x81 pour indiquer une partition FAT protge, ce qui gnrait un
  conflit avec les partitions Linux/Minix, mais ni l'une ni l'autre ne
  sont trs utilises maintenant. La partition tendue qui sert de
  container pour les partitions logiques  le code 0x05.

  Les partitions sont cres et supprimes avec l'utilitaire fdisk. Tout
  systme d'exploitation qui se respecte possde un fdisk, qui
  d'ailleurs est traditionnellement appel fdisk (ou FDISK.EXE) dans
  quasiment tous les OS. Certains fdisk, dont celui du DOS, sont quelque
  peu limits pour grer les partitions d'autres systmes
  d'exploitation. Parmi ces limites, l'impossibilit de prendre en
  compte tout ce qui est identifi par un code de type tranger,
  l'impossibilit de prendre en compte plus de 1024 cylindres, et
  l'impossibilit de crer ou mme de reconnatre une partition dont la
  fin ne concide pas avec la borne d'un cylindre. Par exemple, le fdisk
  de MS-DOS ne peut pas supprimer les partitions NTFS, le fdisk de OS/2
  tait rput pour "corriger" silencieusement les partition cres par
  le fdisk de Linux dont la fin ne concidait pas avec une borne de
  cylindre, et tant le fdisk de MS-DOS que celui de OS/2 ont eu des
  problmes avec les disques de plus de 1024 cylindres (reportez-vous au
  "large-disk Mini-HOWTO" pour de plus amples dtails sur ces disques).


  33..  DDee qquueelllleess ppaarrttiittiioonnss aaii--jjee bbeessooiinn ??

  33..11..  DDee ccoommbbiieenn ddee ppaarrttiittiioonnss aaii--jjee bbeessooiinn ??



  Donc, de quelles partitions ai-je besoin ? Pour commencer, certains
  systmes d'exploitation ne croient pas au dmarrage  partir de
  partitions logiques pour des raisons qui sont  la porte de tout
  esprit sain. De ce fait, vous voudrez certainement rserver vos
  partitions primaires comme partitions d'amorage pour MS-DOS, OS/2 et
  Linux ou pour quelque autre systme que vous utilisiez.  Rappelez-vous
  toutefois qu'une partition primaire est ncessaire pour crer la
  partition tendue qui servira de container pour les partitions
  logiques qui occuperont le reste de votre disque.

  L'amorage des systmes d'exploitation se passe en mode rel et
  implique toutes les limitations lies au BIOS, et surtout celle des
  1024 cylindres. Vous voudrez donc probablement placer toutes vos
  partitions de dmarrage dans les 1024 premiers cylindres de votre
  disque dur, afin d'viter des complications. A nouveau, je vous invite
   lire le "large-disk Mini-HOWTO" pour les dtails saignants.

  Pour installer Linux, vous aurez besoin d'au moins une partition. Si
  le noyau est charg depuis cette partition (par exemple grce  LILO),
  cette partition doit tre lisible du BIOS. Si vous chargez votre noyau
  par d'autres moyens (par exemple depuis une disquette d'amorage ou
  avec LOADLIN.EXE, le lanceur de Linux depuis MS-DOS), cette partition
  peut tre n'importe o. Dans tous les cas, le type de cette partition
  sera "Linux native", code 0x83.

  Votre systme aura besoin d'espace swap. A moins de swaper sur des
  fichiers, il vous faudra une partition swap ddie. Du fait que ce
  type de partition n'est accessible que par le noyau de Linux, et que
  ce noyau n'est pas affect par les dficiences du BIOS de votre PC, la
  partition swap peut tre installe n'importe o. Je recommande
  d'utiliser pour cela une partition logique (/dev/?d?5 ou une des
  suivantes). Les partitions swap ddies de Linux sont de type "Linux
  swap", code 0x82.

  Ces exigences sont le minimum en terme de partitions. Il peut
  toutefois se rvler utile de crer plus de partitions pour Linux,
  comme la suite le montrera.



  33..22..  QQuueellllee ttaaiillllee aattttrriibbuueerr  mmaa zzoonnee sswwaapp ??


  Si vous avez dcid d'utiliser une partition ddie  la zone swap, ce
  qui est une Bonne Ide [tm], considrez les indications suivantes pour
  estimer sa taille :


    Sous Linux, la taille de la RAM et celle de la zone swap
     s'additionnent (ce qui n'est pas vrai pour tous les Unix). Par
     exemple, si vous avez 8 Mo de RAM et 12 Mo de swap, vous disposez
     d'un total d'environ 20 Mo de mmoire virtuelle.

    En choisissant la taille de votre zone swap, gardez prsent 
     l'esprit que vous devriez disposer d'au moins 16 Mo de mmoire
     virtuelle. Ainsi pour 4 Mo de RAM envisagez un minimum de 12 Mo de
     swap ; pour 8 Mo de RAM, envisagez un minimum de 8 Mo de swap.

     Sous Linux, une partition swap ne peut pas excder 128 Mo. En
     ralit, sa taille pourrait dpasser 128 Mo, mais l'espace en excs
     ne serait jamais utilis. Si vous voulez plus de 128 Mo de swap,
     vous devez crer plusieurs partitions swap.

     En choisissant la taille de votre zone swap, rappelez vous qu'une
     zone swap trop grande ne sera pas vraiment utile.

     Tout processus possde un "jeu d'instructions" qui correspond  un
     ensemble de pages mmoire, et auquel le processeur accdera 
     nouveau dans un temps trs court. Linux essaie de prvoir ces accs
     mmoire (en partant du principe que les pages rcemment utilises
     le seront  nouveau dans un futur proche) et conserve ces pages
     dans la RAM si c'est possible. Si le programme respecte strictement
     le principe de localit, cette hypothse sera vrifie, et
     l'algorithme de prdiction fonctionnera.

     Conserver en mmoire une zone de travail n'a de signification que
     s'il y a suffisamment de mmoire. Si trop de processus s'excutent
     en mme temps sur une mme machine, le noyau est alors dans
     l'obligation de paginer des donnes auxquelles il devra accder de
     nouveau trs rapidement (il faudra donc paginer sur disque des
     donnes provenant d'une autre zone de travail pour pouvoir les
     appeler en mmoire). Ceci induit gnralement une augmentation
     critique de l'activit de pagination, et donc une substantielle
     baisse de performances. On dit d'une machine dans cette situation
     qu'elle "rame".

     Sur une machine qui rame, les processus tournent essentiellement
     sur disque, et non dans la RAM. On peut donc s'attendre  une chute
     de performances de l'ordre de grandeur du rapport entre le temps
     d'accs mmoire et le temps d'accs disque.

     Mon petit doigt m'a parl d'une trs vieille rgle datant de
     l'poque du PDP et du Vax, et qui est la suivante : la taille du
     jeu d'instructions d'un programme est gale  environ 25 % de sa
     taille virtuelle. Ainsi, il est sans doute inutile de prvoir plus
     de swap que trois fois la taille de votre RAM.

     Mais rappelez-vous que c'est seulement mon petit doigt qui me l'a
     dit. On peut facilement imaginer des cas ou les programmes ont un
     trs grand, ou au contraire un trs petit jeu d'instructions. Par
     exemple, un programme de simulation avec un trs grand jeu de
     donnes auxquelles il accde de manire quasi alatoire ne
     respectera pas vraiment le principe de localit dans son segment de
     donnes, et donc son jeu d'instructions sera relativement
     important.

     D'un autre ct, xv avec de nombreux JPEGs ouverts simultanment,
     mais tous iconifis sauf un, aura un trs gros segment de donnes.
     Mais les oprations ne sont faites que sur une seule image  la
     fois, et donc la plus grande partie de la mmoire utilise par xv
     n'est jamais accde. C'est galement vrai dans le cas d'un diteur
     multi-fentres o seule une page  la fois est active. Ces
     programmes - s'ils sont conus correctement - respectent
     rigoureusement le principe de localit, et la plus grande partie de
     la place qu'ils occupent peut rester dans la swap sans qu'on
     observe de diminution substantielle des performances.

     On peut suspecter que ce chiffre de 25 % datant de l'poque de la
     ligne de commande n'est plus vrai pour les logiciels modernes dots
     d'une IHM graphique et capables d'diter simultanment plusieurs
     documents, mais je n'ai connaissance d'aucune donne rcente
     permettant d'actualiser ces chiffres.

  En rsum, si on dispose de 16 Mo de RAM, un configuration minimale
  peut se passer de swap, et attribuer plus de 48 Mo  la swap est sans
  doute inutile.  L'appoint exact de mmoire requise dpend des
  applications qui tournent sur la machine (qu'est-ce que vous vous
  tiez imagin ?).




  33..33..  OO ppoossiittiioonnnneerr mmaa zzoonnee sswwaapp ??



     Les mouvements mcaniques sont lents, et les mouvements
     lectroniques rapides.

     Les disques rcents on plusieurs ttes de lecture. Permuter entre
     les ttes qui se trouvent sur la mme piste est rapide, puisque
     c'est purement lectronique.  Par contre changer de piste est lent,
     puisque a implique un mouvement des ttes.

     Par consquent si vous avez un disque avec plusieurs ttes de
     lecture et un autre qui en a moins, les autres paramtres tant
     identiques, le disque qui a le plus de ttes de lectures sera le
     plus rapide.

     Dcouper la zone swap en la rpartissant sur les disques acclrera
     aussi la vitesse d'accs.

     Les anciens disques ont le mme nombre de secteurs sur toutes les
     pistes.  Avec ce type de disque, la vitesse maximum est
     gnralement obtenue en plaant la zone swap au milieu du disque,
     si on part du principe que la tte de lecture devra se dplacer
     d'une piste quelconque vers l'emplacement physique de la zone swap.

     Les disques plus rcents utilisent le ZBR (bit d'enregistrement de
     zone).  Les pistes externes contiennent un plus grand nombre de
     secteurs. Pour une vitesse de rotation constante, on obtient donc
     un bien meilleur rendement pour les pistes externes que pour les
     pistes internes. Placer de prfrence votre zone swap sur les
     pistes les plus rapides.

     Mais bien sr, la tte de lecture n'est pas anime de mouvement
     alatoires. Si le milieu du disque tombe entre une partition /home
     en accs constant et une partition d'archivage presque jamais
     utilise, vous feriez mieux de placer votre zone swap au milieu de
     la partition /home, pour limiter l'amplitude de mouvement des ttes
     de lecture. Le mieux, dans ce cas, serait mme de placer votre zone
     swap sur un autre disque, moins activement utilis.

  EEnn rrssuumm :: Placez votre zone swap sur un disque rapide quip de
  plusieurs ttes de lecture et qui n'est pas trop accapar par d'autres
  tches. Si vous avez plusieurs disques, rpartissez la zone swap sur
  tous ces disques, mme si leurs contrleurs sont diffrents.

  EEnnccoorree mmiieeuuxx :: Achetez plus de RAM.


  33..44..  QQuueellqquueess bbrriiccoolleess aauu ssuujjeett ddeess ssyyssttmmeess ddee ffiicchhiieerrss eett ddee llaa
  ffrraaggmmeennttaattiioonn


  L'espace disque est administr par le systme d'exploitation en units
  de blocs et fragments de blocs. En ext2, fragments et blocs doivent
  tre de la mme taille, aussi nous limiterons la discussion aux blocs.

  Les fichiers ont des tailles trs variables qui ne concident pas
  ncessairement avec la fin d'un bloc. Par consquent, pour chaque
  fichier, un partie du dernier bloc est gaspille. Supposons que la
  taille des fichiers soit alatoire, il y a en moyenne un demi-bloc
  perdu pour chaque fichier prsent sur le disque. Dans son livre
  "Operating systems", Tanenbaum appelle a la "fragmentation interne".

  On peut dduire le nombre de fichiers prsents sur le disque  partir
  du nombre d'inodes allous. Par exemple sur mon disque :
       ______________________________________________________________________
       # df -i
       Filesystem           Inodes   IUsed   IFree  %IUsed Mounted on
       /dev/hda3              64256   12234   52022    19%  /
       /dev/hda5              96000   43058   52942    45%  /var
       ______________________________________________________________________




  Il y a donc environ 12000 fichiers sur / et prs de 44000 sur /var.
  Pour des blocs d'une taille de 1 Ko,  peu prs 6+22 = 28 Mo d'espace
  disque sont perdus dans les derniers blocs des fichiers. Si j'avais
  choisi des blocs d'une taille de 4 Ko, j'aurais perdu 4 fois plus de
  place.


  Les transferts de donnes sont plus rapides avec de grands tronons
  contigus de donnes. C'est pourquoi l'ext2 s'efforce de pr-allouer
  l'espace en units de 8 blocs contigus pour les fichiers en cours
  d'criture. L'espace pr-allou non utilis est libr lors de la
  fermeture du fichier, ainsi il n'y a pas de gaspillage.

  Un rangement non contigu des blocs dans un fichier est prjudiciable
  pour les performances, du fait qu'on accde gnralement aux fichiers
  de manire squentielle. Cela oblige le systme d'exploitation 
  dcouper les accs disque et le disque  dplacer la tte de lecture.
  On appelle cela la "fragmentation externe", ou simplement la
  "fragmentation", qui est un problme courant avec les systmes de
  fichiers de type DOS.

  ext2 utilise plusieurs stratgies afin d'viter la fragmentation
  externe.  Normalement la fragmentation n'est pas un gros problme en
  ext2, mme avec des partitions trs utilises, comme une file
  d'attente news. Bien qu'il existe un utilitaire de dfragmentation des
  systmes de fichier ext2, personne ne l'utilise et il n'est pas  jour
  avec la dernire version de ext2. Utilisez le si vous y tenez, mais 
  vos risques et prils.

  Le systme de fichiers MS-DOS est rput pour sa gestion pathologique
  de l'espace disque. La conjugaison d'un cache tampon abyssal et de la
  fragmentation a des consquences tout  fait dommageables sur les
  performances. Les utilisateurs de DOS sont habitus  dfragmenter
  leurs disques toutes les quelques semaines et certains ont mme mis au
  point un rituel quasi religieux concernant la dfragmentation. Aucune
  de ces habitudes ne devrait tre transpose sous Linux et ext2. Le
  systme de fichiers natif de Linux n'a pas besoin de dfragmentation
  en utilisation normale, ce qui inclut n'importe quelle condition du
  moment que 5 % de l'espace disque reste libre.

  Le systme de fichiers MS-DOS est aussi rput pour perdre une grande
  quantit d'espace disque en raison de la fragmentation interne. Pour
  des partitions d'une taille suprieure  256 Mo, la taille des blocs
  DOS devient si importante qu'ils ne sont plus d'aucune utilit (cela a
  t corrig jusqu' un certain point avec la FAT32).

  ext2 ne force pas l'utilisation de grands blocs dans le cas de grand
  systmes de fichiers,  l'exception des trs grands systmes de
  fichier de l'ordre de 0.5 To (1 Tera-octet = 1024 Go) et plus, pour
  lesquels les blocs de petite taille deviennent inefficaces. Donc,
  contrairement au DOS, il n'est pas ncessaire de dcouper les grands
  disques en plusieurs partitions pour conserver des blocs de petite
  taille. Dans la mesure du possible, utilisez la taille par dfaut de 1
  Ko.  Vous voudrez peut tre exprimenter des blocs de 2 Ko pour
  certaines partitions, mais attendez vous  rencontrer quelques bugs
  peu courants : presque tout le monde utilise la taille par dfaut.
  33..55..  llee cchhooiixx ddeess ppaarrttiittiioonnss DDuurree ddee vviiee ddeess ffiicchhiieerrss eett ccyycclleess ddee
  ssaauuvveeggaarrddee ssoonntt ddeess ccrriittrreess ddaannss


  Sous ext2, les dcisions concernant le choix des partitions devraient
  tre diriges par des considrations lies aux sauvegardes, et de
  manire  viter la fragmentation externe due aux dures de vie des
  diffrents fichiers.

  Les fichiers ont une dure de vie. Une fois cr, un fichier restera
  un certain temps sur le systme avant d'tre supprim. La dure de vie
  des fichiers varie considrablement au sein du systme, et dpend en
  partie du chemin d'accs du fichier. Par exemple, les fichiers
  prsents dans /bin, /sbin, /usr/sbin, /usr/bin ou quelqu'autre
  rpertoire du mme type ont une dure de vie trs longue : de nombreux
  mois, voire plus. Les fichiers prsents dans /home ont une dure de
  vie intermdiaire :  peu prs quelques semaines. Les fichiers
  prsents dans /var ont gnralement une dure de vie courte :
  quasiment aucun fichier dans /var/spool/news ne restera plus de
  quelques jours, et dans /var/spool/lpd le temps de vie se mesure en
  minutes voire moins.

  Pour sauvegarder, il peut tre utile de s'assurer que la taille d'une
  sauvegarde journalire reste infrieure  la taille du support de
  sauvegarde. Une sauvegarde journalire peut tre complte ou
  diffrentielle.

  Vous pouvez dcider de conserver des tailles de partitions
  suffisamment petites pour tenir compltement sur un seul support de
  sauvegarde (auquel cas, faites des sauvegardes journalires
  compltes). Dans tous les cas, la taille d'une partition devrait tre
  telle que son "delta" journalier (tous les fichiers modifis) puisse
  tenir sur un seul support de sauvegarde (faites une sauvegarde
  diffrentielle, et prvoyez de changer le support pour la sauvegarde
  hebdomadaire/mensuelle complte).

  Votre stratgie de sauvegarde repose sur ces dcisions.

  Lorsque vous achetez et organisez de l'espace disque, pensez  mettre
  de cot une somme suffisante pour les sauvegardes affrentes ! Des
  donnes non sauvegardes sont sans valeur ! Le cot de reproduction
  des donnes est de loin plus lev que celui de la sauvegarde, pour
  qui que ce soit !

  Pour des raisons de performances, il est utile de conserver des
  fichiers ayant des dures de vie diffrentes sur des partitions
  diffrentes. De cette manire, les fichiers phmres de la partition
  .../news peuvent tre trs lourdement fragments. Cela n'aura aucune
  incidence sur les performances des partitions / ou /home.


  44..  UUnn eexxeemmppllee

  44..11..  UUnn mmooddllee  ssuuiivvrree ppoouurr ddbbuuttaanntt aammbbiittiieeuuxx


  Un modle courant propose la cration des partitions /, /home et /var
  pour des raisons abordes plus haut. Cela simplifie tant
  l'installation que la maintenance, et la diffrenciation est
  suffisante pour viter les effets pervers des dures de vie
  diffrentes. C'est aussi un bon modle en ce qui concerne la
  sauvegarde : personne ne se soucie de sauvegarder les files d'attente
  "news" et seulement quelques fichiers de /var peuvent tre utilement
  sauvegards (comme /var/spool/mail). D'un autre cot, / change trs
  peu souvent et peut n'tre sauvegard que ponctuellement (aprs un
  changement de configuration), et sa taille relativement faible permet,
  pour la plupart des supports modernes, de faire une sauvegarde
  complte (prvoyez de 250  500 Mo en fonctions des logiciels
  installs). /home contient les prcieuses donnes des utilisateurs et
  devrait tre sauvegard chaque jour.  Certaines configurations
  prsentent un /home trs important et doivent par consquent faire
  appel au sauvegardes diffrentielles.

  Certains systmes prvoient une partition spare pour /tmp, d'autres
  crent un lien symbolique sur /var/tmp pour obtenir un rsultat
  similaire (notez que cela peut affecter le mode "single user" pour
  lequel /var ne sera pas disponible,  moins de le crer ou de le
  monter manuellement) ; ou encore placez le sur disque RAM (comme c'est
  le cas sous Solaris). Cela tient /tmp spar de /, ce qui es une bonne
  ide.

  Ce modle est tout  fait adapt aux mises  jour ou aux
  rinstallations : sauvez vos fichiers de configuration (ou la totalit
  de /etc) dans un rpertoire de /home, dbarrassez vous de /,
  rinstallez et rcuprez votre ancienne configuration  partir du
  rpertoire de sauvegarde sur /home.


  55..  CCoommmmeenntt jjee mm''yy ssuuiiss pprriiss ppeerrssoonnnneelllleemmeenntt


  Un vieux 386/40 sur bus ISA tranait sur mon tagre depuis deux ans.
  J'avais l'intention de le transformer en un petit serveur non-X pour
  mon rseau local.

  Voici comment je m'y suis pris : j'ai rcupr ce 386 et l'ai dot de
  16 Mo de RAM. J'y ai ajout le disque le moins cher et le plus petit
  que j'ai pu trouver (800 MB), une carte Ethernet et une vieille
  Hercules parce que j'avais toujours le moniteur. J'ai install Linux,
  ce qui m'a permis de disposer d'un serveur NFS, SMB, HTTP, LPD/LPR et
  NNTP familial ainsi que d'un routeur mail et d'un serveur POP3. Avec
  en plus une carte RNIS, cette machine me sert maintenant en plus de
  routeur TCP/IP et de pare-flamme.

  L'essentiel de l'espace disque sur cette machine est pass dans les
  rpertoires de /var, /var/spool/mail, /var/spool/news et
  /var/httpd/html. J'ai plac /var sur un partition spare, que j'ai
  cre suffisamment grande. Comme il n'y aura autant dire pas
  d'utilisateurs sur cette machine, je n'ai pas cr de partition home,
  et j'ai donc mont /home depuis une autre station de travail via NFS.

  Une partition / de 250 Mo est amplement suffisante pour Linux sans X,
  dot de quelques utilitaires locaux supplmentaires. Cette machine a
  16 Mo de RAM, mais elle est destine  piloter de nombreux serveurs.
  16 Mo de swap serait correct, 32 Mo l'abondance. Comme l'espace disque
  le permet, disons 32 Mo de swap. Conservons une partition MS-DOS de 20
  Mo. Comme j'ai dcid d'importer /home depuis une autre machine, les
  500+ Mo constitueront /var.  C'est plus que suffisant pour un centre
  de distribution de news familial.


  Nous avons donc :










  ______________________________________________________________________
  Device     Mounted on                      Size
  /dev/hda1  /dos_c                           25 MB
  /dev/hda2  - (Swapspace)                    32 MB
  /dev/hda3  /                               250 MB
  /dev/hda4  - (Extended Container)          500 MB
  /dev/hda5  /var                            500 MB

  homeserver:/home /home                     1.6 GB
  ______________________________________________________________________




  J'effectue les sauvegardes de cette machine via le rseau en utilisant
  le lecteur de bande de homeserveur. Du fait que l'installation a t
  faite  partir d'un CDROM, je n'ai besoin de sauvegarder que quelques
  fichiers de /etc, mes fichiers *.tgz personnaliss installs
  localement sur /root/Source/Installed et /var/spool/mail ainsi que
  /var/httpd/html. Je copie chaque nuit ces fichiers dans un rpertoire
  ddi /home/backmeup sur homeserver, o la sauvegarde rgulire de
  homeserver les rcupre.












































