Index: head/fr_FR.ISO8859-1/books/handbook/disks/chapter.xml =================================================================== --- head/fr_FR.ISO8859-1/books/handbook/disks/chapter.xml (revision 53063) +++ head/fr_FR.ISO8859-1/books/handbook/disks/chapter.xml (revision 53064) @@ -1,4758 +1,4758 @@ Stockage des données &trans.a.fonvieille; Synopsis Ce chapitre couvre l'utilisation des disques sous FreeBSD. Cela comprend les disques mémoire, les disques réseau, les périphériques standards de stockage SCSI/IDE, et les périphériques utilisant l'interface USB. Après la lecture de ce chapitre, vous connaîtrez: La terminologie qu'utilise FreeBSD pour décrire l'organisation des données sur un disque physique (les partitions et les tranches). Comment ajouter des disques durs supplémentaires sur votre système. Comment configurer &os; pour l'utilisation de périphériques de stockage USB. Comment configurer des systèmes de fichiers virtuels, comme les disques mémoires. Comment utiliser les quotas pour limiter l'usage de l'espace disque. Comment chiffrer des disques pour les sécuriser contre les attaques. Comment créer et graver des CDs et DVDs sous FreeBSD. Les différents supports disponibles pour les sauvegardes. Comment utiliser les programmes de sauvegarde disponibles sous FreeBSD. Comment faire des sauvegardes sur disquettes. Ce que sont les snapshots (instantanés) de systèmes de fichiers et comment les utiliser efficacement. Avant de lire ce chapitre, vous devrez: Savoir comment configurer et installer un nouveau noyau &os; (). Noms des périphériques Ce qui suit est une liste des périphériques de stockage physiques, et des noms de périphériques associés. Conventions de nom pour les disques physiques Type de disque Nom du périphérique Disques durs IDE ad Lecteurs de CDROMs IDE acd Disques durs SCSI et périphériques de stockage USB da Lecteurs de CDROMs SCSI cd mcd pour les CD-ROMs Mitsumi, scd pour les CD-ROMs Sony Lecteurs de disquette fd Lecteurs de bande SCSI sa Lecteurs de bande IDE ast Disques flash fla pour les périphériques Flash &diskonchip; Disques RAID aacd pour l'AdvancedRAID &adaptec;, mlxd et mlyd pour les &mylex;, amrd le &megaraid; d'AMI, idad pour le Smart RAID de Compaq, twed pour le &tm.3ware; RAID.
Ajouter des disques DavidO'BrienContribution originale de disques ajout Supposons que nous voulions ajouter un second disque SCSI à une machine qui n'a pour l'instant qu'un seul disque. Commençons par arrêter l'ordinateur et installer le disque en suivant les instructions données par le constructeur de l'ordinateur, du contrôleur et du disque. Comme il y a de nombreuses façon de procéder, ces détails dépassent le cadre de ce document. Ouvrons maintenant une session sous le compte root. Après avoir installé le disque, consultez le fichier /var/run/dmesg.boot pour vérifier que le nouveau disque a été reconnu. Dans notre exemple, le disque que nous venons d'ajouter sera le périphérique da1 et nous le monterons sur le répertoire /1 (si vous ajoutez un disque IDE, le nom de périphérique sera ad1). partitions tranches fdisk &os; tourne sur des ordinateurs compatibles IBM-PC, il doit tenir compte des partitions PC BIOS. Ces dernières sont différentes des partitions BSD traditionnelles. Un disque PC peut avoir jusqu'à quatre partitions. Si le disque va être réservé uniquement à FreeBSD, vous pouvez utiliser le mode dédié. Sinon, FreeBSD devra utiliser une des partitions PC BIOS. FreeBSD appelle les partitions PC BIOS tranches (“slices”) pour les distinguer des partitions BSD traditionnelles. Vous pouvez aussi des tranches sur un disque dédié à FreeBSD, mais utilisé sur une machine où un autre système d'exploitation est également installé. C'est une bonne manière pour éviter de perturber l'utilitaire fdisk des autres système d'exploitation différents de &os;. Dans le cas d'une tranche, le disque ajouté deviendra le périphérique /dev/da1s1e. Ce qui se lit: disque SCSI, numéro d'unité 1 (second disque SCSI), tranche 1 (partition PC BIOS 1), et partition BSD e. Dans le cas du mode dédié, le disque sera ajouté en tant que /dev/da1e. En raison de l'utilisation d'entiers codés sur 32 bits pour stocker le nombre de secteurs, &man.bsdlabel.8; est limité à 2^32-1 secteurs par disque ou 2TB dans la plupart des cas. Le format &man.fdisk.8; n'autorise pas de secteur au delà de 2^32-1 et une largeur de plus de 2^32-1, limitant donc les partitions à 2TB et les disques à 4TB en général. Le format &man.sunlabel.8; est limité à 2^32-1 secteur par partition et 8 partitions pour un total de 16TB d'espace. Pour des disques plus importants, les partitions &man.gpt.8; peuvent être utilisées. Utiliser &man.sysinstall.8; sysinstall ajout de disque su Naviguer dans <application>sysinstall</application> Vous pouvez utiliser sysinstall et ses menus simples d'emploi pour partitionner et libeller le nouveau disque. Ouvrez une session sous le compte super-utilisateur root ou utilisez la commande &man.su.1;. Lancez sysinstall et sélectionnez Configure. A l'intérieur du menu FreeBSD Configuration Menu, descendez et sélectionnez l'option Fdisk. L'éditeur de partition <application>fdisk</application> Une fois dans l'utilitaire fdisk, nous pouvons taper A pour utiliser tout le disque pour FreeBSD. Lorsque l'on vous demande si vous voulez garder la possibilité de pouvoir coopérer avec d'autres systèmes d'exploitation (“remain cooperative with any future possible operating systems”), répondez par l'affirmative (YES). Enregistrez les modifications sur le disque avec W. Quittez maintenant l'éditeur fdisk en tapant q. La prochaine question concernera le secteur de démarrage (“Master Boot Record”). Comme vous ajoutez un disque à un système déjà opérationnel, choisissez None. L'éditeur de label du disque partitions BSD Ensuite, vous devez quitter puis relancer sysinstall. Suivez les instructions précédentes, en choisissant cette fois l'option Label. Vous entrerez dans l'éditeur de label du disque (Disk Label Editor). C'est là que vous allez créer les partitions BSD traditionnelles. Un disque peut avoir jusqu'à huit partitions, libellées de a à h. Certains de ces labels ont des significations particulières. La partition a est la partition racine (/). Seul votre disque système (e.g., celui à partir duquel vous démarrez) doit avoir une partition a. La partition b est utilisée pour la pagination, vous pouvez avoir plusieurs disques avec des partitions de pagination. La partition c désigne la totalité du disque en mode dédié, ou toute la tranche FreeBSD dans le cas contraire. Les autres partitions sont à usage général. L'éditeur de label de sysinstall définit par défaut la partition e comme première partition qui n'est ni racine, ni de pagination. Dans l'éditeur de label, créez un seul système de fichiers avec l'option C. Quand on vous demande si ce sera un système de fichiers (FS) ou une partition de pagination, choisissez FS et indiquez un point de montage (e.g., /mnt). Lorsque vous ajoutez un disque sur un système déjà installé, sysinstall ne créera pas d'entrées dans /etc/fstab, donc le nom que vous donnez au point de montage n'a pas d'importance. Vous pouvez maintenant écrire le nouveau label sur le disque et y créer un système de fichiers. Faites-le en tapant W. Ignorez les erreurs de sysinstall disant que la nouvelle partition ne peut être montée. Quittez maintenant l'éditeur de label et sysinstall. Dernière étape La dernière étape consiste à éditer le fichier /etc/fstab pour y ajouter une entrée pour votre nouveau disque. Utiliser les utilitaires en ligne de commande Utiliser les tranches — “slices” Cette configuration permettra de faire fonctionner correctement votre disque dure avec d'autres systèmes d'exploitation qui pourraient être installé sur votre machine, et ne perturbera pas les utilitaires fdisk de ces autres systèmes d'exploitation. C'est la méthode recommandée pour l'installation de nouveau disques. N'utilisez le mode dédié que si vous avez une bonne raison de le faire! &prompt.root; dd if=/dev/zero of=/dev/da1 bs=1k count=1 &prompt.root; fdisk -BI da1 #Initialize your new disk &prompt.root; bsdlabel -B -w da1s1 auto #Label it. &prompt.root; bsdlabel -e da1s1 # Edit the disklabel just created and add any partitions. &prompt.root; mkdir -p /1 &prompt.root; newfs /dev/da1s1e # Repeat this for every partition you created. &prompt.root; mount /dev/da1s1e /1 # Mount the partition(s) &prompt.root; vi /etc/fstab # Add the appropriate entry/entries to your /etc/fstab. Si vous avez un disque IDE, remplacez da par ad. Mode dédié OS/2 Si le nouveau disque n'est pas destiné a être partagé avec un autre système d'exploitation, vous pouvez utiliser le mode dédié. Rappelez-vous que ce mode peut perturber les systèmes d'exploitation Microsoft; cependant, ils ne toucheront pas au disque. &os2; d'IBM, au contraire, “s'approprie” toute partition qu'il trouve et ne reconnaît pas. &prompt.root; dd if=/dev/zero of=/dev/da1 bs=1k count=1 &prompt.root; bsdlabel -Bw da1 auto &prompt.root; bsdlabel -e da1 # create the `e' partition &prompt.root; newfs -d0 /dev/da1e &prompt.root; mkdir -p /1 &prompt.root; vi /etc/fstab # add an entry for /dev/da1e &prompt.root; mount /1 Un autre méthode est: &prompt.root; dd if=/dev/zero of=/dev/da1 count=2 &prompt.root; bsdlabel /dev/da1 | bsdlabel -BR da1 /dev/stdin &prompt.root; newfs /dev/da1e &prompt.root; mkdir -p /1 &prompt.root; vi /etc/fstab # add an entry for /dev/da1e &prompt.root; mount /1 RAID RAID logiciel Configuration du pilote de disque concaténé (CCD — “Concatenated Disk Driver”) ChristopherShumwayTravail original de JimBrownRévisé par RAIDLogiciel RAIDCCD Quand il est question du choix d'une solution de stockage de masse les critères de choix les plus importants à considérer sont la vitesse, la fiabilité, et le coût. Il est plutôt rare de pouvoir réunir ces trois critères; normalement un périphérique de stockage rapide et fiable est coûteux, et pour diminuer les coûts la vitesse ou la fiabilité doivent être sacrifiées. A la conception du système décrit plus bas, le coût a été choisi comme facteur le plus important, suivi de la vitesse, et enfin la fiabilité. La vitesse de transfert des données est limitée par le réseau. Et tandis que la fiabilité est très importante, le disque CCD décrit ci-dessous est destiné au stockage de données en ligne qui sont déjà complètement sauvegardées sur CD-Rs et qui peuvent être facilement remplacées. Définir vos propres besoins est la première étape dans le choix d'une solution de stockage de masse. Si vos critères de choix privilégient la vitesse ou la fiabilité par rapport au coût, votre solution diférera du système décrit dans cette section. Installation du matériel En plus du disque système IDE, trois disques Western Digital de 30Go, 5400 trs/min IDE forment le coeur du disque CCD décrit ci-dessous donnant approximativement 90Go de stockage en ligne. La solution idéale serait d'avoir pour chaque disque IDE son propre câble et contrôleur IDE, mais pour minimiser les coûts, des contrôleur IDE supplémentaires n'ont pas été utilisés. Aussi, les disques ont été configuré de telle façon que chaque contrôleur IDE ait un disque maître et un disque esclave. Au redémarrage, le BIOS a été configuré pour détecter automatiquement les disques attachés. FreeBSD les a d'ailleurs détectés au redémarrage: ad0: 19574MB <WDC WD205BA> [39770/16/63] at ata0-master UDMA33 ad1: 29333MB <WDC WD307AA> [59598/16/63] at ata0-slave UDMA33 ad2: 29333MB <WDC WD307AA> [59598/16/63] at ata1-master UDMA33 ad3: 29333MB <WDC WD307AA> [59598/16/63] at ata1-slave UDMA33 Si FreeBSD ne détecte pas les disques, assurez-vous que vous avez correctement placé les cavaliers. La plupart des disques IDE disposent également d'un cavalier “Cable Select”. Ce n'est pas le cavalier de configuration maître/esclave. Consultez la documentation du disque pour identifier le cavalier correct. Ensuite, réfléchissez sur la manière de les intégrer au système de fichiers. Vous devriez faire des recherches sur &man.vinum.8; () et &man.ccd.4;. Dans cette configuration particulière, &man.ccd.4; a été choisi. Configuration du CCD Le pilote &man.ccd.4; vous permet de prendre plusieurs disques identiques et les concaténer en un seul système de fichiers logique. Afin d'utiliser &man.ccd.4;, vous avez besoin d'un noyau avec le support &man.ccd.4;. Ajoutez la ligne suivante à votre fichier de configuration de noyau, recompilez, et installez le noyau: device ccd Le support &man.ccd.4; peut également chargé sous la forme d'un module noyau. Pour configurer &man.ccd.4;, vous devez tout d'abord utiliser &man.bsdlabel.8; pour labéliser les disques: bsdlabel -w ad1 auto bsdlabel -w ad2 auto bsdlabel -w ad3 auto Cela a créé un label de disque ad1c, ad2c et ad3c qui s'étend sur l'intégralité du disque. L'étape suivante est de modifier le type de label de disque. Vous pouvez utiliser &man.bsdlabel.8; pour éditer les disques: bsdlabel -e ad1 bsdlabel -e ad2 bsdlabel -e ad3 Cela ouvre le label de disque actuel de chaque disque dans l'éditeur fixé par la variable d'environnement EDITOR, généralement, &man.vi.1;. Un label de disque non modifié ressemblera à quelque chose comme ceci: 8 partitions: # size offset fstype [fsize bsize bps/cpg] c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597) Ajoutez une nouvelle partition e pour être utilisé par &man.ccd.4;. Cela peut être une copie de la partition c mais le type de système de fichiers () doit être 4.2BSD. Le label de disque devait ressembler à: 8 partitions: # size offset fstype [fsize bsize bps/cpg] c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597) e: 60074784 0 4.2BSD 0 0 0 # (Cyl. 0 - 59597) Création du système de fichiers Maintenant que tous les disques sont labélisés, vous devez construire le &man.ccd.4;. Pour cela, utilisez &man.ccdconfig.8;, avec des options semblables à ce qui suit: ccdconfig ccd0 32 0 /dev/ad1e /dev/ad2e /dev/ad3e L'utilisation et la signification de chaque option est données ci-dessous: Le premier argument est le périphérique à configurer, dans ce cas, /dev/ccd0c. La partie /dev/ est optionnelle. L'entrelacement (“interleave”) du système de fichiers. L'entrelacement définit la taille d'une bande de blocs disque, de 512 octets chacune normalement. Donc un entrelacement de 32 serait d'une largeur de 16384 octets. Paramètres pour &man.ccdconfig.8;. Si vous désirez activer les miroirs disque, vous pouvez spécifier un indicateur à cet endroit. Cette configuration ne fournit pas de miroir pour &man.ccd.4;, aussi l'indicateur est a 0 (zéro). Les derniers arguments de &man.ccdconfig.8; sont les périphériques à placer dans le disque concaténé. Utilisez le chemin complet pour chaque périphérique. Après avoir utilisé &man.ccdconfig.8; le &man.ccd.4; est configuré. Un système de fichiers peut être créé. Consultez la page de manuel de &man.newfs.8; pour les options disponibles, ou lancez simplement: newfs /dev/ccd0c Automatiser la procédure Généralement, vous voudrez monter le &man.ccd.4; à chaque redémarrage. Pour cela, vous devez le configurer avant toute chose. Ecrivez votre configuration actuelle dans /etc/ccd.conf en utilisant la commande suivante: ccdconfig -g > /etc/ccd.conf Lors du démarrage, la procédure /etc/rc exécute ccdconfig -C si /etc/ccd.conf existe. Cela configure automatiquement le &man.ccd.4; de façon à pouvoir être monté. Si vous démarrez en mode mono-utilisateur, avant que vous ne puissiez monter le &man.ccd.4;, vous devez utiliser la commande suivante pour configurer l'unité: ccdconfig -C Pour monter automatiquement le &man.ccd.4; placez une entrées pour le &man.ccd.4; dans /etc/fstab, il sera ainsi monté au démarrage: /dev/ccd0c /media ufs rw 2 2 Le gestionnaire de volume Vinum RAIDLogiciel RAID Vinum Le gestionnaire de volume Vinum est un pilote de périphérique de gestion de disques virtuels. Il sépare le disque matériel de l'interface de périphérique bloc et organise les données de telle façon qu'il en résulte une amélioration de la flexibilité, des performances et de la fiabilité, comparé à la vision traditionnelle sous forme partitionnée du stockage disque. &man.vinum.8; implémente les modèles RAID-0, RAID-1 et RAID-5, individuellement ou combinés. Voir le pour plus d'information au sujet de &man.vinum.8;. RAID Matériel RAID Matériel FreeBSD supporte également de nombreux contrôleurs RAID. Ces périphériques peuvent contrôler un système RAID sans nécessiter l'utilisation d'un logiciel spécifique pour &os; pour gérer l'unité. En utilisant son propre BIOS, la carte contrôle la plupart des opérations disque. Ce qui suit est une description rapide d'une configuration utilisant un contrôleur Promise IDE RAID. Quand cette carte est installée et le système redémarré, une invite s'affichera posant quelques questions. Suivez les instructions à l'écran pour atteindre l'écran de configuration de la carte. A partir de là, vous avez la possibilité de combiner tous les disques attachés. En faisant cela, les disques apparaîtront sous la forme d'un unique disque sous FreeBSD. D'autres niveaux RAID peuvent être configurés en conséquence. Reconstruire une unité ATA RAID1 FreeBSD vous permet de remplacer à chaud un disque défectueux dans une unité. Cela doit être fait avant redémarrage. Vous verrez probablement dans /var/log/messages ou dans la sortie de &man.dmesg.8; quelque chose comme: ad6 on monster1 suffered a hard error. ad6: READ command timeout tag=0 serv=0 - resetting ad6: trying fallback to PIO mode ata3: resetting devices .. done ad6: hard error reading fsbn 1116119 of 0-7 (ad6 bn 1116119; cn 1107 tn 4 sn 11) status=59 error=40 ar0: WARNING - mirror lost En utilisant &man.atacontrol.8;, recherchez de plus amples informations: &prompt.root; atacontrol list ATA channel 0: Master: no device present Slave: acd0 <HL-DT-ST CD-ROM GCR-8520B/1.00> ATA/ATAPI rev 0 ATA channel 1: Master: no device present Slave: no device present ATA channel 2: Master: ad4 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5 Slave: no device present ATA channel 3: Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5 Slave: no device present &prompt.root; atacontrol status ar0 ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADED Vous devrez détacher le canal ATA avec le disque défectueux de façon à pouvoir le retirer sans risque: &prompt.root; atacontrol detach ata3 Remplacer le disque. Rattacher le canal ATA: &prompt.root; atacontrol attach ata3 Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5 Slave: no device present Rajouter le disque de rechange à l'unité: &prompt.root; atacontrol addspare ar0 ad6 Recontruire l'unité: &prompt.root; atacontrol rebuild ar0 Il est possible de contrôler l'avancée de la procédure en utilisant la commande suivante: &prompt.root; dmesg | tail -10 [output removed] ad6: removed from configuration ad6: deleted from ar0 disk1 ad6: inserted into ar0 disk1 as spare &prompt.root; atacontrol status ar0 ar0: ATA RAID1 subdisks: ad4 ad6 status: REBUILDING 0% completed Attendre jusqu'à la fin de cette opération. Périphériques de stockage USB MarcFonvieilleContribution de USB disques De nombreuses solutions de stockage externes utilisent, de nos jours, le bus série universel (“Universal Serial Bus”—USB): disques durs, clés USB, graveurs de CDs, etc. &os; fournit un support pour ces périphériques. Configuration Le pilote de périphériques USB de stockage de masse, &man.umass.4;, fournit le support pour les périphériques de stockage USB. Si vous utilisez le noyau GENERIC, vous n'avez rien à modifier à votre configuration. Si vous utilisez un noyau personnalisé, assurez-vous que les lignes suivantes sont présentent dans votre fichier de configuration du noyau: device scbus device da device pass device uhci device ohci device usb device umass Le pilote &man.umass.4; utilise le sous-système SCSI pour accéder aux périphériques de stockage USB, votre périphérique USB sera vu par le système comme étant un périphérique SCSI. En fonction du contrôleur USB présent sur votre carte mère, vous n'avez besoin qu'une des lignes device uhci et device ohci, cependant avoir les deux lignes dans votre configuration du noyau est sans danger. N'oubliez pas de compiler et d'installer le nouveau noyau si vous y avez effectué des modifications. Si votre périphérique USB est un graveur de CD ou de DVD, le pilote de périphérique SCSI CD-ROM, &man.cd.4;, doit être ajouté au noyau via la ligne: device cd Puisque le graveur est vu comme un disque SCSI, le pilote &man.atapicam.4; ne devrait pas être employé dans la configuration du noyau. Le support pour les contrôleurs USB 2.0 est fourni avec &os; vous devez cependant ajouter: device ehci à votre fichier de configuration pour bénéficier du support USB 2.0. Notez que les pilotes &man.uhci.4; et &man.ohci.4; sont toujours nécessaires si vous désirez le support de l'USB 1.X. Test de la configuration La configuration est prête à être testée: branchez votre périphérique USB, et dans le tampon des messages du système (&man.dmesg.8;), le disque devrait apparaître de cette manière: umass0: USB Solid state disk, rev 1.10/1.00, addr 2 GEOM: create disk da0 dp=0xc2d74850 da0 at umass-sim0 bus 0 target 0 lun 0 da0: <Generic Traveling Disk 1.11> Removable Direct Access SCSI-2 device da0: 1.000MB/s transfers da0: 126MB (258048 512 byte sectors: 64H 32S/T 126C) Bien évidement, le modèle, le fichier spécial de périphérique (da0) et d'autres détails peuvent être différents en fonction de votre configuration. Comme le périphérique USB est vu comme étant un périphérique SCSI, la commande camcontrol peut être employée pour lister les périphériques de stockage USB attachés au système: &prompt.root; camcontrol devlist <Generic Traveling Disk 1.11> at scbus0 target 0 lun 0 (da0,pass0) Si le disque dispose d'un système de fichiers, vous devriez pouvoir le monter. La vous aidera à formater et créer des partitions sur le disque USB si nécessaire. Pour rendre ce périphérique montable par un utilisateur normal, un certain nombre de paramétrages sont nécessaires. Tout d'abord, les entrées de périphériques qui sont créées lors de la connexion d'un périphérique USB doivent être accessibles à l'utilisateur. Une solution est de faire en sorte que tous les utilisateurs de ces périphériques soient membres du groupe operator. Cela se fait à l'aide de &man.pw.8;. Ensuite, quand ces entrées de périphériques sont créées, le groupe operator doit pouvoir y accéder en lecture et en écriture. Pour cela, les lignes suivantes sont ajoutées à /etc/devfs.rules: [localrules=1] add path 'da*' mode 0660 group operator S'il y a déjà des disques SCSI dans le système, on doit procéder légèrement différemment. Par exemple, si le système contient déjà des disques da0 à da2 attachés au système, changez la seconde ligne pour: add path 'da[3-9]*' mode 0660 group operator Les disques déjà présents n'appartiendront pas au groupe operator. Vous devez également activer votre ensemble de règles &man.devfs.rules.5; dans votre fichier /etc/rc.conf: devfs_system_ruleset="localrules" Le noyau doit être ensuite configuré pour autoriser les utilisateurs habituels à monter des systèmes de fichiers. La méthode la plus simple est d'ajouter la ligne suivante au fichier /etc/sysctl.conf: vfs.usermount=1 Notez que ce paramétrage ne prendra effet qu'au prochain redémarrage. Il est également possible d'utiliser &man.sysctl.8; pour fixer cette variable. La dernière étape est de créer un répertoire où le système de fichiers sera monté. Ce répertoire doit appartenir à l'utilisateur qui montera le système de fichiers. Une méthode adaptée et la création par root d'un sous-répertoire /mnt/$USER appartenant à l'utilisateur en question (remplacez $USER par le nom d'utilisateur de cet utilisateur): &prompt.root; mkdir /mnt/$USER &prompt.root; chown $USER:$USER /mnt/$USER Supposez qu'une clé USB soit branchée et qu'un périphérique /dev/da0s1 apparaît. Comme ce type de périphériques est en général livré préformaté avec un système de fichiers de type FAT, on pourra le monter de cette manière: &prompt.user; mount -t msdosfs -m 644 -M 755 /dev/da0s1 /mnt/$USER Si vous débranchez le périphérique (le disque doit être démonté auparavant), vous devriez voir dans les messages du système quelque chose comme: umass0: at uhub0 port 1 (addr 2) disconnected (da0:umass-sim0:0:0:0): lost device (da0:umass-sim0:0:0:0): removing device entry GEOM: destroy disk da0 dp=0xc2d74850 umass0: detached Lectures supplémentaires En plus des sections Ajouter des disques et Monter et démonter des systèmes de fichiers, la lecture de différentes pages de manuel peut être également utile: &man.umass.4;, &man.camcontrol.8;, et &man.usbdevs.8;. Création et utilisation de supports optiques (CDs) MikeMeyerContribution de CDROMs création Introduction Les CDs se différencient des disques conventionnels par de nombreuses caractéristiques. Au départ, ils n'étaient pas inscriptible par l'utilisateur. Ils sont conçu pour être lut de façon continue sans délai pour déplacer la tête de lecture entre les pistes. Ils sont également plus facile à déplacer entre systèmes que les supports de même taille à cette époque. Les CDs possèdent des pistes, mais cela fait référence à un ensemble de données qui peuvent être lues de façon continue et non pas à une particularité physique du disque. Pour produire un CD sous FreeBSD, il faut préparer les fichiers de données qui vont constituer les pistes sur le CD, puis écrire les pistes sur le CD. ISO 9660 systèmes de fichiers ISO 9660 Le système de fichiers ISO 9660 a été conçu pour gérer ces différences. Malheureusement il incorpore des limites du système de fichiers qui semblaient normale alors. Mais heureusement, il fournit un mécanisme d'extension qui permet au CDs proprement gravés de passer outre ces limites tout en restant lisibles par les systèmes qui ne supportent pas ces extensions. sysutils/cdrtools Le logiciel sysutils/cdrtools comprend &man.mkisofs.8;, un programme que vous pouvez utiliser pour produire un fichier de données contenant un système de fichiers ISO 9660. Il dispose d'options pour le support de diverses extensions, et est décrit ci-dessous. graveur de CD ATAPI L'outil a utiliser pour graver un CD varie en fonction du type de graveur de CD: ATAPI ou autre. Les graveurs ATAPI utilisent le programme burncd qui fait partie du système de base. Les graveurs SCSI ou USB devraient utiliser l'utilitaire cdrecord du logiciel porté sysutils/cdrtools port. Il est également possible d'utiliser cdrecord et d'autres outils pour lecteurs SCSI sur du matériel ATAPI avec le module ATAPI/CAM. Si vous voulez un programme de gravure de CD avec une interface graphique, vous devriez jeter un oeil à X-CD-Roast ou K3b. Ces outils sont disponibles sous une version pré-compilée ou à partir des logiciels portés sysutils/xcdroast et sysutils/k3b. X-CD-Roast et K3b nécessitent le module ATAPI/CAM avec des périphériques ATAPI. mkisofs L'utilitaire &man.mkisofs.8;, qui fait partie du logiciel porté sysutils/cdrtools, produit un système de fichiers ISO 9660 qui est une image de l'arborescence des répertoires dans un système de fichiers &unix;. L'utilisation la plus simple est: &prompt.root; mkisofs -o fichierimage.iso /chemin/vers/arborescence systèmes de fichiers ISO 9660 Cette commande créera un fichierimage.iso contenant un système de fichiers ISO 9660 qui est une copie de l'arborescence /chemin/vers/arborescence. Durant le processus de création, les noms de fichiers seront modifiés de façon à respecter les limitations de la norme ISO 9660, et rejettera les fichiers ayant des noms non acceptables pour un système de fichiers ISO. systèmes de fichiers HFS systèmes de fichiers Joliet De nombreuses options sont disponibles pour passer outre ces restrictions. En particulier, qui autorise les extensions Rock Ridge communes aux systèmes &unix;, qui active les extensions Joliet utilisées par les systèmes Microsoft, et peut être utilisé pour créer des systèmes de fichiers HFS utilisés par &macos;. Pour des CDs qui sont destinés à n'être utilisé que sur des systèmes &os;, l'option peut être utilisée pour désactiver toutes les restrictions au niveau des noms de fichiers. Quand elle est utilisée avec l'option , cela produit une image de système de fichiers qui est identique à l'arborescence &os; d'origine, cependant ce système de fichiers pourra violer la norme ISO 9660 de nombreuses façon. CDROMs création d'un CDROM bootable La dernière option d'usage général est l'option . Elle est utilisée pour indiquer l'emplacement de l'image de démarrage à utiliser dans la création d'un CD démarrable El Torito. Cette option prend en argument le chemin vers une image de démarrage à partir de la racine de l'arborescence qui va être copiée sur le CD. Par défaut, &man.mkisofs.8; créé une image ISO dans un mode appelé émulation de disquette, et s'attend donc à une image de démarrage de 1200, 1440 ou 2880 Ko en taille. Certains chargeurs, comme celui utilisé par les disques d'installation de &os;, n'utilisent pas ce mode d'émulation, dans ce cas l'option devrait être utilisée. Aussi, si /tmp/monboot contient un système &os; avec une image de démarrage dans /tmp/monboot/boot/cdboot, vous pourrez produire l'image d'un système de fichiers ISO 9660 dans /tmp/bootable.iso de cette façon: &prompt.root; mkisofs -R -no-emul-boot -b boot/cdboot -o /tmp/bootable.iso /tmp/monboot Cela étant fait, si vous avez le pilote md configuré dans votre noyau, vous pouvez monter le système de fichiers avec: &prompt.root; mdconfig -a -t vnode -f /tmp/bootable.iso -u 0 &prompt.root; mount -t cd9660 /dev/md0 /mnt A ce moment vous pouvez vérifier que /mnt et /tmp/monboot sont identique. Il existe de nombreuses autres options que vous pouvez utiliser avec &man.mkisofs.8; pour régler finement son comportement. En particulier: les modifications d'une organisation ISO 9660 et la création de disques Joliet et HFS. Voir la page de manuel &man.mkisofs.8; pour plus de détails. burncd CDROMs gravure Si vous disposez d'un graveur de CD ATAPI, vous pouvez utiliser la commande burncd pour graver une image ISO sur un CD. burncd fait partie du système de base, installé sous /usr/sbin/burncd. Son utilisation est très simple, car il dispose de peu d'options: &prompt.root; burncd -f cddevice data fichierimage.iso fixate Gravera une copie de fichierimage.iso sur cddevice. Le périphérique par défaut est /dev/acd0. Consultez &man.burncd.8; pour les options pour fixer la vitesse d'écriture, éjecter le CD après gravure, et graver des données audios. cdrecord Si vous n'avez pas de graveur de CD ATAPI, vous devrez utiliser cdrecord pour graver vos CDs. cdrecord ne fait pas partie du système de base; vous devez l'installer soit à partir du logiciel porté sysutils/cdrtools ou de la version pré-compilée appropriée. Des modifications du système de base peuvent provoquer le dysfonctionnement des versions binaires de ce programme, et donner lieu à une production de “dessous de bouteille”. Vous devrez par conséquent soit mettre à jour le logiciel porté quand vous mettez à jour votre système, soit si vous suivez la branche -STABLE, mettre à jour le logiciel porté lorsqu'une nouvelle version est disponible. Bien que cdrecord dispose de nombreuses options, l'usage de base est même plus simple qu'avec burncd. La gravure d'une image ISO 9660 se fait avec: &prompt.root; cdrecord dev=device fichierimage.iso La partie délicate dans l'utilisation de cdrecord est la recherche de la valeur à utiliser pour l'option . Pour déterminer le bon paramètre à utiliser, utilisez l'indicateur de cdrecord, qui produira des résultats du type: CDROMs gravure &prompt.root; cdrecord -scanbus Cdrecord-Clone 2.01 (i386-unknown-freebsd7.0) Copyright (C) 1995-2004 Jörg Schilling Using libscg version 'schily-0.1' scsibus0: 0,0,0 0) 'SEAGATE ' 'ST39236LW ' '0004' Disk 0,1,0 1) 'SEAGATE ' 'ST39173W ' '5958' Disk 0,2,0 2) * 0,3,0 3) 'iomega ' 'jaz 1GB ' 'J.86' Removable Disk 0,4,0 4) 'NEC ' 'CD-ROM DRIVE:466' '1.26' Removable CD-ROM 0,5,0 5) * 0,6,0 6) * 0,7,0 7) * scsibus1: 1,0,0 100) * 1,1,0 101) * 1,2,0 102) * 1,3,0 103) * 1,4,0 104) * 1,5,0 105) 'YAMAHA ' 'CRW4260 ' '1.0q' Removable CD-ROM 1,6,0 106) 'ARTEC ' 'AM12S ' '1.06' Scanner 1,7,0 107) * Cela donne la valeur appropriée pour les périphériques listés. Recherchez votre graveur de CD dans la liste, et utilisez les trois chiffres séparés par une virgule comme valeur pour . Dans notre cas le périphérique de gravure est 1,5,0, donc l'entrée appropriée serait . Il existe des manières plus simple de spécifier cette valeur, consultez la page de manuel &man.cdrecord.1; pour des détails. C'est également la documentation à consulter pour des informations sur la gravure de pistes audios, le contrôle de la vitesse, et d'autres choses. Dupliquer des CDs Audio Vous pouvez dupliquer un CD audio en effectuant l'extraction des données audio du CD vers un ensemble de fichiers, puis graver ces fichiers sur un CD vierge. Le processus est légèrement différent entre lecteurs ATAPI et SCSI. Lecteurs SCSI Utiliser cdda2wav pour effectuer l'extraction audio. &prompt.user; cdda2wav -v255 -D2,0 -B -Owav Utiliser cdrecord pour graver les fichiers .wav. &prompt.user; cdrecord -v dev=2,0 -dao -useinfo *.wav Assurez-vous que 2,0 est choisi correctement, comme décrit dans . Lecteurs ATAPI Le pilote CD ATAPI rend disponible chaque piste sous la forme /dev/acddtnn, où d est le numéro de lecteur, et nn est le numéro de la piste écrit sur deux digits décimaux. Donc la première piste sur le premier lecteur est /dev/acd0t01, la seconde est /dev/acd0t02, la troisième /dev/acd0t03, et ainsi de suite. Assurez-vous que les fichiers appropriés existent sous /dev. Si ces entrées sont absentes, forcez le système à lire le disque à nouveau: &prompt.root; dd if=/dev/acd0 of=/dev/null count=1 Extraire chaque piste en utilisant &man.dd.1;. Vous devez également préciser une taille de bloc durant l'extraction des fichiers. &prompt.root; dd if=/dev/acd0t01 of=piste1.cdr bs=2352 &prompt.root; dd if=/dev/acd0t02 of=piste2.cdr bs=2352 ... Graver les fichiers récupérés en utilisant burncd. Vous devez spécifier que ce sont des fichiers audio, et que burncd devra fermer le disque une fois terminé. &prompt.root; burncd -f /dev/acd0 audio piste1.cdr piste2.cdr ... fixate Dupliquer des CDs de données vous pouvez copier un CD de données vers un fichier image équivalent au fichier créé avec &man.mkisofs.8;, et vous pouvez l'utiliser pour dupliquer n'importe quel CD de données. L'exemple présenté ici suppose que votre lecteur de CDROM est les périphérique acd0. Remplacez-le avec le périphérique correct. &prompt.root; dd if=/dev/acd0 of=fichier.iso bs=2048 Vous disposez maintenant d'une image, vous pouvez la graver comme décrit plus haut. Utiliser des CDs de données Maintenant que vous avez créé une CDROM de données standard, vous voulez probablement le monter et lire les données présentes. Par défaut, &man.mount.8; suppose que le système de fichier à monter est de type UFS. Si vous essayez quelque chose comme: &prompt.root; mount /dev/cd0 /mnt vous obtiendrez une erreur du type Incorrect super block, et pas de montage. Le CDROM n'est pas un système de fichiers de type UFS, aussi toute tentative de montage de ce type échouera. Vous devez juste préciser à &man.mount.8; que le système de fichiers est du type ISO9660, et tout fonctionnera. Cela se fait en spécifiant l'option option à &man.mount.8;. Par exemple, si vous désirez monter un CDROM, contenu dans le lecteur /dev/cd0, sous /mnt, vous devrez exécuter: &prompt.root; mount -t cd9660 /dev/cd0 /mnt Notez que votre nom de lecteur (/dev/cd0 dans cet exemple) pourra être différent, en fonction de l'interface utilisée par votre lecteur de CDROM. De plus l'option ne fait qu'exécuter la commande &man.mount.cd9660.8;. L'exemple précédent pourrait être réduit à: &prompt.root; mount_cd9660 /dev/cd0 /mnt Vous pouvez généralement utiliser des CDROMs de données de n'importe quelle provenance de cette façon. Les disques avec certaines extensions ISO 9660 pourront se comporter de façon étrange, cependant. Par exemple, les disques Joliet conservent tous les noms de fichiers en utilisant des caractères Unicodes sur 2 octets. Le noyau &os; ne comprend pas l'Unicode, mais le pilote CD9660 de &os; est en mesure de convertir au vol les caractères Unicode. Si des caractères non-anglais apparaissent sous la forme de points d'interrogation, vous devrez préciser la table de caractères locale que vous utilisez avec l'option . Pour plus d'information, consultez la page de manuel &man.mount.cd9660.8;. Pour pouvoir effectuer cette conversion de caractères à l'aide de l'option , le module cd9660_iconv.ko devra être chargé. Cela peut être fait soit en ajoutant au fichier loader.conf la ligne: cd9660_iconv_load="YES" puis en redémarrant la machine, soit en chargeant directement le module avec &man.kldload.8;. Occasionnellement, vous pourrez obtenir le message Device not configured (périphérique non configuré) lors d'une tentative de montage d'un CDROM. Cela veut généralement dire que le lecteur de CDROM pense qu'il n'y a pas de disque dans le lecteur, ou que le lecteur n'est pas visible sur le bus. Cela peut demander plusieurs secondes à un lecteur de CDROM de s'apercevoir qu'il a été chargé, soyez donc patient. Parfois, un lecteur de CDROM SCSI peut être manquant parce qu'il n'a pas eu suffisamment de temps pour répondre à la réinitialisation du bus. Si vous avez un lecteur de CDROM SCSI, veuillez ajouter l'option suivante à la configuration de votre noyau et recompiler votre noyau. options SCSI_DELAY=15000 Ceci demande à votre bus SCSI une pause de 15 seconds au démarrage, pour donner à votre lecteur de CDROM une chance de répondre la réinitialisation du bus. Graver des CDs de données brutes Il est possible de graver directement un fichier sur CD, sans créer de système de fichiers ISO 9660. Certaines personnes le font dans le cas de sauvegardes. Cela est beaucoup plus rapide que de graver un CD standard: &prompt.root; burncd -f /dev/acd1 -s 12 data archive.tar.gz fixate Afin de récupérer les données gravées sur un tel CD, vous devez lire les données à partir du fichier spécial de périphériques en mode caractère: &prompt.root; tar xzvf /dev/acd1 Vous ne pouvez monter ce disque comme vous le feriez avec un CDROM classique. Un tel CDROM ne pourra être lu sous un autre système d'exploitation en dehors de &os;. Si vous voulez être en mesure de monter le CD, ou d'en partager les données avec un autre système d'exploitation, vous devez utiliser &man.mkisofs.8; comme décrit plus haut. Utilisation du pilote de périphérique ATAPI/CAM MarcFonvieilleContribution de graveur de CD pilote ATAPI/CAM Ce pilote permet d'accéder aux périphériques ATAPI (lecteurs de CD-ROM, graveurs CD-RW, lecteur de DVD etc...) par l'intermédiaire du sous-système SCSI, et autorise l'utilisation d'applications comme sysutils/cdrdao ou &man.cdrecord.1;. Pour utiliser ce pilote, vous devrez ajouter la ligne suivante au fichier /boot/loader.conf: atapicam_load="YES" puis redémarrez votre machine. Si vous préférez compiler en statique dans le noyau le support &man.atapicam.4;, vous devrez ajouter au fichier de configuration du noyau la ligne: device atapicam Vous avez également besoin des lignes suivantes dans votre fichier de configuration: device ata device scbus device cd device pass qui devraient être déjà présentes. Puis recompilez, installez votre nouveau noyau, et enfin redémarrez votre machine. Lors du démarrage, votre graveur devrait apparaître, comme suit: acd0: CD-RW <MATSHITA CD-RW/DVD-ROM UJDA740> at ata1-master PIO4 cd0 at ata1 bus 0 target 0 lun 0 cd0: <MATSHITA CDRW/DVD UJDA740 1.00> Removable CD-ROM SCSI-0 device cd0: 16.000MB/s transfers cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closed Le lecteur doit être accessible via le nom de périphérique /dev/cd0, par exemple pour monter un CD-ROM sous /mnt, tapez juste ce qui suit: &prompt.root; mount -t cd9660 /dev/cd0 /mnt En tant que root, vous pouvez exécuter la commande suivante pour obtenir l'adresse SCSI du graveur: &prompt.root; camcontrol devlist <MATSHITA CDRW/DVD UJDA740 1.00> at scbus1 target 0 lun 0 (pass0,cd0) Donc 1,0,0 sera l'adresse SCSI à utiliser avec &man.cdrecord.1; et tout autre application SCSI. Pour plus d'information concernant ATAPI/CAM et le système SCSI, consultez les pages de manuel &man.atapicam.4; et &man.cam.4;. Création et utilisation de supports optiques (DVDs) MarcFonvieilleContribution de AndyPolyakovAvec l'aide de DVD gravure Introduction Comparé au CD, le DVD est la génération technologique suivante de support optique de stockage de données. Un DVD peut contenir plus de données qu'un CD et est de nos jour le standard pour la publication de vidéos. Cinq formats physiques enregistrables peuvent être définis pour ce que nous appellerons un DVD enregistrable: DVD-R: Ce fut le premier format DVD enregistrable disponible. La norme DVD-R est définie par le Forum DVD. Ce format n'est pas réinscriptible. DVD-RW: C'est la version réinscriptible du standard DVD-R. Un DVD-RW peut supporter environ 1000 réécritures. DVD-RAM: C'est également un format réinscriptible supporté par le Forum DVD. Un DVD-RAM peut être vu comme un disque dur extractible. Cependant, ce support n'est pas compatible avec la plupart des lecteurs DVD-ROM et DVD-Vidéo; seuls quelques graveurs de DVDs supportent le DVD-RAM. Consultez la pour plus d'information sur l'utilisation d'un DVD-RAM. DVD+RW: C'est un format réinscriptible défini par l' Alliance DVD+RW. Un DVD+RW supporte environ 1000 réécritures. DVD+R: Ce format est la version non-réinscriptible du format DVD+RW. Un DVD enregistrable simple couche peut contenir jusqu'à 4 700 000 000 octets ce qui équivaut en fait à 4.38 Go ou 4485 Mo (1 kilo-octet représente 1024 octets). Une différence doit être faite entre un support physique et son application. Par exemple un DVD-Vidéo est une organisation de fichiers particulière qui peut être écrite sur n'importe quel type de DVD enregistrable: DVD-R, DVD+R, DVD-RW etc. Avant de choisir le type de support, vous devez vous assurer que le graveur et le lecteur de DVD-Vidéo (lecteur de salon ou un lecteur de DVD-ROM sur un micro-ordinateur) sont compatibles avec le support. Configuration Le programme &man.growisofs.1; sera utilisé pour effectuer la gravure des DVDs. Cette commande fait partie des utilitaires dvd+rw-tools (sysutils/dvd+rw-tools). Les outils dvd+rw-tools supportent l'ensemble des supports DVD. Ces utilitaires utilisent le sous-système SCSI pour accéder aux périphériques, par conséquent le support ATAPI/CAM doit être ajouté à votre noyau. Si votre graveur utilise l'interface USB, cet ajout est inutile et vous devriez lire la sur la configuration de périphériques USB. Vous devez également activer l'accès aux périphériques ATAPI par DMA, cela peut être fait en ajoutant la ligne suivante au fichier /boot/loader.conf: hw.ata.atapi_dma="1" Avant de tenter d'utiliser les utilitaires dvd+rw-tools vous devriez consulter les notes de compatibilité matérielle des dvd+rw-tools pour des informations concernant votre graveur de DVDs. Si vous désirez une interface graphique, vous devriez jeter un oeil à K3b (sysutils/k3b) qui offre une interface conviviale à &man.growisofs.1; et à d'autres outils de gravure. Graver des DVDs de données La commande &man.growisofs.1; est une interface à mkisofs, elle invoquera &man.mkisofs.8; pour la création du système de fichiers et effectuera la gravure des données sur le DVD. Cela signifie que vous n'avez pas besoin de créer une image des données avant le processus de gravure. Pour écrire les données du répertoire /path/to/data, utilisez la commande suivante: &prompt.root; growisofs -dvd-compat -Z /dev/cd0 -J -R /path/to/data Les options sont passées à &man.mkisofs.8; pour la création du système de fichiers (dans le cas présent: un système de fichiers ISO 9660 avec les extensions Joliet et Rock Ridge), consultez la page de manuel de &man.mkisofs.8; pour plus de détails. L'option est utilisée pour la session d'écriture initiale dans tous les cas: multi-sessions ou pas. Le périphérique correspondant au graveur, /dev/cd0, doit être adapté en fonction de votre configuration. Le paramètre provoquera la fermeture du disque, rien ne pourra être écrit à la suite de l'enregistrement. En retour cela devrait donner lieu à une plus grande compatibilité avec les lecteurs de DVD-ROMs. Il est également possible de graver une image de système de fichiers, par exemple pour graver l'image imagefile.iso, nous lancerons: &prompt.root; growisofs -dvd-compat -Z /dev/cd0=imagefile.iso La vitesse d'écriture devrait être détectée et positionnée automatiquement en fonction du support et du graveur utilisé. Si vous voulez forcer la vitesse de gravure, utilisez le paramètre . Pour plus d'informations, lisez la page de manuel de &man.growisofs.1;. Graver un DVD-Vidéo DVD DVD-Video Un DVD-Vidéo est un système de fichiers particulier basé sur les spécifications IS0 9660 et micro-UDF (M-UDF). Le DVD-Vidéo présente également une arborescence de données spécifique, c'est la raison pour laquelle vous devez utiliser un programme particulier tel que multimedia/dvdauthor pour créer le DVD. Si vous disposez déjà d'une image du système de fichiers du DVD-Vidéo, gravez-la de la même façon que pour une autre image, reportez-vous aux sections précédentes pour un exemple. Si vous avez réalisé vous-même l'arborescence du DVD et que le résultat est dans, par exemple, le répertoire /path/to/video, la commande suivante devrait être utilisée pour graver le DVD-Vidéo: &prompt.root; growisofs -Z /dev/cd0 -dvd-video /path/to/video L'option sera passée à &man.mkisofs.8; et lui demandera de créer un système de fichiers de DVD-Vidéo. De plus, l'option implique l'option de &man.growisofs.1;. Utiliser un DVD+RW DVD DVD+RW Contrairement à un CD-RW, un DVD+RW vierge doit être formaté avant la première utilisation. Le programme &man.growisofs.1; s'en chargera automatiquement quand cela sera nécessaire, ce qui est la méthode recommandée. Cependant vous pouvez utiliser la commande dvd+rw-format pour formater le DVD+RW: &prompt.root; dvd+rw-format /dev/cd0 Vous devez effectuer cette opération qu'une seule fois, gardez à l'esprit que seuls des DVD+RW vierges doivent être formatés. Ensuite vous pouvez graver le DVD+RW de la manière vue dans les sections précédentes. Si vous voulez graver de nouvelles données (graver un système de fichiers totalement nouveau et pas juste ajouter des données) sur un DVD+RW, vous n'avez pas besoin de l'effacer, vous avez juste à récrire sur l'enregistrement précédent (en effectuant une nouvelle session initiale), comme ceci: &prompt.root; growisofs -Z /dev/cd0 -J -R /path/to/newdata Le format DVD+RW offre la possibilité d'ajouter facilement des données à un enregistrement précédent. L'opération consiste à fusionner une nouvelle session avec la session existante, ceci n'est pas une gravure multisession, &man.growisofs.1; augmentera le système de fichiers ISO 9660 présent sur le disque. Par exemple, si nous voulons ajouter des données à notre DVD+RW précédent, nous devons utiliser cela: &prompt.root; growisofs -M /dev/cd0 -J -R /path/to/nextdata Les mêmes options de &man.mkisofs.8; utilisées lors de la gravure de la session initiale doivent être à nouveau utilisées lors des écritures ultérieures. Vous pouvez ajouter l'option si vous désirez une meilleure compatibilité avec les lecteurs de DVD-ROM. Dans le cas d'un DVD+RW cela ne vous empêchera pas de rajouter des données par la suite. Si pour une quelconque raison vous voulez vraiment effacer le disque, faites ce qui suit: &prompt.root; growisofs -Z /dev/cd0=/dev/zero Utiliser un DVD-RW DVD DVD-RW Un DVD-RW accepte deux formats de disque: le format séquentiel incrémental et le format “restricted overwrite”. Par défaut les disques DVD-RW sont fournis sous le format séquentiel. Un DVD-RW vierge peut être directement gravé sans le besoin d'une opération de formatage préalable, cependant un DVD-RW non-vierge au format séquentiel doit être effacé avant de pouvoir y écrire une nouvelle session initiale. Pour effacer un DVD-RW en mode séquentiel, exécutez: &prompt.root; dvd+rw-format -blank=full /dev/cd0 Une opération d'effacement complète () prendra environ une heure avec un support 1x. Un effacement rapide peut être effectué en utilisant l'option si le DVD-RW est destiné à être enregistré suivant le mode d'écriture Disk-At-Once (DAO). Pour écrire le DVD-RW suivant le mode DAO, utilisez la commande: &prompt.root; growisofs -use-the-force-luke=dao -Z /dev/cd0=imagefile.iso L'option ne devrait pas être nécessaire puisque &man.growisofs.1; tente de détecter les supports effacés rapidement et engage une écriture DAO. En fait le mode “restricted overwrite” devrait être utilisé avec tout DVD-RW, ce format est plus flexible que le format séquentiel incrémental par défaut. Pour écrire des données sur un DVD-RW en mode séquentiel, utilisez les mêmes instructions que pour tout autre format de DVD: &prompt.root; growisofs -Z /dev/cd0 -J -R /path/to/data Si vous voulez ajouter des données à votre enregistrement précédent, vous devrez utiliser la commande de &man.growisofs.1;. Cependant, si vous effectuez un ajout de données sur un DVD-RW en mode séquentiel, une nouvelle session sera créée sur le disque avec pour résultat de donner naissance à un disque multi-sessions. Un DVD-RW dans le format “restricted overwrite” n'a pas besoin d'être effacé avant une nouvelle session initiale, vous avez juste à récrire sur le disque avec l'option , ceci est similaire à un DVD+RW. Il est également possible d'augmenter un système de fichiers ISO 9660 existant écrit sur le disque de la même manière que pour un DVD+RW en utilisant l'option . Le résultat sera un DVD avec une seule session. Pour faire passer un DVD-RW dans le format “restricted overwrite”, la commande suivante doit être utilisée: &prompt.root; dvd+rw-format /dev/cd0 Pour revenir au format séquentiel, utilisez: &prompt.root; dvd+rw-format -blank=full /dev/cd0 Multi-sessions Très peu de lecteurs de DVD-ROMs supportent les DVDs multi-sessions, ils ne liront, dans le meilleur des cas, que la première session. Les DVD+R, DVD-R et DVD-RW en mode séquentiel peuvent accepter de multiples sessions, la notion de multiples sessions n'existe pas pour les formats DVD+RW et DVD-RW en mode “restricted overwrite”. Utiliser la commande suivante après une session initiale (non fermée) sur un DVD+R, DVD-R, ou DVD-RW en mode séquentiel, ajoutera une nouvelle session sur le disque: &prompt.root; growisofs -M /dev/cd0 -J -R /path/to/nextdata L'utilisation de cette ligne de commande avec un DVD+RW ou un DVD-RW en mode “restricted overwrite” aura pour effet d'ajouter les données en fusionnant la nouvelle session avec celle déjà présente. Le résultat sera un disque mono-session. C'est la méthode utilisée pour ajouter des données sur ces médias après une écriture initiale. De l'espace sur le médium est utilisé entre chaque session pour la fin et le début des sessions. Par conséquent, tout ajout de données devrait se faire suivant une quantité importante de données pour optimiser l'espace sur le disque. Le nombre de sessions est limité à 154 pour un DVD+R, environ 2000 pour un DVD-R, et 127 pour un DVD+R double couche. Pour plus d'informations Pour obtenir plus d'informations sur un DVD, la commande dvd+rw-mediainfo /dev/cd0 peut être exécutée avec le disque dans le lecteur. Plus d'informations sur les utilitaires dvd+rw-tools peuvent être trouvées dans la page de manuel de &man.growisofs.1;, sur le site Web de dvd+rw-tools et dans les archives de la liste de diffusion cdwrite. La sortie de la commande dvd+rw-mediainfo sur le résultat de la gravure ou le disque posant problème est obligatoire avec tout rapport de problème. Sans cette sortie, il sera quasiment impossible de vous aider. Utiliser un disque DVD-RAM DVD DVD-RAM Configuration Les graveurs de DVD-RAM sont fournis soit avec une interface SCSI soit une interface ATAPI. Dans le cas des périphériques ATAPI, l'accès DMA doit être activé, cela peut être fait en ajoutant la ligne suivante au fichier /boot/loader.conf: hw.ata.atapi_dma="1" Préparer le disque Comme précisé dans l'introduction de cette section, un DVD-RAM peut être vu comme un disque dur extractible. Comme tout autre disque dur le DVD-RAM doit être préparé avant la première utilisation. Dans l'exemple, l'intégralité de l'espace sur le disque sera utilisé par un système de fichiers UFS2 standard: &prompt.root; dd if=/dev/zero of=/dev/acd0 count=2 &prompt.root; bsdlabel -Bw acd0 &prompt.root; newfs /dev/acd0 Le périphérique DVD acd0 doit être modifié en fonction de la configuration. Utiliser le disque Une fois les opérations précédentes effectuées sur le DVD-RAM, il peut être monté comme un disque dur classique: &prompt.root; mount /dev/acd0 /mnt Après cela, on pourra lire et écrire sur le DVD-RAM. Création et utilisation de disquettes JulioMerinoTravail original de MartinKarlssonRéécrit par Sauvegarder des données sur disquette est parfois utile, par exemple quand on a pas d'autre support de stockage amovible de disponible ou quand on doit transférer de petites quantités de données sur un autre ordinateur. Cette section expliquera comment utiliser des disquettes sous &os;. Elle couvrira principalement le formatage et l'utilisation de disquettes DOS de 3.5pouces, mais les concepts exposés sont identiques pour d'autres formats de disquettes. Formater des disquettes Le périphérique On accède aux disquettes par l'intermédiaire d'entrées dans /dev, comme pour tout autre périphérique. Pour accéder directement à la disquette, utilisez simplement /dev/fdN. Le formatage Une disquette doit subir un formatage bas niveau avant d'être utilisable. Il est généralement réalisé par le constructeur, mais le formatage est une bonne manière de contrôler l'intégrité du support. Bien qu'il soit possible de forcer une plus grande (ou plus petite) capacité, 1440Ko est celle pour laquelle sont conçues la plupart des disquettes. Pour effectuer un formatage bas niveau d'une disquette vous devez utiliser &man.fdformat.1;. L'utilitaire attend le nom du périphérique en argument. Notez tout message d'erreur, sachant que cela peut aider à déterminer si la disquette est bonne ou défectueuse. Formatage des disquettes Utilisez un des périphériques /dev/fdN.size, pour formater la disquette. Insérez une disquette 3.5pouces dans votre lecteur et tapez: &prompt.root; /usr/sbin/fdformat -f 1440 /dev/fd0 Le label de disque Après le formatage bas niveau du disque, vous devrez y placer un label de disque. Ce label sera détruit plus tard, mais il est nécessaire au système pour déterminer par la suite la taille et la géométrie du disque. Le nouveau label de disque prendra l'intégralité du disque, et contiendra l'information correcte sur la géométrie de la disquette. Les différentes géométries possibles pour le label sont listées dans /etc/disktab. Vous pouvez maintenant exécuter &man.bsdlabel.8; de la façon suivante: &prompt.root; /sbin/bsdlabel -B -w /dev/fd0 fd1440 Le système de fichiers La disquette est maintenant fin prête pour un formatage haut niveau. Cette opération placera un nouveau système de fichiers sur la disquette, qui permettra à &os; d'écrire et de lire sur le disque. Après la création du nouveau système de fichiers, le label disque est détruit, aussi si vous désirez reformater le disque, vous devrez recréer le label de disque à nouveau. Le système de fichiers de la disquette peut soit être de l'UFS soit utiliser le système FAT. Le système FAT est généralement un meilleur choix pour les disquettes. Pour placer un nouveau système de fichier sur la disquette faites ceci: &prompt.root; /sbin/newfs_msdos /dev/fd0 La disquette est maintenant prête à être utilisée. Utilisation de la disquette Pour utiliser la disquette, montez-la avec &man.mount.msdosfs.8;. On peut également utiliser emulators/mtools du catalogue des logiciels portés. Créer et utiliser les bandes magnétiques bande magnétique Les principaux types de bandes sont les 4mm, 8mm, QIC, les mini-cartouches et les DLTs. Bandes 4mm (DDS: “Digital Data Storage”) bande magnétique bandes DDS (4mm) bande magnétique bandes QIC Les bandes 4mm sont en train de remplacer les bandes QIC comme le format usuel de sauvegarde pour les stations de travail. Cette tendance s'est accélérée quand Conner a racheté Archive, un des leaders de la fabrication des lecteurs QIC, et a arrêté la production de ces derniers. Les lecteurs 4mm sont petits et silencieux mais n'ont pas la réputation de fiabilité des lecteurs 8mm. Les cartouches sont moins coûteuse et plus petites (3 x 2 x 0.5 pouces, 76 x 51 x 12 mm) que les cartouches 8mm. Les cartouches 4mm, tout comme les 8mm, ont une durée de vie faible car elles utilisent un procédé de lecture/écriture en hélice. Le débit de ces lecteurs va de ~150 Ko/s à ~500 Ko/s au maximum. Leur capacité de varie de 1.3 Go à 2.0 Go. La compression matérielle, disponible sur la plupart des lecteurs, double approximativement leur capacité. Les unités multi-lecteurs peuvent avoir jusqu'à 6 lecteurs dans une seule tour avec changement automatique de bande. La capacité totale atteint 240 Go. Le standard DDS-3 supporte maintenant des capacités de bande jusqu'à 12 Go (ou 24 Go compressés). Les lecteurs 4mm, comme les lecteurs 8mm, utilisent un procédé de lecture/écriture en hélice. Tous les avantages et les inconvénients de ce procédé s'appliquent aux deux types de lecteurs. Les bandes doivent être changées après 2000 utilisations ou 100 sauvegardes complètes. Bandes 8mm (Exabyte) bande magnétique Bandes Exabyte (8mm) Les unités de bandes 8mm sont les lecteurs de bandes SCSI les plus courant; c'est le meilleur choix de bandes amovibles. Presque chaque site dispose d'une unité Exabyte 2 Go 8mm. Les lecteurs 8mm sont fiables, pratiques et silencieux. Les cartouches sont bon marché et d'encombrement faible (4.8 x 3.3 x 0.6 pouces; 122 x 84 x 15 mm). Un des inconvénients de la bande 8mm est la durée de vie relativement courte des bandes et des têtes de lectures en raison de la grande vitesse de défilement de la bande devant les têtes. Leur débit va de ~250 Ko/s à ~500 Ko/s. Leur capacité commence à 300 Mo jusqu'à 7 Go. La compression matérielle, disponible sur la plupart des lecteurs, double approximativement la capacité. Ces lecteurs sont disponibles sous forme d'unité simple ou multiple accueillant 6 lecteurs et 120 bandes. Les bandes sont changées automatiquement par l'unité. Ils peuvent gérer une capacité de stockage de plus de 840 Go. Le lecteur Exabyte “Mammoth” supporte 12 Go sur une seule bande (24 Go compressé) et coûte approximativement le double d'un lecteur classique. L'enregistrement des données sur la bande utilise un procédé en hélice, les têtes sont positionnées en biais par rapport à la bande (environ 6 degrés). La bande fait un angle de 270 degrés avec le cylindre sur lequel se trouvent les têtes. Ce cylindre tourne en même temps que la bande défile. Il en résulte donc une grande densité de données et des pistes très serrées qui vont de biais d'un bord à l'autre de la bande. QIC bande magnétique QIC-150 Les bandes et les lecteurs QIC-150 sont, peut-être, le format le plus courant. Les lecteurs QIC sont les moins chers des supports de sauvegarde “sérieux”. Leur inconvénient par contre est le coût des bandes. Les bandes QIC sont chères comparées aux bandes 8mm ou 4mm, jusqu'à 5 fois le coût au Go. Mais, si une demi-douzaine de bandes vous suffit, le format QIC peut être le bon choix. QIC est le format le plus répandu. Chaque site dispose d'un lecteur QIC d'une densité ou d'une autre. C'est là la difficulté, il existe de nombreuses densités pour des bandes physiquement semblables (parfois même identiques). Les lecteurs QIC ne sont pas silencieux. Ces lecteurs se positionnent bruyamment avant d'enregistrer des données et ont les entend clairement lors de lecture, écriture ou recherche. Les bandes QIC sont volumineuses: 6 x 4 x 0.7 pouces (152 x 102 x 17 mm). Leur débit va de ~150 Ko/s à ~500 Ko/s. Leur capacité varie de 40 Mo à 15 Go. La compression matérielle est disponible sur de nombreux lecteurs récents. Les lecteurs QIC sont de moins en moins utilisés, ils sont supplantés par les lecteurs DAT. Les données sont enregistrées sur des pistes sur la bande. Les pistes sont parallèles à la bande et vont d'une extrémité à l'autre. Le nombre de piste, et par conséquent la largeur des pistes, varie avec la capacité de la bande. La plupart des nouveaux lecteurs fournissent au moins une compatibilité descendante en lecture (mais aussi en écriture). Le format QIC a une bonne réputation de sécurité des données (la mécanique est plus simple et plus robuste que les lecteurs à système en hélice). Les bandes devraient être changée après 5000 sauvegardes. DLT bande magnétique DLT Les DLT ont le taux de transfert le plus élevé de tous les types de lecteurs décrits ici. La bande d'1/2" (12.5mm) est contenue dans une seule cartouche (4 x 4 x 1 pouces; 100 x 100 x 25 mm). La cartouche est munie d'une trappe basculante le long d'un côté de la cartouche. Le lecteur ouvre cette trappe pour saisir l'amorce de la bande. Cette amorce comporte une découpe ovale que le lecteur utilise pour “crocheter” la bande. La bobine d'entraînement est située dans le lecteur. Tous les autres types de cartouches décrits ici (les bandes 9 pistes sont la seule exception) ont les bobines de stockage et d'entraînement dans la cartouche elle-même. Leur débit est d'environ 1.5 Mo/s, trois fois celui des lecteurs 4mm, 8mm, ou QIC. La capacité d'une bande varie de 10 Go à 20 Go pour une unité simple. Les lecteurs sont disponibles en unités multi-bandes avec changeurs et multi-lecteurs contenant de 5 à 900 bandes et 1 à 20 lecteurs, fournissant une capacité de stockage allant de 50 Go à 9 TO. Avec la compression, le format DLT type IV supporte jusqu'à une capacité de 70 Go. Les données sont enregistrées sur la bande sur des pistes parallèles à la direction de défilement (comme pour les bandes QIC). Deux pistes sont écrites à la fois. La durée de vie des têtes de lecture/écriture est relativement longue; une fois que la bande s'arrête, il n'y a pas de déplacement des têtes par rapport à la bande. AIT bande magnétique AIT AIT est le nouveau format de Sony, il peut supporter jusqu'à 50 Go par bande (avec compression). Les bandes contiennent un circuit mémoire qui contient un index du contenu de la bande. Cet index peut être lu rapidement par le lecteur pour déterminer l'emplacement de fichiers sur la bande, au lieu des nombreuses minutes nécessaires aux autres types de bande. Des programmes comme SAMS:Alexandria peuvent contrôler quarante ou plus ensemble de bandes AIT, communiquant directement avec le circuit mémoire de la bande pour en afficher le contenu à l'écran, déterminer quels fichiers ont été sauvegardé sur quelle bande, localiser la bonne bande, la charger, et en restaurer les données. Les ensembles de ce type reviennent aux alentour des 20000 dollars, les rendant inaccessibles à l'amateur éclairé. Utiliser une bande neuve pour la première fois La première fois que vous essayez de lire ou d'écrire sur une bande vierge, l'opération échoue. Les messages affichés par la console devraient être du type: sa0(ncr1:4:0): NOT READY asc:4,1 sa0(ncr1:4:0): Logical unit is in process of becoming ready La bande ne contient pas de bloc d'identification (bloc numéro 0). Tous les lecteurs QIC depuis l'adoption du standard QIC-525 écrivent un bloc d'identification sur la bande. Il y a alors deux solutions: mt fsf 1 fait écrire au lecteur un bloc d'identification sur la bande. Utiliser le bouton en face avant pour éjecter la bande. Ré-insérer la bande et utiliser &man.dump.8; pour écrire dessus. &man.dump.8; produira l'erreur DUMP: End of tape detected et la console affichera: HARDWARE FAILURE info:280 asc:80,96. Rembobiner la bande avec: mt rewind. Les manipulations ultérieures sur la bande fonctionneront. Sauvegardes sur disquettes Puis-je utiliser des disquettes pour la sauvegarde des mes données? disquettes de sauvegarde disquettes Les disquettes ne sont pas des supports adaptés à la réalisation de sauvegardes étant donné que: Le support n'est pas fiable, spécialement sur de longues périodes de temps. Les opérations de sauvegarde et de restauration sont très lentes. Elles ont une capacité très limitée (le jour où l'on pourra sauvegarder l'intégralité d'un disque dur sur une douzaine de disquette n'est pas encore arrivé). Cependant, si vous n'avez pas d'autres méthodes pour sauvegarder vos données alors les disquettes sont mieux que pas de sauvegardes du tout. Si vous devez utiliser les disquettes, alors assurez-vous que vous en utiliser des disquettes de bonne qualité. Les disquettes qui traînent sur le bureau depuis quelques années sont un mauvais choix. Idéalement utilisez de des disquettes neuves en provenance d'un fabricant renommé. Alors, comment je sauvegarde mes données sur disquettes? La meilleur façon de sauvegarder sur disquette est d'utiliser la commande &man.tar.1; avec l'option (volume multiple), qui autorise la répartition des sauvegardes sur plusieurs disquettes. Pour sauvegarder tous les fichiers du répertoire courant et des sous-répertoires (en tant que root): &prompt.root; tar Mcvf /dev/fd0 * Quand la première disquette est pleine &man.tar.1; vous réclamera d'introduire le volume suivant (parce que &man.tar.1; est indépendant du support il parle en terme de volume; dans notre contexte cela signifie disquette). Prepare volume #2 for /dev/fd0 and hit return: Cette opération est répétée (avec incrémentation du numéro de volume) jusqu'à ce que les fichiers spécifiés soient sauvegardés. Puis-je sauvegarder mes sauvegardes? tar gzip compression Malheureusement, &man.tar.1; ne permettra pas l'utilisation de l'option pour les archives multi-volumes. Vous pourrez, bien sûr, utiliser &man.gzip.1; sur tous les fichiers, les archiver avec &man.tar.1; sur disquettes, puis décompresser les fichiers avec &man.gunzip.1;! Comment puis-je restaurer mes sauvegardes? Pour restaurer une archive complète utiliser: &prompt.root; tar Mxvf /dev/fd0 Vous pouvez utiliser deux manières pour restaurer uniquement certains fichiers. Tout d'abord, vous pouvez commencer avec la première disquette et utiliser: &prompt.root; tar Mxvf /dev/fd0 nomdufichier &man.tar.1; vous demandera d'insérer les disquettes suivantes jusqu'à trouver le fichier recherché. Alternativement, si vous savez sur quelle disquette le fichier se trouve alors vous pouvez simplement insérer cette disquette et utiliser la commande précédente. Notez que si le premier fichier sur la disquette est la suite d'un fichier de la précédente disquette alors &man.tar.1; vous avertira qu'il ne peut le restaurer, même si vous ne le voulez pas! Stratégies de sauvegarde LowellGilbertTravail original de La première chose a faire lors de la mise en place d'un plan de sauvegarde est de s'assurer que l'ensemble des problèmes suivants sera couvert: Panne d'un disque Suppression accidentelle de fichiers Corruption aléatoire de fichiers Destruction complète de la machine (par exemple suite à un incendie), avec destruction des sauvegardes stockées sur le même site. Il est parfaitement possible que certains systèmes utilisent une technique différente pour chacun des problèmes évoqués ci-dessus. En dehors des systèmes personnels avec des données peu importantes, il est peu probable qu'une seule technique puisse répondre à l'ensemble de ces risques. Quelques-unes des techniques à notre disposition sont: Des archives de tout le système, sauvegardées sur un support fiable et à l'extérieur du site. C'est une protection réelle contre tous les problèmes précédemment cités, mais cette méthode est lente et peu pratique lors des restaurations. Vous pouvez conserver des copies de ces sauvegardes sur site et/ou en ligne, mais il y aura toujours des difficultés lors de la restauration des fichiers, en particulier pour les utilisateurs sans droits. Instantané de systèmes de fichiers. Cet outil n'est vraiment utile que dans le cas d'une suppression accidentelle de fichiers, mais il l'est vraiment dans ce cas; de plus cette méthode est rapide et simple à employer. Copies de l'intégralité des systèmes de fichiers et/ou des disques (par une utilisation régulière de &man.rsync.1; sur l'intégralité de la machine par exemple). C'est le procédé en général le plus utile dans le cas des réseaux avec des besoins spécifiques. Dans le cas d'une protection contre les pannes disques, cette méthode est normalement inférieure à un système RAID. Pour la restauration de fichiers supprimés accidentellement, c'est comparable aux instantanés UFS, c'est plus une question de préférence. RAID. Réduit ou évite les périodes où le système est inutilisable quand un disque tombe en panne. Avec l'inconvénient d'avoir à faire face à des pannes disques plus fréquentes (parce que vous utilisez plus de disques), mais avec cependant une moindre urgence. Le contrôle des empreintes de fichiers. L'utilitaire &man.mtree.8; est très utile dans ce cas. Bien que cela ne soit pas une technique de sauvegarde des données, ce contrôle aidera à garantir que vous serez averti quand vous devrez ressortir vos sauvegardes. C'est tout particulièrement important dans le cas de sauvegardes hors site, et ces empreintes devraient être vérifiées régulièrement. Il est relativement simple de trouver d'autres solutions, nombreuses sont celles qui sont des variations des techniques présentées ci-dessus. Des besoins spécifiques conduiront généralement à des solutions spécifiques (par exemple sauvegarder une base de données durant son utilisation demande une étape intermédiaire spécifique au logiciel de base de données). L'important est de connaître les dangers contre lesquels vous désirez vous protéger, et comment vous ferez face à chacun d'entre eux. Sauvegardes Les trois principaux programmes de sauvegarde sont: &man.dump.8;, &man.tar.1;, et &man.cpio.1;. Dump et Restore programmes de sauvegarde dump / restore dump restore &man.dump.8; et &man.restore.8; sont les programmes de sauvegarde traditionnels d'&unix;. Ils opèrent sur le disque comme sur une suite de blocs disque, en dessous du niveau d'abstraction que constituent les fichiers, liens et répertoires créés par les systèmes de fichiers. Le programme &man.dump.8; sauvegarde l'intégralité d'un système de fichiers d'un périphérique. Il est incapable de sauvegarder seulement une partie d'un système de fichiers ou une arborescence de répertoires s'étalant sur plus d'un système de fichiers. Le programme &man.dump.8; n'écrit pas de fichiers ou des répertoires sur la bande, mais écrit plutôt les blocs de données brutes dont sont constitués les fichiers et les répertoires. Si vous utilisez &man.dump.8; sur votre répertoire racine, vous ne sauvegarderez pas /home, /usr ou beaucoup d'autres répertoires puisque que ces derniers sont généralement des points de montages pour d'autres systèmes de fichiers ou des liens symboliques vers ces systèmes de fichiers. L'utilitaire &man.dump.8; a quelques particularités datant de ses débuts sous la version 6 d'AT&T UNIX (circa 1975). Les paramètres par défaut conviennent aux bandes 9 pistes (6250 bpi), et non aux supports à haute densité d'aujourd'hui (jusqu'à 62182 ftpi). Il faut surcharger ces valeurs par défaut sur la ligne de commande pour utiliser la capacité des bandes actuelles. .rhosts Il est également possible de sauvegarder les données par l'intermédiaire d'un réseau sur un lecteur de bande se trouvant sur une autre ordinateur à l'aide des commandes rdump et rrestore. Ces deux programmes utilisent &man.rcmd.3; et &man.ruserok.3; pour accéder à l'unité de bandes distante. Cependant, l'utilisateur effectuant une sauvegarde doit être présent dans le fichier .rhosts sur la machine distante. Les arguments de &man.rdump.8; et &man.rrestore.8; doivent être compatibles avec une utilisation sur la machine distante. Quand on sauvegarde une machine FreeBSD sur un lecteur Exabyte installé sur un ordinateur Sun appelé komodo, utilisez: &prompt.root; /sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nsa8 /dev/da0a 2>&1 Attention: il y a des conséquences pour la sécurité à utiliser l'authentification .rhosts. Evaluez soigneusement votre situation. Il est également possible d'utiliser &man.dump.8; et &man.restore.8; d'une façon plus sécurisée sur &man.ssh.1;. Utiliser &man.dump.8; sur <application>ssh</application> &prompt.root; /sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \ targetuser@targetmachine.example.com dd of=/mybigfiles/dump-usr-l0.gz Ou en utilisant une fonction interne de dump, positionner la variable d'environnement RSH: Utiliser <command>dump</command> sur <application>ssh</application> avec la variable <envar>RSH</envar> positionnée &prompt.root; RSH=/usr/bin/ssh /sbin/dump -0uan -f targetuser@targetmachine.example.com:/dev/sa0 /usr <command>tar</command> programmes de sauvegarde tar Le programme &man.tar.1; date aussi de la Version 6 d'AT&T UNIX (circa 1975). &man.tar.1; travaille en coopération avec le système de fichiers; il permet d'écrire des fichiers et des répertoires sur bandes. &man.tar.1; ne supporte pas toutes les options permises par &man.cpio.1;, mais ne demande pas l'inhabituelle concaténation de commandes qu'utilise &man.cpio.1; tar Sous &os; 5.3 et versions suivantes, GNU tar et la version par défaut bsdtar sont disponibles. La version GNU peut être invoquée avec la commande gtar. Elle supporte les sauvegardes sur des périphériques distants et cela avec la même syntaxe que &man.rdump.8;. Pour sauvegarder avec &man.tar.1; sur une unité Exabyte connectée sur une machine Sun appelée komodo, utilisez: &prompt.root; /usr/bin/gtar cf komodo:/dev/nsa8 . 2>&1 La même opération peut être effectuée avec bsdtar en utilisant un tuyau et &man.rsh.1; pour envoyer les données sur un lecteur de bande distant: &prompt.root; tar cf - . | rsh hostname dd of=tape-device obs=20b Si vous êtes inquiet au sujet de la sécurité de sauvegardes par réseau, vous devriez utiliser la commande &man.ssh.1; à la place de &man.rsh.1;. <command>cpio</command> programmes de sauvegarde cpio &man.cpio.1; est le programme &unix; original pour l'échange de fichiers par bandes magnétiques. &man.cpio.1; dispose d'options (parmi beaucoup d'autres) pour intervertir les octets, utiliser de nombreux différents formats, et envoyer les données à d'autres programmes. Cette dernière caractéristique fait de &man.cpio.1; un excellent choix pour les supports d'installation. &man.cpio.1; ne sait pas parcourir une arborescence de répertoires et il faut lui passer la liste des fichiers via stdin. cpio &man.cpio.1; ne supporte pas les sauvegardes par le réseau. Vous pouvez utiliser un tuyau et &man.rsh.1; pour envoyer les données sur un lecteur de bande distant: &prompt.root; for f in directory_list; do find $f >> backup.list done &prompt.root; cpio -v -o --format=newc < backup.list | ssh user@host "cat > backup_device" directory_list est la liste des répertoires que vous désirez sauvegarder, user@host est l'ensemble utilisateur/nom de machine qui effectuera les sauvegardes, et backup_device représente l'unité où seront écrites les sauvegardes (e.g., /dev/nsa0). <command>pax</command> programmes de sauvegarde pax pax POSIX IEEE &man.pax.1; est la réponse IEEE/&posix; à &man.tar.1; et &man.cpio.1;. Au fil des ans les différentes versions de &man.tar.1; et &man.cpio.1; sont devenues légèrement incompatibles. Aussi, plutôt que de batailler pour les standardiser entièrement, &posix; a défini un nouvel utilitaire d'archivage. &man.pax.1; tente de lire et d'écrire nombre des divers formats &man.tar.1; et &man.cpio.1;, en plus de ses propres nouveaux formats. Son ensemble de commandes ressemble plus à celui de &man.cpio.1; qu'à celui de &man.tar.1;. <application>Amanda</application> programmes de sauvegarde Amanda Amanda Amanda (Advanced Maryland Network Disk Archiver—Système Avancé d'Archivage de Disques en Réseau du Maryland) est un système d'archivage client/serveur plutôt qu'un simple programme. Un serveur Amanda archivera sur une seule unité de bandes un nombre quelconque d'ordinateurs disposant de clients Amanda et un accès réseau au serveur Amanda. Un problème classique sur les sites qui ont de nombreux disques volumineux est que le temps nécessaire pour sauvegarder directement les données sur la bande dépasse le temps alloué à cette tâche. Amanda résout ce problème. Amanda peut utiliser un “disque intermédiaire” pour sauvegarder plusieurs systèmes de fichiers à la fois. Amanda des “jeux d'archive”: un ensemble de bandes utilisé pour une période donnée pour créer une sauvegarde complète de tous les systèmes de fichiers listé dans le fichier de configuration d'Amanda. Le “jeu d'archive” contient également les sauvegardes nocturnes incrémentales (ou différentielles) de tous les systèmes de fichiers. Pour restaurer une système de fichiers endommagé, il faut la sauvegarde complète la plus récente et les sauvegardes incrémentales. Le fichier de configuration permet un contrôle en finesse des sauvegardes et du trafic réseau qu'Amanda génère. Amanda utilisera n'importe quel des programmes de sauvegarde décrits plus haut pour écrire les données sur bande. Amanda est disponible sous forme de logiciel porté ou de logiciel pré-compilé, il n'est pas installé par défaut. Ne rien faire “Ne rien faire” n'est pas un logiciel, mais c'est la stratégie de sauvegarde la plus utilisée. Il n'y a aucun investissement initial. Il n'y a pas de de planification des sauvegardes à suivre. Juste dire non. Si quelque chose arrive à vos données, souriez et débrouillez-vous! Si votre temps et vos données ne valent pas grand chose, alors “Ne rien faire” est le programme de sauvegarde le mieux adapté à votre ordinateur. Mais prenez garde, &unix; est un outil utile, et vous pouvez vous rendre compte au bout de six mois que vous disposez d'une collection de fichiers qui vous sont utiles. “Ne rien faire” est la bonne méthode de sauvegarde pour /usr/obj et les autres répertoires qui peuvent facilement être recréés par votre ordinateur. Un exemple est les fichiers qui constituent la version HTML ou &postscript; de ce manuel. Ces fichiers ont été générés à partir de fichiers SGML. Faire des sauvegardes des fichiers HTML ou &postscript; n'est pas nécessaire. Les fichiers source SGML sont sauvegardés régulièrement. Quel est le meilleur programme de sauvegarde? LISA &man.dump.8; Point. Elizabeth D. Zwicky a soumis à rude épreuve tous les programmes de sauvegarde dont nous avons parlé. Le choix de &man.dump.8; s'impose pour préserver toutes vos données et les particularités des systèmes de fichiers &unix;. Elizabeth a créé des systèmes de fichiers avec une grande variété de particularités inhabituelles (et quelques unes pas tellement inhabituelles) et a testé chacun des programmes en faisant une sauvegarde et une restauration de ces systèmes de fichiers. Parmi les spécificités testées: fichiers avec des trous, fichiers avec des trous et des blocs de caractères “null”, fichiers dont les noms comportent des caractères inhabituels, les fichiers illisibles ou impossible à modifier, les périphériques, fichiers dont la taille change pendant la sauvegarde, fichiers créés ou détruits en cours de sauvegarde et bien plus. Elle a présenté les résultats de ces tests au LISA V en Octobre 1991. Voir les tests d'endurance des programmes de sauvegarde et d'archivage. Procédure de restauration d'urgence Avant le désastre Il y a quatre étapes à mettre en oeuvre en prévision d'un désastre éventuel. bsdlabel Tout d'abord, imprimez le label de chacun de vos disques (par exemple bsdlabel da0 | lpr), votre table des systèmes de fichiers (/etc/fstab) et tous les messages de démarrage, en deux exemplaires. disquette de reprise d'urgence Deuxièmement, vérifiez que vos disquettes de démarrage et de reprise d'urgence (boot.flp et fixit.flp) incluent tous vos périphériques. La méthode la plus simple pour vérifier est de redémarrer avec la disquette de démarrage dans le lecteur et contrôler les messages de démarrage. Si tous vos périphériques sont listés et opérationnels, passez à la troisième étape. Sinon, vous devez créer deux disquettes de démarrage sur-mesure avec un noyau qui puisse monter tous vos disques et accéder à votre unité de bandes. Ces disquettes doivent contenir: &man.fdisk.8;, &man.bsdlabel.8;, &man.newfs.8;, &man.mount.8;, et le programme de sauvegarde que vous utilisez. L'édition de liens de ces programmes doit être statique. Si vous utilisez &man.dump.8;, la disquette doit contenir &man.restore.8;. Troisièmement, faites régulièrement des sauvegardes sur bandes. Toutes les modifications effectuées après votre dernière sauvegarde peuvent irrémédiablement perdues. Protégez vos bandes de sauvegarde en écriture. Quatrièmement, testez les disquettes (soit boot.flp et fixit.flp soit les deux disquettes sur-mesure que vous avez créées à la seconde étape) et vos bandes de sauvegarde. Prenez note de la procédure. Conservez ces notes avec la disquette de démarrage, les impressions et les bandes de sauvegarde. Vous serez si préoccupé quand vous devrez restaurer que ces notes peuvent vous éviter de détruire vos bandes de sauvegarde (Comment? Au lieu de tar xvf /dev/sa0, vous pourriez taper accidentellement tar cvf /dev/sa0, ce qui écraserait votre bande de sauvegarde). Par mesure de sécurité, créez une disquette de démarrage et deux bandes de sauvegarde à chaque fois. Conservez-les dans un lieu éloigné. Un endroit éloigné n'est PAS le sous-sol du même bâtiment. Un certain nombre de compagnies du World Trade Center l'ont appris à leurs dépends. Un endroit éloigné doit être physiquement séparé de vos ordinateurs et de vos disques par une distance significative. Procédure de création d'une disquette de démarrage /mnt/sbin/init gzip -c -best /sbin/fsck > /mnt/sbin/fsck gzip -c -best /sbin/mount > /mnt/sbin/mount gzip -c -best /sbin/halt > /mnt/sbin/halt gzip -c -best /sbin/restore > /mnt/sbin/restore gzip -c -best /bin/sh > /mnt/bin/sh gzip -c -best /bin/sync > /mnt/bin/sync cp /root/.profile /mnt/root cp -f /dev/MAKEDEV /mnt/dev chmod 755 /mnt/dev/MAKEDEV chmod 500 /mnt/sbin/init chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt chmod 555 /mnt/bin/sh /mnt/bin/sync chmod 6555 /mnt/sbin/restore # # create the devices nodes # cd /mnt/dev ./MAKEDEV std ./MAKEDEV da0 ./MAKEDEV da1 ./MAKEDEV da2 ./MAKEDEV sa0 ./MAKEDEV pty0 cd / # # create minimum file system table # cat < /mnt/etc/fstab <<EOM /dev/fd0a / ufs rw 1 1 EOM # # create minimum passwd file # cat < /mnt/etc/passwd <<EOM root:*:0:0:Charlie &:/root:/bin/sh EOM cat < /mnt/etc/master.passwd <<EOM root::0:0::0:0:Charlie &:/root:/bin/sh EOM chmod 600 /mnt/etc/master.passwd chmod 644 /mnt/etc/passwd /usr/sbin/pwd_mkdb -d/mnt/etc /mnt/etc/master.passwd # # umount the floppy and inform the user # /sbin/umount /mnt echo "The floppy has been unmounted and is now ready."]]> Après le désastre La question cruciale est: votre matériel a-t-il survécu? Vous avez régulièrement fait des sauvegardes, vous n'avez donc pas besoin de vous inquiéter pour les fichiers et les programmes. Si le matériel a subi des dégâts, remplacez tout d'abord ce qui a été endommagé avant de tenter d'utiliser l'ordinateur. Si votre matériel est en état, contrôlez vos disquettes. Si vous utilisez une disquette de démarrage personnalisée, démarrez en mode mono-utilisateur (tapez -s à l'invite boot:). Sautez le paragraphe suivant. Si vous utilisez les disquettes boot.flp et fixit.flp, continuez à lire. Mettre la disquette boot.flp dans le premier lecteur et démarrez l'ordinateur. Le menu d'installation d'origine s'affiche à l'écran. Choisissez l'option Fixit--Repair mode with CDROM or floppy.. Insérez la disquette fixit.flp quand on vous la demande. &man.restore.8; et les autres programmes dont vous avez besoin sont situés dans le répertoire /mnt2/rescue (/mnt2/stand pour les versions de &os; antérieures à la 5.2). Restaurez chaque système de fichiers séparément. mount partition racine bsdlabel newfs Essayez &man.mount.8; (e.g. mount /dev/da0a /mnt) sur la partition racine de votre premier disque. Si le label du disque est endommagé, utilisez &man.bsdlabel.8; pour repartitionner et libeller le disque conformément au label que vous avez imprimé et mis de côté. Utilisez &man.newfs.8; pour recréer les systèmes de fichiers. Remontez la partition racine de la disquette en lecture/écriture (mount -u -o rw /mnt). Utilisez votre programme de restauration et vos bandes de sauvegardes pour restaurer les données de ce système de fichiers (e.g. restore vrf /dev/sa0). Démontez le système de fichiers (e.g. umount /mnt). Répétez l'opération pour chacun des systèmes de fichiers endommagés. Une fois que le système fonctionne à nouveau, faites une sauvegarde sur de nouvelles bandes. Ce qui a causé la panne ou la perte de données peut se reproduire. Une heure de perdue maintenant peut vous épargner d'autres ennuis plus tard. Systèmes de fichiers réseaux, en mémoire et sauvegardés sur fichier MarcFonvieilleRéorganisée et augmentée par disques virtuels disques virtuels En plus des disques que vous introduisez physiquement dans votre ordinateur: disquettes, CD, disques durs, et ainsi de suite; d'autres formes de disques sont gérées par &os; — les disques virtuels. NFS Coda disques mémoire Ceux-ci comprennent les systèmes de fichiers réseaux comme le NFS et Coda, les systèmes de fichiers en mémoire et les systèmes de fichiers sauvegardé dans un fichier. En fonction de la version de &os; que vous utilisez, vous devrez utiliser des outils différents pour la création et l'utilisation de systèmes de fichiers en mémoire ou sauvegardé dans un fichier. Utilisez &man.devfs.5; pour allouer de façon transparente pour l'utilisateur les fichiers spéciaux de périphériques. Système de fichiers sauvegardé dans un fichier disques système de fichiers sauvegardé dans un fichier L'utilitaire &man.mdconfig.8; est utilisé pour configurer et activer les disques mémoires, &man.md.4;, sous &os;. Pour utiliser &man.mdconfig.8;, vous devez charger le module &man.md.4; ou en ajouter le support dans votre fichier de configuration du noyau: device md La commande &man.mdconfig.8; supporte trois sortes de disques virtuels en mémoire: les disques mémoire alloués avec &man.malloc.9;, les disques mémoires utilisant un fichier ou l'espace de pagination comme espace disque. Une des utilisations possibles est le montage d'images de disquettes ou de CDs conservées sous forme de fichier. Pour monter l'image d'un système de fichiers: Utilisation de <command>mdconfig</command> pour monter une image d'un système de fichiers &prompt.root; mdconfig -a -t vnode -f diskimage -u 0 &prompt.root; mount /dev/md0 /mnt Pour créer l'image d'un nouveau système de fichiers avec &man.mdconfig.8;: Création d'un nouveau disque sauvegardé sur fichier avec <command>mdconfig</command> &prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k 5120+0 records in 5120+0 records out &prompt.root; mdconfig -a -t vnode -f newimage -u 0 &prompt.root; bsdlabel -w md0 auto &prompt.root; newfs md0a /dev/md0a: 5.0MB (10224 sectors) block size 16384, fragment size 2048 using 4 cylinder groups of 1.25MB, 80 blks, 192 inodes. super-block backups (for fsck -b #) at: 160, 2720, 5280, 7840 &prompt.root; mount /dev/md0a /mnt &prompt.root; df /mnt Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/md0a 4710 4 4330 0% /mnt Si vous ne préciser pas de numéro d'unité avec l'option , &man.mdconfig.8; utilisera le mécanisme d'allocation automatique de &man.md.4; pour sélectionner un périphérique libre. Le nom de l'unité allouée s'affichera sur la sortie standard comme par exemple md4. Pour plus de détails concernant &man.mdconfig.8;, référez-vous à la page de manuel. L'outil &man.mdconfig.8; est très utile, cependant son utilisation demande de nombreuses lignes de commandes pour créer un système de fichiers sauvegardé sur fichier. &os; vient avec un outil appelé &man.mdmfs.8;, ce programme configure un disque &man.md.4; en utilisant &man.mdconfig.8;, y ajoute dessus un système de fichiers UFS en utilisant &man.newfs.8;, et le monte avec &man.mount.8;. Par exemple, si vous désirez créer et monter la même image de système de fichiers que précédemment, tapez simplement ce qui suit: Création et montage d'un disque sauvegardé sur fichier avec <command>mdmfs</command> &prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k 5120+0 records in 5120+0 records out &prompt.root; mdmfs -F newimage -s 5m md0 /mnt &prompt.root; df /mnt Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/md0 4718 4 4338 0% /mnt Si vous utilisez l'option sans numéro d'unité, &man.mdmfs.8; utilisera la fonction automatique de sélection d'unité de &man.md.4; pour choisir un périphérique non utilisé. Pour plus de détails au sujet de &man.mdmfs.8;, référez-vous à la page de manuel. Système de fichiers en mémoire disques système de fichiers en mémoire Pour un système de fichiers en mémoire la sauvegarde sur l'espace de pagination devrait être normalement utilisée. Utiliser l'espace de pagination ne signifie pas que le disque en mémoire sera par défaut sur l'espace de pagination, mais plutôt que le disque mémoire sera alloué sur une zone de mémoire qui pourra être sauvegardée sur l'espace de pagination si nécessaire. Il est également possible de créer un disque en mémoire dont la mémoire est allouée à l'aide de &man.malloc.9;, mais ce type de configuration, tout particulièrement dans le cas de disques de grande taille, peut donner lieu à une panique du système si le noyau se trouve à cours de mémoire. Création d'un disque mémoire avec <command>mdconfig</command> &prompt.root; mdconfig -a -t swap -s 5m -u 1 &prompt.root; newfs -U md1 /dev/md1: 5.0MB (10240 sectors) block size 16384, fragment size 2048 using 4 cylinder groups of 1.27MB, 81 blks, 192 inodes. with soft updates super-block backups (for fsck -b #) at: 160, 2752, 5344, 7936 &prompt.root; mount /dev/md1 /mnt &prompt.root; df /mnt Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/md1 4718 4 4338 0% /mnt Création d'un disque mémoire avec <command>mdmfs</command> &prompt.root; mdmfs -s 5m md2 /mnt &prompt.root; df /mnt Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/md2 4846 2 4458 0% /mnt Détacher un disque mémoire du système disques détacher un disque mémoire Quand un système de fichiers en mémoire ou sauvegardé dans un fichier n'est pas utilisé, vous devriez rendre au système toutes les ressources. La première chose à faire est de démonter le système de fichiers, ensuite utiliser &man.mdconfig.8; pour détacher le disque du système et rendre les ressources. Par exemple pour détacher et libérer toutes les ressources utilisées par /dev/md4: &prompt.root; mdconfig -d -u 4 Il est possible d'afficher des informations sur les périphériques &man.md.4; configurés en utilisant la commande mdconfig -l. Instantané (“Snapshot”) d'un système de fichiers TomRhodesContribution de Instantané de système de fichiers Snapshot &os; en association avec les Soft Updates offre une nouvelle caractéristique: les instantanés de systèmes de fichiers (“file system snapshots”). Les instantanés permettent à un utilisateur de créer des images d'un système de fichiers précis, et de les traiter comme un fichier. Les instantanés doivent être créés dans le système de fichiers sur lequel on veut effectuer l'opération, et un utilisateur ne pourra pas créer plus de 20 instantanés par système de fichiers. Les instantanés actifs sont enregistrés dans le superbloc, ils sont donc conservés durant les opérations de démontage et de remontage lors des redémarrages du système. Quand un instantané n'est plus requis, il peut être supprimé avec la commande standard &man.rm.1;. Les instantanés peuvent être supprimés dans n'importe quel ordre, cependant tout l'espace utilisé pourra ne pas être à nouveau disponible car un autre instantané réclamera éventuellement les blocs libérés. L'indicateur inaltérable est positionné lors de la création initiale de l'instantané. La commande &man.unlink.1; fait une exception pour les fichiers d'instantanés puisqu'elle autorise leur suppression. Les instantanés sont créés avec la commande &man.mount.8;. Pour placer un instantané de /var dans le fichier /var/snapshot/snap utilisez la commande suivante: &prompt.root; mount -u -o snapshot /var/snapshot/snap /var Alternativement, vous pouvez utiliser &man.mksnap.ffs.8; pour créer un instantané: &prompt.root; mksnap_ffs /var /var/snapshot/snap Les fichiers d'instantanés peuvent être localisés sur un système de fichiers (e.g. /var) en utilisant la commande &man.find.1;: &prompt.root; find /var -flags snapshot Une fois un instantané créé, ce dernier pourra avoir de nombreux usages: Certains administrateurs utiliseront un instantané pour des besoins de sauvegarde, car l'instantané peut être transféré sur CD ou bande. Un contrôle d'intégrité du système fichiers, &man.fsck.8;, pourra être effectué sur l'instantané. En supposant que le système de fichiers était propre quand il a été monté, vous devriez toujours obtenir un résultat positif (et non différent). C'est essentiellement que effectue le processus de &man.fsck.8; en tâche de fond (“background &man.fsck.8;”). Lancer l'utilitaire &man.dump.8; sur l'instantané. Une image cohérente du système de fichiers avec les paramètres temporels de l'instantané sera produite. &man.dump.8; peut également à partir d'un instantané, créer une image et puis supprimer l'instantané en une seule fois en utilisant l'indicateur dans la ligne de commande. Monter l'instantané comme une image figée du système de fichiers. Pour monter l'instantané /var/snapshot/snap lancer: &prompt.root; mdconfig -a -t vnode -f /var/snapshot/snap -u 4 &prompt.root; mount -r /dev/md4 /mnt Vous pouvez maintenant parcourir l'arborescence de votre système de fichiers /var figé monter sous /mnt. Tout sera au départ dans le même état que lors de la création de l'instantané. La seule exception est que les instantanés antérieurs apparaîtront sous la forme de fichiers vides. Quand l'utilisation d'un instantané est terminée, il peut être démonté avec: &prompt.root; umount /mnt &prompt.root; mdconfig -d -u 4 Pour plus d'informations sur les et les instantanés de systèmes de fichiers, et également de la documentation technique, vous pouvez consulter le site Web de Marshall Kirk McKusick à l'adresse http://www.mckusick.com/ Quotas d'utilisation des disques accounting espace disque quotas disque Les quotas sont une option du système d'exploitation qui vous permet de limiter la quantité d'espace disque et/ou le nombre de fichiers auxquels ont droit un utilisateur ou tous les utilisateurs d'un même groupe, sur un système de fichiers donné. On les utilise la plupart du temps sur les systèmes en temps partagé où il est souhaitable de limiter la quantité de ressources allouée à un utilisateur ou à un groupe. Cela évitera qu'un utilisateur ou un groupe d'utilisateur consomme tout l'espace disque. Configurer votre système pour pouvoir utiliser les quotas d'utilisation des disques Avant d'essayer de mettre en place des quotas disque, il est nécessaire de s'assurer que le noyau est configuré pour les quotas. Cela se fait en ajoutant la ligne suivante dans votre fichier de configuration du noyau: options QUOTA Cette option n'est pas activée par défaut dans le noyau GENERIC de base, vous devrez donc configurer, compiler et installer un noyau sur-mesure pour utiliser les quotas disque. Reportez-vous au chapitre pour plus d'informations sur la configuration du noyau. Ensuite vous devrez activer les quotas disques dans le fichier /etc/rc.conf. Pour cela, ajoutez la ligne: enable_quotas="YES" quotas disque contrôle Pour un contrôle plus fin des quotas au démarrage du système, il existe une variable supplémentaire de configuration. Normalement au démarrage, l'intégrité des quotas sur chaque système de fichiers est vérifiée par le programme &man.quotacheck.8;. Ce programme s'assure que les données de la base de données des quotas correspondent bien aux données présentes sur le système de fichiers. C'est un processus consommateur en temps qui affectera considérablement la durée de démarrage du système. Si vous désirez passer cette étape, une variable dans /etc/rc.conf est prévue à cet effet: check_quotas="NO" Vous devez enfin éditer le fichier /etc/fstab pour activer les quotas système de fichiers par système de fichiers. C'est là que vous pouvez soit activer les quotas par utilisateur ou par groupe soit les pour les deux sur tous vos systèmes de fichiers. Pour activer les quotas par utilisateur sur un système de fichiers, ajouter l'option dans le champ d'options sur l'entrée de /etc/fstab pour le système de fichiers sur lequel vous voulez activer les quotas. Par exemple: /dev/da1s2g /home ufs rw,userquota 1 2 De même, pour activer les quotas par groupe, utilisez l'option à la place de . Pour activer à la fois les quotas par utilisateur et par groupe, modifiez l'entrée de la façon suivante: /dev/da1s2g /home ufs rw,userquota,groupquota 1 2 Par défaut, les fichiers où sont définis les quotas dans le répertoire racine du système de fichiers sous les noms quota.user et quota.group, respectivement pour les quotas utilisateur et les quotas par groupe. Consultez la page de manuel &man.fstab.5; pour plus d'information. Bien que la page de manuel &man.fstab.5; indique que vous pouvez spécifier un autre emplacement pour ces fichiers, cela n'est pas recommandé parce que les divers utilitaires qui gèrent les quotas ne semblent pas les prendre correctement en compte. A ce point vous devriez redémarrer votre système avec votre nouveau noyau. La procédure /etc/rc exécutera automatiquement les commandes nécessaires pour créer les fichiers de quotas initiaux pour tous les quotas que vous avez définis dans /etc/fstab, vous n'avez donc pas besoin de créer à la main de fichiers de quotas vides. Vous ne devriez pas avoir à exécuter les commandes &man.quotacheck.8;, &man.quotaon.8;, ou &man.quotaoff.8; manuellement. Cependant, vous pouvez lire leur page de manuel pour vous familiariser avec leur rôle. Définir les quotas quotas disque limites Une fois que vous avez activé les quotas sur votre système, assurez-vous que cela fonctionne correctement. Une manière simple de le faire est d'exécuter: &prompt.root; quota -v Vous devriez obtenir une ligne résumant l'utilisation disque avec les quotas actuellement définis pour chaque système de fichiers sur lesquels il y a des quotas. Vous êtes maintenant prêt à définir les quotas avec la commande &man.edquota.8;. Vous disposez de différentes options pour instaurer les quotas d'espace disque alloué à un utilisateur ou à un groupe, et le nombre de fichiers qu'ils peuvent créer. Vous pouvez baser les limitations sur l'espace disque alloué (quotas en nombre de blocs) ou sur le nombre de fichiers (quotas en inode) ou les deux. Ces options peuvent être divisées en deux catégories: les limites strictes ou souples. limite stricte Une limite stricte ne peut être dépassée. Une fois qu'un utilisateur atteint sa limite stricte, il ne pourra plus rien allouer sur le système de fichiers en question. Par exemple, si l'utilisateur a droit à une limite stricte de 500 Ko sur un système de fichiers et en utilise 490  Ko, il ne pourra allouer que 10 Ko supplémentaires. Une tentative d'allouer 11 Ko échouerait. limite souple Une limite souple peut être dépassée pour une période de temps restreinte. C'est ce que l'on appelle le délai de grâce, qui est d'une semaine par défaut. Si un utilisateur dépasse cette limite au delà du délai de grâce, cette limite devient stricte, et plus aucune allocation ne sera possible. Quand l'utilisateur redescend en dessous de la limite souple, le délai de grâce est à nouveau réaccordé. Ce qui suit est un exemple de ce que vous pourrez voir en utilisant la commande &man.edquota.8;. Quand vous invoquez la commande &man.edquota.8;, vous vous retrouvez dans l'éditeur défini par la variable d'environnement EDITOR, ou sous vi si la variable d'environnement EDITOR n'est pas positionnée, ce qui vous permet d'éditer les quotas. &prompt.root; edquota -u test Quotas for user test: /usr: kbytes in use: 65, limits (soft = 50, hard = 75) inodes in use: 7, limits (soft = 50, hard = 60) /usr/var: kbytes in use: 0, limits (soft = 50, hard = 75) inodes in use: 0, limits (soft = 50, hard = 60) Vous verrez normalement deux lignes pour chaque système de fichiers sur lequel il y a des quotas. Une ligne pour les quotas de blocs, et une autre pour la limite d'inode. Modifiez simplement les valeurs que vous voulez mettre à jour. Par exemple, pour augmenter la limite de blocs accordée à cet utilisateur de 50 pour la limite souple et de 75 pour la limite stricte à 500 pour la limite souple et 600 pour la limite stricte, modifiez: /usr: kbytes in use: 65, limits (soft = 50, hard = 75) en: /usr: kbytes in use: 65, limits (soft = 500, hard = 600) Les nouveaux quotas seront en service dès que vous quitterez l'éditeur. Il est parfois souhaitable de définir des quotas pour une plage d'UIDs (identifiants utilisateur). Cela peut être réalisé avec l'option de la commande &man.edquota.8;. Définissez d'abord les quotas pour un seul utilisateur, et puis exécutez edquota -p protouser startuid-enduid. Par exemple, si l'utilisateur test dispose des quotas désirés, la commande suivante peut être utilisée pour appliquer ces quotas pour les UIDs de 10000 à 19999: &prompt.root; edquota -p test 10000-19999 Pour plus d'informations consultez la page de manuel &man.edquota.8;. Consulter les quotas et l'utilisation des disques quotas disque contrôle Vous pouvez soit utiliser la commande &man.quota.1; soit la commande &man.repquota.8; pour consulter les quotas et l'utilisation des disques. La commande &man.quota.1; peut être employée pour connaître les quotas et l'utilisation des disques pour un utilisateur et un groupe. Un utilisateur ne peut consulter que ses propres quotas et ceux d'un groupe auquel il appartient. Seul le super-utilisateur peut consulter les quotas et l'usage disque de tous les utilisateurs et groupes. La commande &man.repquota.8; permet d'obtenir un résumé de tous les quotas et l'utilisation disque pour les systèmes de fichiers sur lesquels il y a des quotas. Ce qui suit est un extrait de la sortie de la commande quota -v pour un utilisateur pour lequel on a défini des quotas sur deux systèmes de fichiers. Disk quotas for user test (uid 1002): Filesystem usage quota limit grace files quota limit grace /usr 65* 50 75 5days 7 50 60 /usr/var 0 50 75 0 50 60 délai de grâce Sur le système de fichiers /usr dans l'exemple ci-dessus, l'utilisateur occupe 15 Ko de plus que la limite de 50 Ko qui lui est allouée et dispose d'un délai de grâce de 5 jours. Notez l'astérisque * qui indique que l'utilisateur dépasse actuellement son quota. Normalement les systèmes de fichiers sur lesquels l'utilisateur n'occupe pas d'espace n'apparaissent pas dans la sortie de la commande &man.quota.1;, même s'il a des quotas sur ces systèmes de fichiers. L'option listera ces systèmes de fichiers, comme /usr/var dans l'exemple ci-dessus. Quotas avec NFS NFS Les quotas sont gérés par le sous-système de gestion des quotas sur le serveur NFS. Le démon &man.rpc.rquotad.8; fournit les informations sur les quotas à la commande &man.quota.1; des clients NFS, permettant aux utilisateurs sur ces machines de consulter l'utilisation des quotas qui leur sont alloués. Activez rpc.rquotad dans /etc/inetd.conf de la façon suivante: rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad Puis redémarrez inetd: &prompt.root; kill -HUP `cat /var/run/inetd.pid` Chiffrer les partitions d'un disque LuckyGreenContribution de
shamrock@cypherpunks.to
disques chiffrement &os; offre d'excellentes protections contre un accès non autorisé aux données par l'intermédiaire du réseau. Les permissions sur les fichiers et le contrôle d'accès obligatoire — “Mandatory Access Control” (MAC) (voir ) empêchent l'accès aux données pour des tiers non autorisés quand le système d'exploitation est actif et l'ordinateur en fonctionnement. Cependant, des permissions renforcés sont inutiles si l'attaquant a un accès physique à un ordinateur et peut simplement déplacer le disque dur sur un autre système pour copier et analyser les données sensibles. Indépendamment de la manière dont une personne malveillante s'est trouvé en possession d'un disque dur ou a arrêté un ordinateur, le chiffrage de disque basé sur GEOM (gbde) (“GEOM Based Disk Encryption”) et le système de chiffrage geli de &os; sont en mesure de protéger les données des systèmes de fichiers contre des attaquants très motivés et aux ressources importantes. A la différence des méthodes de chiffrage lourdes qui chiffrent uniquement les fichiers individuels, gbde et geli chiffrent de manière transparente l'intégralité du système de fichiers. Aucun texte en clair ne touche les plateaux du disque. Chiffrage des disques avec <application>gbde</application> Devenir <systemitem class="username">root</systemitem> La configuration de gbde requiert les privilèges du super-utilisateur. &prompt.user; su - Password: Ajouter le support &man.gbde.4; au fichier de configuration du noyau Ajoutez la ligne suivante à votre fichier de configuration du noyau: options GEOM_BDE Recompilez le noyau comme décrit dans . Redémarrez avec le nouveau noyau. Au lieu de recompiler le noyau, on peut utiliser kldload pour charger le support &man.gbde.4;: &prompt.root; kldload geom_bde Préparation du disque dur chiffré L'exemple suivant suppose que vous ajoutez un nouveau disque dur à votre système et qui contiendra une seule partition chiffrée. Cette partition sera montée sous /private. gbde peut également être utilisé pour chiffrer les répertoires /home et /var/mail, mais cela demande une configuration plus complexe qui dépasse le cadre de cette introduction. Ajouter le nouveau disque Installez le nouveau disque comme expliqué dans . Pour les besoins de cet exemple, une nouvelle partition disque a été ajoutée en tant que /dev/ad4s1c. Les périphériques du type /dev/ad0s1* représentent les partitions &os; standards sur le système exemple. &prompt.root; ls /dev/ad* /dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1 /dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c /dev/ad0s1a /dev/ad0s1d /dev/ad4 Créer un répertoire pour héberger les fichiers de verrouillage de GBDE &prompt.root; mkdir /etc/gbde Le fichier de verrouillage de gbde contient l'information nécessaire à gbde pour accéder aux partitions chiffrées. Sans accès au fichier de verrouillage, gbde sera incapable de déchiffrer les données contenues sur la partition chiffrée sans une aide manuelle significative ce qui n'est pas supporté par le logiciel. Chaque partition chiffrée utilise un fichier de verrouillage propre. Initialiser la partition gbde Une partition gbde doit être initialisée avant d'être utilisable. Cette initialisation doit être effectuée une seule fois: &prompt.root; gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c &man.gbde.8; lancera votre éditeur, vous permettant de fixer diverses options de configuration dans un gabarit. Pour une utilisation de UFS1 ou UFS2, fixez l'option sector_size à 2048: $FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $ # # La taille d'un secteur est la plus petite unité de donnée # qui peut être lue ou écrite. # Une valeur trop petite diminue les performances et l'espace # disponible. # Une valeur trop grande peut empêcher des systèmes de # fichiers de fonctionner correctement. 512 est la valeur minimale # et sans risque. Pour l'UFS, utiliser la taille d'un fragment # sector_size = 2048 [...] &man.gbde.8; vous demandera de taper deux fois la phrase d'authentification qui devra être utilisée pour sécuriser les données. La phrase d'authentification doit être la même dans les deux cas. La capacité de gbde à protéger vos données dépend de la qualité de la phrase d'authentification que vous avez choisie. Pour des conseils sur comment choisir une phrase d'authentification sécurisée et facile à retenir, consultez le site Web Diceware Passphrase. La commande gbde init crée un fichier de verrouillage pour votre partition gbde qui dans cet exemple est stocké sous /etc/gbde/ad4s1c. Les fichiers de verrouillage de gbde doivent être conservés de pair avec le contenu des partitions chiffrées. Alors que la suppression seule d'un fichier de verrouillage ne peut empêcher une personne déterminée de déchiffrer une partition gbde, sans le fichier de verrouillage, le propriétaire légitime sera incapable d'accéder aux données de la partition chiffrée sans beaucoup de travail ce qui est totalement non supporté par &man.gbde.8; et son concepteur. Attacher la partition chiffrée au noyau &prompt.root; gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c On vous demandera de fournir la phrase d'authentification que vous avez choisie lors de l'initialisation de la partition chiffrée. Le nouveau périphérique chiffré apparaîtra dans /dev en tant que /dev/nom_périphérique.bde: &prompt.root; ls /dev/ad* /dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1 /dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c /dev/ad0s1a /dev/ad0s1d /dev/ad4 /dev/ad4s1c.bde Créer un système de fichiers sur le périphérique chiffré Une fois que le périphérique chiffré a été attaché au noyau, vous pouvez créer un système de fichiers sur le périphérique. Pour créer un système de fichiers sur le périphérique, utilisez &man.newfs.8;. Puisqu'il est plus rapide d'initialiser un nouveau système de fichiers UFS2 qu'un nouveau système UFS1, l'utilisation de &man.newfs.8; avec l'option est recommandé. &prompt.root; newfs -U -O2 /dev/ad4s1c.bde La commande &man.newfs.8; peut être effectuée sur une partition gbde attachée qui est identifiée par une extension *.bde au niveau du nom de périphérique. Monter la partition chiffrée Créez un point de montage pour le système de fichiers chiffré. &prompt.root; mkdir /private Montez le système de fichiers chiffré. &prompt.root; mount /dev/ad4s1c.bde /private Vérifiez que le système de fichiers chiffré est disponible Le système de fichiers chiffré devrait être visible par &man.df.1; et prêt à être utilisé: &prompt.user; df -H Filesystem Size Used Avail Capacity Mounted on /dev/ad0s1a 1037M 72M 883M 8% / /devfs 1.0K 1.0K 0B 100% /dev /dev/ad0s1f 8.1G 55K 7.5G 0% /home /dev/ad0s1e 1037M 1.1M 953M 0% /tmp /dev/ad0s1d 6.1G 1.9G 3.7G 35% /usr /dev/ad4s1c.bde 150G 4.1K 138G 0% /private Montage des systèmes de fichiers chiffrés Après chaque démarrage, tout système de fichiers chiffré doit être rattaché au noyau, contrôlé pour les erreurs, et monté, avant que les systèmes de fichiers ne puissent être utilisés. Les commandes nécessaires doivent être exécutées en tant que root. Attacher la partition gdbe au noyau &prompt.root; gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c On vous demandera de fournir la phrase d'authentification que vous avez choisie lors de l'initialisation de la partition gbde chiffrée. Contrôler les erreurs du système de fichiers Puisque les systèmes de fichiers chiffrés ne peuvent être encore listés dans le fichier /etc/fstab pour un montage automatique, on doit donc contrôler les systèmes de fichiers pour d'éventuelles erreurs en exécutant manuellement &man.fsck.8; avant le montage. &prompt.root; fsck -p -t ffs /dev/ad4s1c.bde Monter le système de fichiers chiffré &prompt.root; mount /dev/ad4s1c.bde /private Le système de fichiers est maintenant disponible à l'utilisation. Montage automatique de partitions chiffrées Il est possible de créer une procédure pour automatiquement attacher, contrôler, et monter une partition chiffrée, mais pour des raisons de sécurité la procédure ne devrait pas contenir le mot de passe &man.gbde.8;. A la place, il est recommandé que de telles procédures soient exécutées manuellement tout en fournissant le mot de passe via la console ou &man.ssh.1;. Comme autre possibilité, une procédure rc.d est fournie. Des arguments peuvent être passés à cette procédure par l'intermédiaire de &man.rc.conf.5;,, par exemple: gbde_autoattach_all="YES" gbde_devices="ad4s1c" Cela impose la saisie de la phrase d'authentification gbde au démarrage. Après avoir entré la phrase d'authentification correctement, la partition chiffrée gbde sera montée automatiquement. Cela peut être très utile quand gbde est utilisé sur des ordinateurs portables. Les protections cryptographiques utilisées par gbde &man.gbde.8; chiffre la partie utile des secteurs en utilisant le chiffrage AES 128 bits en mode CBC. Chaque secteur sur le disque est chiffré avec une clé AES différente. Pour plus d'informations sur l'architecture cryptographique de gbde, y compris comment les clés pour chaque secteur sont des dérivés de la phrase d'authentification donnée par l'utilisateur, voir la page de manuel &man.gbde.4;. Problèmes de compatibilité &man.sysinstall.8; est incompatible avec les périphériques gbde-chiffrés. Tous les périphériques *.bde doivent être détachés du noyau avant de lancer &man.sysinstall.8; ou ce dernier plantera durant son processus initial de recherche des périphériques. Pour détacher le périphérique chiffré utilisé dans notre exemple, utilisez la commande suivante: &prompt.root; gbde detach /dev/ad4s1c Notez également qu'étant donné que &man.vinum.4; n'utilise pas le sous-système &man.geom.4;, vous ne pouvez utiliser gbde avec des volumes vinum. - + Chiffrage des disques avec <command>geli</command> DanielGerzoContribution de Depuis &os; 6.0, une nouvelle classe GEOM pour le chiffrage des données est disponible: geli. Cette classe est développée par &a.pjd;. L'outil geli est différent de gbde; il offre des fonctionnalités différentes et utilise une méthode différente pour chiffrer les données. Les caractéristiques les plus importantes de &man.geli.8; sont: Utilisation du système &man.crypto.9; — quand du matériel destiné au chiffrement est disponible dans la machine, geli l'utilisera automatiquement. Support de plusieurs algorithmes de chiffrement (actuellement AES, Blowfish, et 3DES). Permettre le chiffrage de la partition racine. La phrase d'authentification utilisée pour accéder à la partition racine chiffrée sera demandée au démarrage du système. Permettre l'emploi de deux clés indépendantes (par exemple une clé utilisateur et une clé entreprise). geli est rapide—il effectue un simple chiffrement de secteur à secteur. Permettre la sauvegarde et la restauration des clés principales. Quand un utilisateur doit détruire ses clés, il sera possible d'accéder à nouveau aux données en restaurant les clés à partir de la sauvegarde. Permettre d'attacher un disque avec une clé aléatoire à usage unique — utile pour les partitions de pagination et les systèmes de fichiers temporaires. Plus de caractéristiques concernant geli peuvent être trouvées dans la page de manuel de &man.geli.8;. Les points suivants décriront comment activer le support pour geli dans le noyau &os; et expliqueront comment créer et utiliser un provider (ou partition) chiffré geli. Afin de pouvoir employer geli, vous devez utiliser &os; 6.0-RELEASE ou une version ultérieure. Les privilèges du super-utilisateur seront également nécessaire puisque il faudra effectuer des modifications au niveau du noyau. Ajouter le support <command>geli</command> au noyau Ajoutez les lignes suivantes au fichier de configuration du noyau: options GEOM_ELI device crypto Recompilez le noyau comme décrit dans la . Sinon, le module geli peut être chargé au démarrage. Ajoutez la ligne suivante au fichier /boot/loader.conf: geom_eli_load="YES" Le système &man.geli.8; devrait désormais être supporté par le noyau. Générer la clé principale L'exemple suivant décrira la méthode pour générer un fichier clé qui sera utilisé comme partie de la clé principale pour le provider chiffré monté sous le répertoire /private. Le fichier clé fournira des données aléatoires qui seront employées pour chiffrer la clé principale. La clé principale sera également protégée par une phrase d'authentification. La taille des secteurs du provider sera de 4Ko. De plus, sera décrit comment attacher au système le provider geli, créer un système de fichiers dessus, utiliser ce système de fichiers et enfin comment le détacher. Il est recommandé d'utiliser une taille de secteur plus grande (comme 4Ko) pour de meilleures performances. La clé principale sera protégée avec une phrase d'authentification et la source de données pour le fichier clé sera /dev/random. La taille des secteurs de /dev/da2.eli, partition que nous appelons provider, sera de 4Ko. &prompt.root; dd if=/dev/random of=/root/da2.key bs=64 count=1 &prompt.root; geli init -s 4096 -K /root/da2.key /dev/da2 Enter new passphrase: Reenter new passphrase: Il n'est pas obligatoire d'utiliser la phrase d'authentification et le fichier clé; chacune de ces méthodes de sécurisation de la clé principale peut être utilisée séparément. Si à la place du fichier clé un - est passé, l'entrée standard sera utilisée. Cet exemple montre comment on peut utiliser plus d'un fichier clé: &prompt.root; cat keyfile1 keyfile2 keyfile3 | geli init -K - /dev/da2 Attacher le <emphasis>provider</emphasis> avec la clé générée &prompt.root; geli attach -k /root/da2.key /dev/da2 Enter passphrase: Le nouveau périphérique sera appelé /dev/da2.eli. &prompt.root; ls /dev/da2* /dev/da2 /dev/da2.eli Créer le nouveau système de fichiers &prompt.root; dd if=/dev/random of=/dev/da2.eli bs=1m &prompt.root; newfs /dev/da2.eli &prompt.root; mount /dev/da2.eli /private Le système de fichiers chiffré devrait être maintenant visible par &man.df.1; et disponible à l'utilisation: &prompt.root; df -H Filesystem Size Used Avail Capacity Mounted on /dev/ad0s1a 248M 89M 139M 38% / /devfs 1.0K 1.0K 0B 100% /dev /dev/ad0s1f 7.7G 2.3G 4.9G 32% /usr /dev/ad0s1d 989M 1.5M 909M 0% /tmp /dev/ad0s1e 3.9G 1.3G 2.3G 35% /var /dev/da2.eli 150G 4.1K 138G 0% /private Démonter et détacher le <emphasis>provider</emphasis> Une fois l'utilisation de la partition chiffrée achevée et que la partition /private n'est plus nécessaire, il est prudent de penser à démonter et détacher la partition geli chiffrée: &prompt.root; umount /private &prompt.root; geli detach da2.eli Plus d'information sur l'utilisation de &man.geli.8; peut être trouvée dans sa page de manuel. Utiliser la procédure <filename>rc.d</filename> de <filename>geli</filename> La commande geli est fournie avec une procédure rc.d qui peut être employée pour simplifier l'utilisation de geli. Un exemple de configuration de geli à l'aide de &man.rc.conf.5; sera: geli_devices="da2" geli_da2_flags="-p -k /root/da2.key" Ces lignes configureront /dev/da2 comme provider geli avec une clé principale /root/da2.key, de plus geli n'utilisera pas de phrase d'authentification pour attacher le provider (notez que ceci n'est utilisable que si l'option a été passée durant la phase geli init). Le système détachera du noyau le provider geli avant l'arrêt du système. Plus d'information sur la configuration du système rc.d est fournie dans la section rc.d de ce Manuel.
Chiffrage de l'espace de pagination ChristianBrüfferEcrit par espace de pagination chiffrage Sous &os;, le chiffrement de l'espace de pagination est simple à mettre en place et est possible depuis &os; 5.3-RELEASE. En fonction de la version de &os; utilisée, différentes options sont disponibles et la configuration peut légèrement varier. Depuis &os; 6.0-RELEASE, les systèmes de chiffrage &man.gbde.8; ou &man.geli.8; peuvent être utilisé à cet effet. Avec les versions antérieures, seul &man.gbde.8; est disponible. Les deux systèmes utilisent la procédure rc.d nommée encswap. La section précédente, Chiffrer les partitions d'un disque, contient une courte explication sur les différents systèmes de chiffrage. Pourquoi l'espace de pagination devrait être chiffré? Comme pour le chiffrage des partitions d'un disque, chiffrer l'espace de pagination a pour but la protection des informations sensibles. Imaginez une application qui, par exemple, traite des mots de passe. Tant que ces mots de passe résident en mémoire tout va pour le mieux. Cependant, si le système d'exploitation commence à transférer des pages mémoires vers l'espace de pagination en vue de libérer de la mémoire pour d'autres applications, les mots de passe peuvent être écrits en clair sur les plateaux du disque et seront faciles à récupérer par une personne malveillante. Chiffrer l'espace de pagination peut être une solution contre ce scénario. Préparation Pour le reste de cette section, ad0s1b sera la partition réservée à l'espace de pagination. Jusqu'ici l'espace de pagination n'a jamais été chiffré. Il est fort possible qu'il y ait déjà des mots de passe ou toute autre donnée sensible de présents en clair sur les plateaux du disque. Afin d'y remédier, les données de la partition de pagination doivent être écrasées avec des données aléatoires: &prompt.root; dd if=/dev/random of=/dev/ad0s1b bs=1m Chiffrer de l'espace de pagination avec &man.gbde.8; Si &os; 6.0-RELEASE ou une version plus récente est utilisée, le suffixe .bde doit être ajouté au nom de périphérique sur la ligne du fichier /etc/fstab correspondant à cet espace de pagination: # Device Mountpoint FStype Options Dump Pass# /dev/ad0s1b.bde none swap sw 0 0 Pour les systèmes antérieurs à &os; 6.0-RELEASE, la ligne suivante doit également être ajoutée à /etc/rc.conf: gbde_swap_enable="YES" Chiffrage de l'espace de pagination avec &man.geli.8; La procédure pour le chiffrage de l'espace de pagination avec &man.geli.8; est similaire à celle pour l'utilisation de &man.gbde.8;. Le suffixe .eli doit être ajouté au nom de périphérique sur la ligne du fichier /etc/fstab correspondant à cet espace de pagination: # Device Mountpoint FStype Options Dump Pass# /dev/ad0s1b.eli none swap sw 0 0 Par défaut, &man.geli.8; utilise l'algorithme AES avec une longueur de clé de 256bits. Les valeurs par défaut peuvent être modifiées en utilisant l'option geli_swap_flags dans le fichier /etc/rc.conf. La ligne suivante demande à la procédure rc.d encswap de créer des partitions de pagination en utilisant l'algorithme Blowfish avec une clé de 128 bits de longueur, une taille de secteur de 4 kilo-octets et avec l'option detach on last close (détacher après démontage de la partition) activée: geli_swap_flags="-a blowfish -l 128 -s 4096 -d" Veuillez vous référer à la description de la commande onetime dans la page de manuel &man.geli.8; pour une liste des options possibles. Vérifier que cela fonctionne Une fois que le système a été redémarré, le fonctionnement correct de l'espace de pagination peut être vérifié en utilisant la commande swapinfo. Si &man.gbde.8; est utilisé: &prompt.user; swapinfo Device 1K-blocks Used Avail Capacity /dev/ad0s1b.bde 542720 0 542720 0% Si &man.geli.8; est utilisé: &prompt.user; swapinfo Device 1K-blocks Used Avail Capacity /dev/ad0s1b.eli 542720 0 542720 0%
Index: head/fr_FR.ISO8859-1/books/handbook/ports/chapter.xml =================================================================== --- head/fr_FR.ISO8859-1/books/handbook/ports/chapter.xml (revision 53063) +++ head/fr_FR.ISO8859-1/books/handbook/ports/chapter.xml (revision 53064) @@ -1,1813 +1,1813 @@ Installer des applications: les logiciels pré-compilés et les logiciels portés &trans.a.fonvieille; Synopsis logiciels portés logiciels pré-compilés FreeBSD est livré avec une riche collection d'outils en tant que partie du système de base. Beaucoup de choses peuvent être faites avant d'avoir besoin de recourir à l'installation d'une application tiers pour effectuer un travail précis. FreeBSD fournit deux technologies complémentaires pour installer des logiciels tiers sur votre système: le Catalogue des logiciels portés de FreeBSD (pour une installation à partir des sources), et les logiciels pré-compilés ou paquetages (pour installer des binaires pré-compilés). N'importe laquelle de ces deux méthodes peut être utilisée pour installer les nouvelles versions de vos applications favorites à partir d'un support local ou directement depuis le réseau. Après la lecture de ce chapitre, vous saurez: Comment installer des logiciels tiers pré-compilés. Comment compiler des logiciels tiers à partir des sources en utilisant le catalogue de logiciels portés. Comment effacer les logiciels pré-compilés ou portés précédemment installés. Comment modifier les paramètres par défaut utilisés par le catalogue des logiciels portés. Comment trouver l'application recherchée. Comment mettre à jour vos applications. Généralités sur l'installation de logiciels Si vous avez utilisé auparavant un système &unix; vous saurez que la procédure typique pour installer les logiciels tiers ressemble à ceci: Télécharger le logiciel, qui peut être distribué sous forme de code source, ou sous forme d'un binaire. Extraire le logiciel de son format de distribution (généralement une archive tar compressée soit avec &man.compress.1;, soit avec &man.gzip.1;, ou encore &man.bzip2.1;). Recherchez la documentation (peut être un fichier INSTALL ou README, ou des fichiers dans un sous répertoire doc/) et lisez les informations sur comment installer le logiciel. Si le logiciel était distribué sous forme de sources, compilez-le. Cela peut impliquer l'édition d'un Makefile, ou l'exécution d'une procédure configure, et d'autres activités. Tester et installer le logiciel. Et cela si seulement tout se passe bien. Si vous installez un logiciel qui n'a pas été spécialement porté pour FreeBSD, il se peut que vous deviez éditer le code source pour le faire fonctionner correctement. Si vous le voulez, vous pouvez continuer d'installer des logiciels suivant la méthode “traditionnelle” sous FreeBSD. Cependant, FreeBSD fournit deux technologies avec lesquelles vous pouvez vous économiser beaucoup d'efforts: les logiciels pré-compilés et le catalogue des logiciels portés. A l'heure de l'écriture de ces lignes, plus de &os.numports; applications tierces sont ainsi mises à disposition. Pour n'importe quelle application donnée, le logiciel pré-compilé FreeBSD pour cette application est un unique fichier à télécharger. Il contient les copies pré-compilées de toutes les commandes de l'application, ainsi que tous fichiers de configuration et documentation. Un logiciel pré-compilé téléchargé peut être manipulé avec les commandes FreeBSD de gestion des logiciels pré-compilés, comme &man.pkg.add.1;, &man.pkg.delete.1;, &man.pkg.info.1;, et ainsi de suite. L'installation d'une nouvelle application peut être effectuée grâce à une unique commande. Un logiciel porté pour FreeBSD est un ensemble de fichiers conçus pour automatiser le processus de compilation d'une application à partir du code source. Rappelez-vous qu'il y a un certain nombre d'étapes que vous effectueriez si vous compiliez un programme vous-même (téléchargement, extraction, application de correctifs, compilation, installation). Les fichiers qui composent un logiciel porté contiennent toute l'information nécessaire pour permettre au système de faire cela pour vous. Vous lancez une poignée de commandes simples et le code source de l'application est automatiquement téléchargé, extrait, corrigé, compilé, et installé pour vous. En fait, le catalogue des logiciels portés peut être utilisé pour générer ce qui pourra plus tard être manipulé avec pkg_add et d'autres commandes de gestion des logiciels pré-compilés qui seront présentés sous peu. Les logiciels pré-compilés et le catalogue des logiciels portés comprennent la notion de dépendances. Supposez que vous voulez installer une application qui dépend de l'installation d'une bibliothèque particulière. L'application et la bibliothèque ont été toutes deux rendues disponibles sous forme de logiciel porté pour FreeBSD ou de logiciel pré-compilé. Si vous utilisez la commande pkg_add ou le catalogue des logiciels portés pour ajouter l'application, tous les deux remarqueront que la bibliothèque n'a pas été installée, et installeront automatiquement en premier la bibliothèque. Etant donné que les deux technologies sont presque semblables, vous pourriez vous demander pourquoi FreeBSD s'ennuie avec les deux. Les logiciels pré-compilés et le catalogue de logiciels portés ont chacun leurs propres forces, et celle que vous emploierez dépendra de votre préférence. Avantages des logiciels pré-compilés L'archive compressée d'un logiciel pré-compilé est généralement plus petite que l'archive compressée contenant le code source de l'application. Les logiciels pré-compilés ne nécessitent pas de compilation supplémentaire. Pour les grosses applications, comme Mozilla, KDE, ou GNOME cela peut s'avérer important, particulièrement si vous êtes sur un système lent. Les logiciels pré-compilés ne demandent pas une compréhension du processus impliqué dans la compilation de logiciels sous FreeBSD. Avantages du catalogue des logiciels portés Les logiciels pré-compilés sont normalement compilés avec des options conservatrices, parce qu'ils doivent pouvoir tourner sur le plus grand nombre de systèmes. En installant à partir du catalogue des logiciels portés, vous pouvez ajuster les options de compilation pour (par exemple) générer du code spécifique au Pentium 4 ou à l'Athlon. Certaines applications ont des options de compilation concernant ce qu'elles peuvent faire et ne pas faire. Par exemple, Apache peut être configuré avec une très large variété d'options intégrées différentes. En compilant à partir du catalogue des logiciels portés vous n'avez pas à accepter les options par défaut, et vous pouvez les configurez vous-même. Dans certains cas, de multiples logiciels pré-compilés existeront pour la même application pour spécifier certaines configurations. Par exemple, Ghostscript est disponible comme logiciel pré-compilé ghostscript et ghostscript-nox11 , en fonction de si vous avez installé ou non un serveur X11. Ce type d'arrangement est possible avec les logiciels pré-compilés, mais devient rapidement impossible si une application a plus d'une ou deux options de compilation. Les licences de certains logiciels interdisent les distributions binaires. Ils doivent être distribués sous forme de code source. Certaines personnes ne font pas confiance aux distributions binaires. Au moins avec le code source, vous pouvez (en théorie) le parcourir et chercher les problèmes potentiels par vous-même. Si vous avez des correctifs locaux, vous aurez besoin du code source afin de les appliquer. Certaines personnes aiment avoir le code source à portée de main, ainsi elles peuvent le lire si elles s'ennuient, le modifier, y faire des emprunts (si la licence le permet bien sûr), etc... Pour suivre les mises à jour du catalogue des logiciels portés, inscrivez-vous à la &a.ports; et la &a.ports-bugs;. Avant d'installer une application, vous devriez consulter http://vuxml.freebsd.org/ à la recherche de problème de sécurité concernant votre application. Vous pouvez également installer ports-mgmt/portaudit qui contrôlera automatiquement toutes les applications installées à la recherche de vulnérabilités connues, un contrôle sera également effectué avant toute compilation de logiciel porté. De même, vous pouvez utiliser la commande portaudit -F -a après avoir installé des logiciels pré-compilés. Le reste de ce chapitre expliquera comment utiliser les logiciels pré-compilés et le catalogue des logiciels portés et la gestion des logiciels tiers sous FreeBSD. Trouver votre application Avant que vous puissiez installer des applications vous devez savoir ce que vous voulez, et comment se nomment les applications. La liste des applications disponibles pour FreeBSD augmente de jours en jours. Heureusement, il y a plusieurs façons de trouver ce que vous désirez: Le site web de FreeBSD maintient à jour une liste, dans laquelle on peut effectuer des recherches, de toutes les applications disponibles à l'adresse http://www.FreeBSD.org/ports/. Le catalogue des logiciels portés est divisé en catégories, et vous pouvez soit chercher une application par son nom (si vous le connaissez), soit lister toutes les applications disponibles dans une catégorie. FreshPorts Dan Langille maintient FreshPorts, à l'adresse http://www.FreshPorts.org/. FreshPorts suit les modifications des applications dans le catalogue des logiciels portés, vous permet de “surveiller” un ou plusieurs logiciels portés, et peut vous envoyer un courrier électronique quand ils sont mis à jour. FreshMeat Si vous ne connaissez pas le nom de l'application que vous voulez, essayez d'utiliser un site comme FreshMeat (http://www.freshmeat.net/) pour trouver une application, ensuite vérifiez sur le site de FreeBSD si l'application a déjà été portée. Si vous connaissez le nom exact du logiciel, vous devez juste déterminer dans quelle catégorie il se trouve, vous pouvez utiliser la commande &man.whereis.1; pour cela. Tapez simplement whereis filefile est le programme que vous voulez installer. S'il est trouvé sur le système, on vous indiquera où il se trouve, de la manière suivante: &prompt.root; whereis lsof lsof: /usr/ports/sysutils/lsof Cela nous indique que lsof (un utilitaire système) peut être trouvé dans le répertoire /usr/ports/sysutils/lsof. Vous pouvez également utiliser une simple commande &man.echo.1; pour déterminer où se trouve un logiciel porté dans le catalogue de logiciels portés. Par exemple: &prompt.root; echo /usr/ports/*/*lsof* /usr/ports/sysutils/lsof Notez que cette commande retournera tout fichier téléchargé du répertoire /usr/ports/distfiles correspondant à ce motif de recherche. Encore une autre façon de trouver un logiciel porté particulier est d'utiliser le mécanisme de recherche interne du catalogue des logiciels portés. Pour utiliser la fonction de recherche, vous devrez vous trouver dans le répertoire /usr/ports. Une fois dans ce répertoire, lancez make search name=program-nameprogram-name représente le nom du programme que vous voulez localiser. Par exemple, si vous recherchiez lsof: &prompt.root; cd /usr/ports &prompt.root; make search name=lsof Port: lsof-4.56.4 Path: /usr/ports/sysutils/lsof Info: Lists information about open files (similar to fstat(1)) Maint: obrien@FreeBSD.org Index: sysutils B-deps: R-deps: La partie du message de sortie à laquelle vous devez prêter attention est la ligne “Path:”, car cela vous indique où trouver le logiciel porté. Les autres informations ne sont pas nécessaires afin d'installer le logiciel porté, aussi on en parlera pas ici. Pour une recherche plus en profondeur vous pouvez également utiliser make search key=stringstring est le texte à rechercher. Cela recherche les noms de logiciels portés, les commentaires, les descriptions et les dépendances et peut être utilisé pour trouver des logiciels portés se rapportant à un sujet particulier si vous ne connaissez pas le nom du programme que vous cherchez. Dans les deux cas, la chaîne de caractère de recherche n'est pas sensible à la casse des caractères. Rechercher “LSOF” mènera aux même résultats que la recherche de “lsof”. Utiliser le système des logiciels pré-compilés ChernLeeContribution de Il existe plusieurs outils utilisés pour la gestion des logiciels pré-compilés sur &os; - + - + Les outils de gestion en ligne de commande des logiciels pré-compilés, qui sont le sujet de la suite de cette section. Installation d'un logiciel pré-compilé logiciels pré-compilés installation pkg_add Vous pouvez utiliser l'utilitaire &man.pkg.add.1; pour installer un logiciel pré-compilé FreeBSD à partir d'un fichier local ou d'un serveur sur le réseau. Télécharger un logiciel pré-compilé à la main puis l'installer localement &prompt.root; ftp -a ftp2.FreeBSD.org Connected to ftp2.FreeBSD.org. 220 ftp2.FreeBSD.org FTP server (Version 6.00LS) ready. 331 Guest login ok, send your email address as password. 230- 230- This machine is in Vienna, VA, USA, hosted by Verio. 230- Questions? E-mail freebsd@vienna.verio.net. 230- 230- 230 Guest login ok, access restrictions apply. Remote system type is UNIX. Using binary mode to transfer files. ftp> cd /pub/FreeBSD/ports/packages/sysutils/ 250 CWD command successful. ftp> get lsof-4.56.4.tgz local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz 200 PORT command successful. 150 Opening BINARY mode data connection for 'lsof-4.56.4.tgz' (92375 bytes). 100% |**************************************************| 92375 00:00 ETA 226 Transfer complete. 92375 bytes received in 5.60 seconds (16.11 KB/s) ftp> exit &prompt.root; pkg_add lsof-4.56.4.tgz Si vous ne disposez pas d'une source locale de logiciels pré-compilés (comme l'ensemble de CDROM de FreeBSD) alors il sera probablement plus facile d'utiliser l'option de &man.pkg.add.1;. Cela fera déterminer automatiquement à l'utilitaire le format objet et la version corrects et ensuite récupérer et installer le logiciel pré-compilé à partir d'un site FTP. pkg_add &prompt.root; pkg_add -r lsof L'exemple ci-dessus téléchargera le logiciel pré-compilé correct sans plus d'intervention de l'utilisateur. Si vous désirez indiquer un autre miroir &os; pour les logiciels pré-compilés à la place du site de distribution principal, vous devez positionner en conséquence la variable d'environnement PACKAGESITE, pour remplacer les paramètres par défaut. &man.pkg.add.1; utilise &man.fetch.3; pour télécharger les fichiers, qui respecte diverses variables d'environnement, dont FTP_PASSIVE_MODE, FTP_PROXY, et FTP_PASSWORD. Il se peut que vous ayez besoin de configurer une ou plusieurs de ces dernières si vous êtes derrière un coupe-feu, ou devez utiliser un proxy FTP/HTTP. Consultez la page de manuel &man.fetch.3; pour la liste complète des variables. Vous pouvez également remarquer que dans l'exemple ci-dessus lsof est utilisé au lieu de lsof-4.56.4. Quand la fonction de récupération à distance est utilisée, le numéro de version doit être retiré. &man.pkg.add.1; téléchargera automatiquement la toute dernière version de l'application. &man.pkg.add.1; téléchargera la dernière version de votre application si vous êtes sous &os.current; ou &os.stable;. Si vous utilisez une version -RELEASE, il récupérera la version compilée avec votre version lors de sa publication. Il est possible de modifier ce comportement en surchargeant la variable d'environnement PACKAGESITE. Par exemple, si vous utilisez un système &os; 8.1-RELEASE, par défaut &man.pkg.add.1; tentera de récupérer les applications pré-compilées à partir de ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.1-release/Latest/. Si vous désirez forcer &man.pkg.add.1; à télécharger les versions des logiciels pré-compilés pour &os; 8-STABLE, positionnez la variable PACKAGESITE à ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/. Les logiciels pré-compilés sont distribués dans les formats .tgz et .tbz. Vous pouvez les trouver sur ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/, ou sur le CDROM de distribution de FreeBSD. Chaque CD de l'ensemble de 4-CD de FreeBSD (et le PowerPak, etc...) contient des logiciels pré-compilés dans le répertoire /packages. L'organisation des logiciels pré-compilés est semblable à celle de l'arborescence /usr/ports. Chaque catégorie possède son propre répertoire, et chaque logiciel pré-compilé peut être trouvé dans le répertoire All. La structure de répertoires du système de logiciels pré-compilés correspond à celle du catalogue des logiciels portés; ils travaillent ensemble pour former l'intégralité du système de logiciels pré-compilés/portés. Gestion des logiciels pré-compilés logiciels pré-compilés gestion &man.pkg.info.1; est un utilitaire qui liste et décrit les divers logiciels pré-compilés installés. pkg_info &prompt.root; pkg_info cvsup-16.1 A general network file distribution system optimized for CV docbook-1.2 Meta-port for the different versions of the DocBook DTD ... &man.pkg.version.1; est un utilitaire qui récapitule les versions de tous les logiciels pré-compilés installés. Il compare la version du logiciel pré-compilé avec la version actuelle trouvée dans le catalogue des logiciels portés. pkg_version &prompt.root; pkg_version cvsup = docbook = ... Les symboles dans la seconde colonne indiquent l'âge relatif de la version installée et de la version disponible dans le catalogue des logiciels portés local. Symbole Signification = La version du logiciel pré-compilé installée est équivalente à celle de celui trouvé dans le catalogue des logiciels portés local. < La version installée est plus ancienne que celle disponible dans le catalogue des logiciels portés. >La version installée est plus récente que celle trouvée dans le catalogue local des logiciels portés. (le catalogue local des logiciels portés est probablement ancien) ?Le logiciel pré-compilé ne peut être trouvé dans l'index du catalogue des logiciels portés. (Cela peut se produire quand, par exemple, un logiciel installé est supprimé du catalogue des logiciels portés ou renommé.) *Il y a de multiples versions de ce logiciel pré-compilé. !Le logiciel installé existe dans l'index mais pour une raison inconnue, pkg_version a été incapable de comparer le numéro de version du paquetage installé avec l'entrée correspondante dans l'index. Effacer un logiciel pré-compilé pkg_delete logiciels pré-compilés effacer Pour désinstaller un logiciel pré-compilé précédemment installé, utilisez l'utilitaire &man.pkg.delete.1;. &prompt.root; pkg_delete xchat-1.7.1 Notez que &man.pkg.delete.1; a besoin du nom complet du paquetage et du numéro de version; la commande précédente n'aurait pas fonctionné avec xchat à la place de xchat-1.7.1. It est cependant facile de retrouver la version du paquetage installé à l'aide de la commande &man.pkg.version.1;. Vous pouvez à la place simplement utiliser un joker: &prompt.root; pkg_delete xchat\* dans ce cas, tous les logiciels dont le nom commence par xchat seront supprimés. Divers Toute l'information sur les logiciels pré-compilés est stockée dans le répertoire /var/db/pkg. La liste des fichiers installés pour chaque logiciel pré-compilé peut être trouvée dans des fichiers de ce répertoire. Utiliser le catalogue des logiciels portés Les sections suivantes fournissent des instructions de base sur l'utilisation du catalogue des logiciels portés pour installer et désinstaller des programmes sur votre système. Une description détaillée des cibles make et de variables d'environnement est disponible dans la page de manuel &man.ports.7;. Obtenir le catalogue des logiciels portés Avant que vous puissiez installer des logiciels portés, vous devez d'abord récupérer le catalogue des logiciels portés— qui est essentiellement un ensemble de Makefiles, de correctifs, et de fichiers de description habituellement placés dans /usr/ports. Quand vous avez installé votre système FreeBSD, sysinstall vous a demandé si vous aimeriez installer le catalogue des logiciels portés. Si vous avez choisi non, vous pouvez suivre ces instructions pour obtenir le catalogue des logiciels portés: La méthode CVSup C'est une méthode rapide pour récupérer le catalogue des logiciels portés en utilisant le protocole CVSup. Si vous voulez en apprendre plus au sujet de CVSup, lisez la section Utiliser CVSup. L'implémentation du protocole CVSup présente dans le système de base de &os; se nomme csup. Assurez-vous que le répertoire /usr/ports est vide avant d'utiliser csup pour la première fois. Si vous avez déjà un catalogue des logiciels portés, obtenu à partir d'une autre source, csup n'effacera pas les correctifs qui ont été supprimés. Exécuter la commande csup: &prompt.root; csup -L 2 -h cvsup.FreeBSD.org /usr/share/examples/cvsup/ports-supfile Remplacez cvsup.FreeBSD.org avec un serveur CVSup proche de vous. Voir Sites CVSup () pour une liste complète des sites miroirs. Certains peuvent vouloir utiliser leur propre ports-supfile, par exemple pour éviter d'avoir à passer le serveur CVSup sur la ligne de commande. Dans ce cas, en tant que root, copier /usr/share/examples/cvsup/ports-supfile à un nouvel emplacement, comme /root ou votre répertoire d'utilisateur. Editez ports-supfile. Remplacez CHANGE_THIS.FreeBSD.org avec un serveur CVSup proche de vous. Voir Sites CVSup () pour une liste complète des sites miroirs. Maintenant pour lancer csup, utilisez ce qui suit: &prompt.root; csup -L 2 /root/ports-supfile L'exécution ultérieure de &man.csup.1; téléchargera et appliquera tous les changements récents à votre catalogue des logiciels portés sans pour autant recompiler vos logiciels. La méthode Portsnap Portsnap est un système alternatif de distribution du catalogue des logiciels portés. Veuillez vous reporter à la section Utiliser Portsnap pour une description détaillée de toutes les caractéristiques de Portsnap. Téléchargez un instantané compressé du catalogue des logiciels portés dans le répertoire /var/db/portsnap. Vous pouvez vous déconnecter de l'Internet, si vous le désirez, après cette opération: &prompt.root; portsnap fetch Si vous exécutez Portsnap pour la première fois, il faut extraire l'instantané dans le répertoire /usr/ports: &prompt.root; portsnap extract Si votre répertoire /usr/ports contient déjà une version du catalogue des logiciels portés et que vous désirez juste mettre à jour, utilisez plutôt la commande: &prompt.root; portsnap update La méthode Sysinstall Cette méthode implique l'utilisation de sysinstall pour installer le catalogue des logiciels portés à partir du disque d'installation. Il faut noter que la version du catalogue qui sera installée est la version datant de la publication de votre disque d'installation. Si vous disposez d'un accès à l'Internet, vous devriez toujours utiliser une des méthodes précédemment exposées. En tant que root, lancez sysinstall comme montré ci-dessous: &prompt.root; sysinstall Faites défiler l'écran vers le bas et sélectionnez Configure, appuyez sur Entrée. Faites défiler l'écran vers le bas et sélectionnez Distributions, appuyez sur Entrée. Faites défiler l'écran vers le bas jusqu'à ports, appuyez sur Espace. Remontez jusqu'à Exit, appuyez sur Entrée. Choisissez le support d'installation désiré, comme un CDROM, par FTP, etc. Remontez jusqu'à Exit et appuyez sur Enter. Appuyez sur la touche X pour quitter sysinstall. Installation de logiciels portés logiciels portés installation La première chose qui devrait être expliquée quand on aborde le catalogue des logiciels portés est ce que l'on entend par “squelette”. En bref, un squelette est un ensemble minimal de fichiers qui indique à votre système FreeBSD comment compiler et installer proprement un programme. Chaque squelette contient: Un fichier Makefile. Le fichier Makefile contient les diverses déclarations qui indiquent comment l'application devrait être compilée et où elle devrait être installée sur votre système. Un fichier distinfo. Ce fichier contient l'information à propos des fichiers qui doivent être téléchargés pour compiler le logiciel, et leurs sommes de contrôle (en utilisant &man.sha256.1;), pour s'assurer que ces fichiers n'ont pas été corrompus durant le téléchargement. Un répertoire files. Ce répertoire contient les correctifs pour permettre la compilation et l'installation du programme sur votre système FreeBSD. Les correctifs sont à la base de petits fichiers qui indiquent des modifications sur des fichiers particuliers. Ils sont sous forme de fichiers texte, qui disent “Effacer la ligne 10” ou “Modifier la ligne 26 par...”. Les correctifs sont également connus sous le nom de “diffs” car ils sont générés par le programme &man.diff.1;. Ce répertoire peut également contenir d'autres fichiers utilisés pour la compilation du logiciel porté. Un fichier pkg-descr. C'est une description plus détaillée du programme, souvent en plusieurs lignes. Un fichier pkg-plist. C'est une liste de tous les fichiers qui seront installés par le logiciel porté. Il indique également au système des logiciels portés quels fichiers sont à effacer lors d'une désinstallation. Certains logiciels portés utilisent d'autres fichiers, comme pkg-message. Le catalogue des logiciels portés utilise ces fichiers pour faire face à certaines situations spéciales. Si vous désirez plus de détails au sujet de ces fichiers, et sur les logiciels portés en général, consultez le Manuel du développeur de logiciels portés. Le logiciel porté contient les instructions pour compiler le code source, mais ne contient pas le code source. Vous pouvez obtenir le code source à partie d'un CDROM ou de l'Internet. Le code source est distribué de la façon dont l'auteur le désire. Fréquemment c'est une archive tar compressée avec gzip, mais elle pourra être compressée avec un autre outil ou même non compressée. Le code source d'un programme, peu importe la forme sous laquelle il est distribué, est appelé un fichier “distfile”. Les deux méthodes pour l'installation d'un logiciel porté pour &os; sont décrites ci-dessous. Vous devez avoir ouvert une session sous l'utilisateur root pour installer des logiciels portés. Avant d'installer un logiciel porté, vous devez vous assurer d'avoir un catalogue des logiciels portés à jour et vous devez consulter http://vuxml.freebsd.org/ pour les problèmes de sécurité relatifs à votre logiciel. Un contrôle des problèmes de sécurité peut être effectué automatiquement par portaudit avant toute nouvelle installation d'application. Cet outil peut être trouvé dans le catalogue des logiciels porté (security/portaudit). Vous pouvez lancer portaudit -F avant l'installation d'un nouveau logiciel porté, pour télécharger la base de données actualisée des vulnérabilités. Un audit de sécurité et une mise à jour de la base de données sera effectuée lors du contrôle quotidien de sécurité de la machine. Pour plus d'informations, lisez les pages de manuel &man.portaudit.1; et &man.periodic.8;. Le catalogue des logiciels portés suppose que vous disposez d'une connection active à l'Internet. Si ce n'est pas le cas, vous devez placer manuellement une copie du distfile dans le répertoire /usr/ports/distfiles. Pour commencer, rendez-vous dans le répertoire du logiciel porté que vous voulez installer: &prompt.root; cd /usr/ports/sysutils/lsof Une fois à l'intérieur du répertoire lsof vous verrez le squelette du logiciel porté. L'étape suivante est de compiler (également appelé la “construction”) le logiciel porté. Cela est fait en tapant simplement make à l'invite. Une fois que c'est fait, vous devriez voir quelque chose comme ceci: &prompt.root; make >> lsof_4.57D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/. >> Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/. ===> Extracting for lsof-4.57 ... [extraction output snipped] ... >> Checksum OK for lsof_4.57D.freebsd.tar.gz. ===> Patching for lsof-4.57 ===> Applying FreeBSD patches for lsof-4.57 ===> Configuring for lsof-4.57 ... [configure output snipped] ... ===> Building for lsof-4.57 ... [compilation output snipped] ... &prompt.root; Notez qu'une fois la compilation terminée, vous vous retrouvez face à l'invite. L'étape suivante est d'installer le logiciel porté. Afin de l'installer, vous devez juste ajouter un mot à la commande make, et ce mot est install: &prompt.root; make install ===> Installing for lsof-4.57 ... [installation output snipped] ... ===> Generating temporary packing list ===> Compressing manual pages for lsof-4.57 ===> Registering installation for lsof-4.57 ===> SECURITY NOTE: This port has installed the following binaries which execute with increased privileges. &prompt.root; Une fois de retour à l'invite, vous devriez être en mesure d'exécuter l'application que vous venez juste d'installer. Comme lsof est un programme qui tourne avec des privilèges accrus, un avertissement sur la sécurité est affiché. Durant la compilation et l'installation de logiciels portés, vous devriez faire attention à tout avertissement qui pourrait apparaître. Il est conseillé de supprimer le sous-répertoire de travail, qui contient tous les fichiers temporaires utilisés lors de la compilation. Non seulement cela consomme de l'espace disque, mais cela posera problème plus tard lors de la mise à jour vers une nouvelle version du logiciel porté. &prompt.root; make clean ===> Cleaning for lsof-4.57 &prompt.root; Vous pouvez vous économiser deux étapes supplémentaires en lançant juste make install clean à la place de make, make install et make clean sous la forme de trois étapes séparées. Certains interpréteurs de commandes maintiennent un cache des commandes qui sont disponibles dans les répertoires listés dans la variable d'environnement PATH, pour accélérer les opérations de recherche des fichiers exécutables de ces commandes. Si vous utilisez un de ces interpréteurs de commandes, vous pourrez avoir à utiliser la commande rehash après l'installation d'un logiciel porté, avant que la commande fraîchement installée ne puisse être utilisée. Cette commande fonctionnera pour les interpréteurs de commandes comme tcsh. Utilisez la commande hash -r pour les interpréteurs tels que sh. Consultez la documentation de votre interpréteur de commandes pour plus d'information. Certains DVD-ROMs comme le &os; Toolkit de FreeBSD Mall contiennent des distfiles. Ils peuvent être utilisés avec le catalogue des logiciels portés. Montez le DVD-ROM sous /cdrom. Si vous utilisez un point de montage différent, positionnez la variable &man.make.1; CD_MOUNTPTS. Les distfiles nécessaires seront automatiquement utilisés s'ils sont présent sur le disque. Soyez conscient que les licences de quelques logiciels portés n'autorisent pas leur présence sur le CD-ROM. Cela peut être dû à la nécessité de remplir un formulaire d'enregistrement avant le téléchargement, ou que la redistribution n'est pas permise, ou toute autre raison. Si vous désirez installer un logiciel porté qui n'est pas disponible sur le CD-ROM, vous devrez vous connecter afin de récupérer les fichiers nécessaires. Le catalogue des logiciels portés utilise &man.fetch.1; pour télécharger les fichiers, qui respecte diverses variables d'environnement, dont FTP_PASSIVE_MODE, FTP_PROXY, et FTP_PASSWORD. Il se peut que vous ayez besoin de configurer une ou plusieurs de ces dernières si vous êtes derrière un coupe-feu, ou devez utiliser un proxy FTP/HTTP. Consultez la page de manuel &man.fetch.3; pour la liste complète des variables. Pour les utilisateurs qui ne peuvent rester connectés à l'Internet indéfiniment, il existe la commande make fetch. Exécutez cette commande à la base du catalogue des logiciels portés (/usr/ports) et les fichiers nécessaires seront téléchargés. Cette commande fonctionnera également dans les sous-répertoires du catalogue, par exemple: /usr/ports/net. Notez que si un logiciel porté dépend de bibliothèques particulières ou d'autres logiciels portés, cette commande de récupérera pas les sources de ces logiciels. Remplacez fetch par fetch-recursive si vous voulez récupérer également les sources des logiciels dont dépend un logiciel porté. Vous pouvez compiler tous les logiciels d'une catégorie ou de l'ensemble du catalogue en exécutant la commande make dans un répertoire de base, juste comme la commande make fetch précédente. C'est, cependant, une idée dangereuse étant donné que certains logiciels portés ne peuvent coexister. Dans d'autres cas, certains logiciels portés peuvent installer des fichiers différents ayant le même nom. Dans de rares cas les utilisateurs peuvent vouloir récupérer les archives à partir d'un site différent du MASTER_SITES par défaut (l'emplacement par défaut à partir duquel les fichiers sont téléchargés). Vous pouvez surcharger l'option MASTER_SITES avec la commande suivante: &prompt.root; cd /usr/ports/répertoire &prompt.root; make MASTER_SITE_OVERRIDE= \ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch Dans cet exemple nous modifions la valeur par défaut de l'option MASTER_SITES pour ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/. Certains logiciels portés autorisent (ou même nécessitent) des options de compilation qui permettent l'activation/désactivation de parties de l'application qui ne sont pas nécessaires, de certaines options de sécurité, et autres personnalisations. Quelques noms de logiciels viennent immédiatement à l'esprit: www/mozilla, security/gpgme, et mail/sylpheed-claws. Un message sera affiché quand de telles options sont disponibles. Modifier les répertoires par défaut des logiciels portés Il est parfois utile (ou obligatoire) d'utiliser des répertoires de travail ou cible différents. Les variables WRKDIRPREFIX et PREFIX permettent de modifier les répertoires par défaut. Par exemple: &prompt.root; make WRKDIRPREFIX=/usr/home/example/ports install compilera le logiciel dans le répertoire /usr/home/example/ports et installera tout dans /usr/local. &prompt.root; make PREFIX=/usr/home/example/local install le compilera dans /usr/ports et l'installera dans /usr/home/example/local. Et bien sûr &prompt.root; make WRKDIRPREFIX=../ports PREFIX=../local install combinera les deux (c'est trop long pour tenir sur cette page, mais cela devrait vous donner une idée générale). Alternativement, ces variables peuvent également être configurées dans votre environnement. Consultez la page de manuel de votre interpréteur de commandes pour des instructions sur la procédure à suivre. Travailler avec <command>imake</command> Certains logiciels portés qui utilisent imake (une partie du système X Window) ne fonctionnent pas correctement avec la variable PREFIX, et insisteront pour s'installer sous /usr/X11R6. De façon similaire, certains logiciels Perl ignorent PREFIX et s'installent dans l'arborescence Perl. Faire en sorte que ces logiciels portés respectent PREFIX est une tâche difficile voire impossible. Reconfigurer les logiciels portés Lors de la compilation de certains logiciels portés, un menu &man.ncurses.3; pourra s'afficher et à partir de celui-ci vous pourrez sélectionner certaines options de compilation. Il n'est pas inhabituel pour les utilisateurs de vouloir revoir ce menu pour ajouter, supprimer, ou modifier ces options après la compilation d'un logiciel. Il y a plusieurs manières pour y parvenir. Une possibilité est de se rendre dans le répertoire contenant le logiciel porté et de taper make config, qui affichera à nouveau le menu avec les mêmes options sélectionnées. Une autre possibilité est d'utiliser make showconfig qui vous affichera toutes les options de configuration pour le logiciel porté. Enfin, une autre possibilité est d'exécuter make rmconfig qui supprimera toutes les options sélectionnées et permettra donc de repartir à zéro. Toutes ces options, et bien d'autres, sont détaillées dans la page de manuel &man.ports.7;. Supprimer des logiciels portés installés logiciels portés désinstallation Maintenant que vous savez comment installer des logiciels portés, vous vous demandez probablement comment les effacer, juste au cas où vous en installez un et plus tard vous vous apercevez que vous n'avez pas installé le bon logiciel porté. Nous désinstallerons notre exemple précédent (qui était lsof pour ceux d'entre vous qui n'ont pas suivi). Les logiciels portés sont supprimés de la même manière que pour les logiciels pré-compilés (comme décrit dans la section Utiliser le système des logiciels pré-compilés) en utilisant la commande &man.pkg.delete.1;: &prompt.root; pkg_delete lsof-4.57 Mise à jour des logiciels portés logiciels portés mise à jour Tout d'abord, listez les logiciels portés périmés dont une nouvelle version est disponible dans le catalogue des logiciels portés à l'aide de la commande &man.pkg.version.1;: &prompt.root; pkg_version -v <filename>/usr/ports/UPDATING</filename> Une fois que vous avez mis à jour le catalogue des logiciels portés, avant de tenter la mise à jour d'un logiciel porté, vous devrez consulter le fichier /usr/ports/UPDATING. Ce fichier décrit les divers problèmes et les étapes supplémentaires que les utilisateurs pourront rencontrer ou devront effectuer lors de la mise à jour un logiciel porté, comme la modification de format de fichiers, le changement des emplacements des fichiers de configuration, ou des incompatibilités avec les versions antérieures. Si le contenu du fichier UPDATING prime même s'il est en est en contradiction avec des informations présentées ici. Mise à jour des logiciels portés à l'aide de portupgrade portupgrade Le logiciel portupgrade a été conçu pour une mise à jour aisée des logiciels portés installés. Il est disponible via le logiciel porté ports-mgmt/portupgrade. Installez-le de la même manière que pour n'importe quel autre logiciel en employant la commande make install clean: &prompt.root; cd /usr/ports/ports-mgmt/portupgrade &prompt.root; make install clean Ensuite, parcourez la liste des logiciels installés avec la commande pkgdb -F et corrigez toutes les inconsistances qu'il signale. C'est une bonne idée d'effectuer ce contrôle régulièrement avant chaque mise à jour. En lançant portupgrade -a, portupgrade mettra à jour tous les logiciels portés périmés installés sur votre système. Ajoutez l'indicateur si vous voulez être consulté pour confirmer chaque mise à jour individuelle. &prompt.root; portupgrade -ai Si vous désirez mettre à jour qu'une seule application bien particulière et non pas l'intégralité des applications, utilisez la commande: portupgrade nom_du_logiciel_porté. Ajoutez l'option si portupgrade doit mettre à jour en premier lieu tous les logiciels portés nécessaires à l'application. &prompt.root; portupgrade -R firefox Pour utiliser les versions pré-compilées plutôt que les logiciels portés pour l'installation, utilisez l'option . Avec cette option portupgrade cherche les répertoires locaux listé dans la variable PKG_PATH, ou récupère les paquetages à partir d'un site distant s'ils ne sont pas trouvés localement. Si les paquetages ne peuvent pas être trouvés localement ou récupérés à distance, portupgrade utilisera les logiciels portés. Pour éviter l'usage des logiciels portés, spécifiez l'option . &prompt.root; portupgrade -PP gnome2 Pour juste récupérer les sources (ou les paquetages, si l'option est utilisée) sans compiler ni installer quelque chose, utilisez . Pour plus d'informations consultez la page de manuel &man.portupgrade.1;. Mise à jour des logiciels portés à l'aide de Portmanager portmanager Portmanager est un autre utilitaire de mise à jour aisée des logiciels portés installés. Il est disponible via le logiciel portés ports-mgmt/portmanager: &prompt.root; cd /usr/ports/ports-mgmt/portmanager &prompt.root; make install clean Tous les logiciels portés installés peuvent être mis à jour en utilisant cette simple commande: &prompt.root; portmanager -u Vous pouvez ajouter l'option pour être sollicité pour une confirmation à chaque opération qu'effectuera Portmanager. Portmanager peut également être employé pour installer de nouveaux logiciels portés sur le système. Contrairement à la commande make install clean habituelle, il mettra à jour toutes les dépendances avant de compiler et d'installer le logiciel sélectionné. &prompt.root; portmanager x11/gnome2 Si des problèmes concernant les dépendances du logiciel porté sélectionné apparaissent, vous pouvez utiliser Portmanager pour toutes les recompiler dans le bon ordre. Cette recompilation achevée, le logiciel porté en question peut alors être à son tour recompilé. &prompt.root; portmanager graphics/gimp -f Pour plus d'information, consultez la page de manuel de Portmanager. Mise à jour des logiciels portés à l'aide de Portmaster portmaster Portmaster est un autre utilitaire destiné à la mise à jour des logiciels installés. Portmaster a été conçu pour utiliser les outils présents dans le système de base (il ne dépend pas d'un autre logiciel porté) et utilise les informations contenues dans le répertoire /var/db/pkg/ pour déterminer quel logiciel doit être mis à jour. Il est disponible à partir du logiciel porté ports-mgmt/portmaster: &prompt.root; cd /usr/ports/ports-mgmt/portmaster &prompt.root; make install clean Portmaster répartit les logiciels portés en quatre catégories: logiciels dits Root (pas de dépendance, aucun logiciel n'en dépend); logiciels dits Trunk (pas de dépendance, d'autres logiciels en dépendent); logiciels dits Branch (ont des dépendances, d'autres logiciels en dépendent); logiciels dits Leaf (ont des dépendances, aucun logiciel n'en dépend). Vous pouvez lister tous les logiciels installés et rechercher les mises à jour en utilisant l'option : &prompt.root; portmaster -L ===>>> Root ports (No dependencies, not depended on) ===>>> ispell-3.2.06_18 ===>>> screen-4.0.3 ===>>> New version available: screen-4.0.3_1 ===>>> tcpflow-0.21_1 ===>>> 7 root ports ... ===>>> Branch ports (Have dependencies, are depended on) ===>>> apache-2.2.3 ===>>> New version available: apache-2.2.8 ... ===>>> Leaf ports (Have dependencies, not depended on) ===>>> automake-1.9.6_2 ===>>> bash-3.1.17 ===>>> New version available: bash-3.2.33 ... ===>>> 32 leaf ports ===>>> 137 total installed ports ===>>> 83 have new versions available L'ensemble des logiciels portés installés peut être mis à jour en utilisant cette simple commande: &prompt.root; portmaster -a Par défaut Portmaster fera une sauvegarde avant la suppression d'un logiciel porté. Si l'installation de la nouvelle version se passe correctement, Portmaster supprimera la sauvegarde. L'option demandera à Portmaster de ne pas supprimer automatiquement la sauvegarde. L'ajout de l'option lancera Portmaster en mode interactif, vous serez alors sollicité avant la mise à jour de chaque logiciel. Si vous rencontrez des erreurs lors du processus de mise à jour, vous pouvez utiliser l'option pour mettre à jour ou recompiler tous les logiciels installés: &prompt.root; portmaster -af Vous pouvez également employer Portmaster pour installer de nouveaux logiciels portés en mettant à jour toutes les dépendances avant la compilation et l'installation du nouveau logiciel: &prompt.root; portmaster shells/bash Pour plus d'information veuillez consulter la page de manuel &man.portmaster.8;. Logiciels portés et espace disque logiciels portés espace disque A la longue, l'utilisation du catalogue des logiciels portés consommera rapidement votre espace disque. Après la compilation et l'installation de logiciels à partir du catalogue des logiciels portés, vous devriez toujours penser à supprimer les répertoires de travail temporaires, work, en utilisant la commande make clean. Vous pouvez balayer l'intégralité du catalogue des logiciels portés pour supprimer tous les répertoires temporaires oubliés précédement, employez alors la commande suivante: &prompt.root; portsclean -C Avec le temps, vous accumulerez beaucoup de fichiers sources obsolètes dans le répertoire distfiles. Vous pouvez les supprimer manuellement, ou vous pouvez utiliser la commande suivante pour effacer toutes les sources qui ne correspondent plus à des logiciels portés d'actualité: &prompt.root; portsclean -D Ou pour supprimer les fichiers sources ne correspondant à aucun logiciel installé sur votre systèmes. L'utilitaire portsclean fait partie de la suite portupgrade. Pensez à supprimer les logiciels portés installés que vous n'utilisez plus. Un outil qui permet d'automatiser cette tâche est disponible via le logiciel porté ports-mgmt/pkg_cutleaves. Activités de post-installation Après l'installation d'une nouvelle application vous voudrez normalement lire la documentation qui a pu être également installée, éditer les fichiers de configuration nécessaires, vérifier que l'application est lancée au démarrage (si c'est un daemon), et ainsi de suite. Les étapes que vous devez suivre pour configurer chaque application seront bien évidemment différentes. Cependant, si vous venez juste d'installer une nouvelle application et que vous vous demandez “Et maintenant?” les astuces suivantes pourront vous aider: Utilisez &man.pkg.info.1; pour déterminer quels fichiers ont été installés et à quel endroit. Par exemple, si vous venez juste d'installer FooPackage version 1.0.0, alors la commande &prompt.root; pkg_info -L foopackage-1.0.0 | less affichera tous les fichiers installés par le logiciel pré-compilé. Portez une attention toute particulière aux fichiers dans les répertoires man/, qui seront des pages de manuel, dans les répertoires etc/ , qui seront des fichiers de configuration, et dans doc/ qui seront de la documentation plus complète. Si vous n'êtes pas sûr de la version de l'application qui vient juste d'être installée, une commande comme &prompt.root; pkg_info | grep -i foopackage déterminera tous les logiciels pré-compilés installés qui ont foopackage dans leur nom. Remplacez foopackage dans votre ligne de commande par ce qui convient. Une fois que vous avez identifié où les pages de manuel de l'application ont été installées, consultez-les en utilisant la commande &man.man.1;. De même, jetez un coup d'oeil aux exemples de fichiers de configuration, et toute autre documentation additionnelle qui peut avoir été fournie. Si l'application a un site web, consultez-le pour de la documentation supplémentaire, des listes de questions fréquemment posées, etc. Si vous n'êtes pas sûr de l'adresse du site web, elle peut être affichée dans le résultat de la commande: &prompt.root; pkg_info foopackage-1.0.0 La ligne WWW:, si elle est présente, devrait donner l'URL du site web de l'application. Les logiciels qui doivent être lancés au démarrage (comme les serveurs Internet) installent généralement un exemple de procédure de lancement dans le répertoire /usr/local/etc/rc.d. Vous devriez contrôler si ce fichier est correct et l'éditer ou le renommer si nécessaire. Consultez la section Démarrer des services pour plus d'informations. Que faire avec les logiciels portés ne fonctionnant pas? Si vous rencontrez un portage qui ne fonctionne pas, il y a certaines choses que vous pouvez faire: Vérifiez s'il n'y a pas de correctif en attente pour le logiciel porté dans la base des rapports de bogue. Si c'est le cas, il se peut que vous puissiez utiliser le correctif proposé. Demandez l'aide du responsable du logiciel porté. Tapez la commande make maintainer ou lisez le fichier Makefile pour trouver l'adresse électronique du responsable. Pensez à préciser le nom et la version du logiciel porté (envoyer la ligne $FreeBSD: du fichier Makefile) et les messages d'erreurs quand vous écrivez au responsable. Certains logiciels portés ne sont pas maintenus par une personne mais par une liste de diffusion. Plusieurs, si ce n'est toutes, les adresses de ces listes ressemblent à freebsd-listname@FreeBSD.org. Veuillez prendre cela en compte en rédigeant vos questions. En particulier, les logiciels portés apparaissant comme maintenus par ports@FreeBSD.org ne sont en fait maintenus par personne. Correctifs et aide, s'ils y en a, provient de la communauté qui est abonnée à cette liste de diffusion. Des volontaires supplémentaires sont toujours les bienvenus! Si vous n'obtenez pas de réponse, vous pouvez utiliser &man.send-pr.1; pour soumettre un rapport de bogue (consultez Ecrire des rapports de bogue pour &os;). Corrigez le problème! Le Manuel du développeur de logiciels portés inclut des informations détaillées sur l'infrastructure des logiciels portés vous permettant de corriger le portage éventuellement défectueux ou même soumettre le votre! Récupérez la version pré-compilée sur un serveur FTP proche de vous. Le catalogue de “référence” des logiciels pré-compilés se trouve sur ftp.FreeBSD.org dans le répertoire packages, mais vérifiez d'abord votre miroir local! Il y a globalement plus de chances que cela marche, que d'essayez de compiler à partir des sources, et cela va également beaucoup plus vite. Utilisez le programme &man.pkg.add.1; pour installer le logiciel pré-compilé sur votre système. Index: head/fr_FR.ISO8859-1/books/handbook/preface/preface.xml =================================================================== --- head/fr_FR.ISO8859-1/books/handbook/preface/preface.xml (revision 53063) +++ head/fr_FR.ISO8859-1/books/handbook/preface/preface.xml (revision 53064) @@ -1,731 +1,731 @@ Préface &trans.a.fonvieille; Public visé Le nouveau venu à FreeBSD constatera que la première section de ce livre guide l'utilisateur à travers le processus d'installation de FreeBSD, et présente progressivement les concepts et les conventions qui sont les fondements d'&unix;. Travailler avec cette section demande un peu plus que le simple désire d'explorer, et la capacité d'assimiler de nouveaux concepts quand ils sont présentés. Une fois que vous en êtes arrivé là, la seconde, bien plus grande, section du Manuel est une référence complète de tous les sujets qui intéressent les administrateurs systèmes de FreeBSD. Certains de ces chapitres peuvent vous recommander d'effectuer des lectures préliminaires, cela est noté dans le synopsis au début de chaque chapitre. Pour une liste de sources d'informations complémentaires, veuillez consulter . Modifications depuis la Seconde Edition Cette seconde édition est le point culminant de plus de deux ans de travail pour les membres du Groupe de Documentation de FreeBSD. Ce qui suit présente les changements principaux de cette nouvelle édition: , le chapitre Configuration et optimisation, a été augmenté avec des informations nouvelles sur la gestion ACPI des ressources et de l'énergie, sur l'utilitaire système cron, et sur d'autres d'options supplémentaires d'optimisation du noyau. , le chapitre Sécurité, a été augmenté avec de nouvelles informations sur les réseaux privés virtuels (VPNs), les listes de contrôle d'accès au système de fichiers (ACLs), et sur les avis de sécurité. , Le contrôle d'accès obligatoire (MAC) est un nouveau chapitre ajouté avec cette édition. Il explique ce qu'est le MAC et comment ce mécanisme peut être utilisé pour sécuriser un système &os;. , le chapitre Stockage des données, a bénéficié de l'ajout de nouvelles sections concernant les périphériques de stockage USB, les instantanés de systèmes de fichiers, les quotas d'utilisation des disques, les systèmes de fichiers réseaux et sauvegardés sur fichier, et le chiffrage de partitions. , Vinum, est un nouveau chapitre apparaissant avec cette édition. Il décrit l'utilisation de Vinum, un gestionnaire de volume qui permet la création de disques logiques indépendants du périphérique, et l'utilisation de systèmes RAID-0, RAID-1 et RAID-5 logiciels. Une section dépannage a été ajoutée au chapitre , PPP et SLIP. , le chapitre Courrier électronique, bénéficie de nouvelles sections sur l'utilisation d'agents de transfert de courrier alternatifs, sur l'authentification SMTP, l'UUCP, fetchmail, procmail, et d'autres sujets avancés. , le chapitre Serveurs réseau, apparaît avec cette édition. Ce chapitre traite de la configuration du serveur HTTP Apache, de ftpd, et celle d'un serveur pour clients µsoft; &windows; à l'aide de Samba. Certaines sections du chapitre , Administration réseau avancée ont été déplacées vers ce nouveau chapitre. , le chapitre Administration réseau avancée a été complété avec des informations sur l'utilisation des périphériques &bluetooth; sous &os;, la configuration de réseaux sans fil, et sur le mode de transfert réseau asynchrone (ATM). Un glossaire a été ajouté pour centraliser les définitions des termes techniques employés tout au long de cet ouvrage. La présentation des tableaux et des figures a été améliorée. Modifications depuis la Première Edition La seconde édition est le point culminant de deux ans de travail pour les membres du Groupe de Documentation de FreeBSD. Ce qui suit présente les changements principaux de cette nouvelle édition: Un sommaire complet a été ajouté. Toutes les figures ASCII ont été remplacées par des graphiques. Un synopsis standard a été ajouté à chaque chapitre pour donner un rapide résumé des informations contenues par ce dernier et ce qu'est sensé connaître le lecteur. Le contenu a été réorganisé de façon logique en trois parties: “Pour commencer”, “L'Administration Système”, et “Annexes”. - Le (“Installer FreeBSD”) fut + Le (“Installer FreeBSD”) fut complètement réécrit avec de nombreuses photos d'écrans pour rendre le texte plus facile à comprendre pour les nouveaux utilisateurs. Le (“Quelques bases d'&unix;”) a été augmenté pour contenir des informations additionnelles sur les processus, daemons et signaux. Le (“Installer des applications”) a été augmenté pour contenir des informations complémentaires sur la gestion des applications pré-compilées. Le (“Le système X Window”) a complètement été réécrit en insistant sur l'utilisation de technologies modernes d'environnement de travail comme KDE et GNOME sous &xfree86; 4.X. Le (“Le processus de démarrage de FreeBSD”) a été augmenté. Le (“Stockage des données”) fut réécrit à partir de ce qui était à l'origine deux chapitres séparés “Disques” et “Sauvegardes”. Nous pensons que le sujet est plus facile à appréhender quand il est présenté en un seul chapitre. Une section sur RAID (matériel et logiciel) fut également ajoutée. Le (“Communications série”) a été complètement réorganisé et mis à jour pour FreeBSD 4.X/5.X. Le (“PPP et SLIP”) a été sensiblement mis à jour. Plusieurs nouvelles sections ont été ajouté au (“Administration réseau avancée”). Le (“Courrier électronique”) fut augmenté pour inclure plus d'informations au sujet de la configuration de sendmail. Le (“Compatibilité &linux;”) a été augmenté pour inclure des informations sur l'installation d'&oracle; et &sap.r3;. Les nouveaux sujets suivants sont abordés dans cette seconde édition: Configuration et optimisation (). Multimédia () Organisation de cet ouvrage Ce livre est divisé en cinq parties logiquement distinctes. Le première section, Pour commencer, couvre l'installation et les bases de l'utilisation de FreeBSD. On s'attend à ce que le lecteur suive ces chapitres dans l'ordre, sautant éventuellement les chapitres traitant de sujets familiers. La seconde section Tâches courantes, couvre les fonctionnalités de &os; fréquemment utilisées. Cette section, ainsi que toutes les sections suivantes, peuvent être lues dans n'importe quel ordre. Chaque chapitre débute avec un synopsis succinct qui décrit ce dont parle le chapitre et ce qu'on s'attend à ce que le lecteur sache déjà. Cela en vue de permettre au lecteur occasionnel de se rendre directement aux chapitres qui l'intéresse. La troisième section, Administration système, traite des sujets concernant l'administration. La quatrième section, Réseaux, couvre le domaine des réseaux et des serveurs. La cinquième section contient des annexes d'information de référence. , Introduction Présente FreeBSD à un nouvel utilisateur. Il décrit l'histoire du projet FreeBSD, ses objectifs, son mode de développement. - , Installation + , Installation Guide un utilisateur à travers le processus d'installation. Quelques sujets d'installation avancée, comme l'installation avec une console série, sont aussi couverts. , Quelques bases d'&unix; Couvre les commandes et fonctionnalités de base du système d'exploitation FreeBSD. Si vous êtes familier avec &linux; ou un autre type d'&unix; alors vous pouvez probablement passer ce chapitre. , Installer des applications Couvre l'installation de logiciels tiers avec l'innovant “Catalogue de logiciels portés” de FreeBSD et les logiciels pré-compilés. , Le système X Window Décrit le système X Window en général et l'utilisation d'X11 sur FreeBSD en particulier. Décrit également les environnements de travail comme KDE et GNOME. , Bureautique Liste les applications de bureautique courantes, comme les navigateurs Web et les suites de bureautique, et décrit comment les installer sous &os;. , Multimédia Montre comment installer le support du son et de la vidéo pour votre système. Décrit également quelques applications audio et vidéo. , Configurer le noyau de &os; Explique pour quelles raisons vous devriez configurer un nouveau noyau et fournit des instructions détaillées pour la configuration, la compilation et l'installation d'un noyau sur mesures. , Impression Décrit la gestion des imprimantes sous &os;, y compris les informations sur les pages d'en-tête, la comptabilisation de l'usage et la configuration de base. , Compatibilité binaire avec &linux; Décrit les caractéristiques de la compatibilité &linux; sous &os;. Fournit également les instructions détaillées de l'installation de plusieurs applications &linux; populaires comme &oracle;, &sap.r3; et &mathematica;. , Configuration et optimisation Décrit les paramètres disponibles pour les administrateurs systèmes afin d' optimiser les performances d'un système FreeBSD. Décrit également les différents fichiers de configuration utilisés dans FreeBSD et où les trouver. , Processus de démarrage de FreeBSD Décrit le processus de démarrage de FreeBSD et explique comment contrôler ce processus avec des options de configuration. , Gestion des comptes et des utilisateurs Décrit la création et la manipulation des comptes utilisateur. Traite également des limitations de ressources qui peuvent être appliquées aux utilisateurs et des autres tâches de gestion des comptes. , Sécurité Décrit différents outils disponibles pour vous aider à sécuriser votre système FreeBSD, dont Kerberos, IPsec et OpenSSH. , Environnements jails Décrit l'organisation des environnements jail, et les améliorations apportées par ces environnements par rapport au support chroot traditionnel de &os;. , Contrôle d'accès mandataire Explique ce qu'est le contrôle d'accès mandataire (MAC) et comment ce mécanisme peut être utilisé pour sécuriser un système &os;. , Audit des événements relatifs à la sécurité Décrit ce qu'est l'audit d'événements sous &os;, comment cette fonctionnalité peut être installée, configurée et comment les audits peuvent être examinés et surveillés. , Stockage des données Décrit comment gérer les supports de stockage et les systèmes de fichiers avec FreeBSD. Cela inclut les disques physiques, les systèmes RAID, les supports optiques et bandes, les disques mémoires, et les systèmes de fichiers réseau. , GEOM Décrit ce qu'est le système GEOM sous &os; et comment configurer les différents niveaux de RAID supportés. , Vinum Décrit comment utiliser Vinum, un gestionnaire de volume logique qui permet d'avoir des disques logiques indépendants du périphérique, et le RAID-0, RAID-1 et RAID-5 logiciel. , Virtualisation Décrit ce que les systèmes de virtualisation apportent, et comment ils peuvent être utilisés avec &os;. , Localisation Décrit comment utiliser FreeBSD avec des langues autres que l'anglais. Couvre la localisation du système et des applications. , Questions avancées Explique les différences entre &os;-STABLE, &os;-CURRENT et les versions de publication;. Décrit quel type d'utilisateurs pourrait tirer profit de suivre un système de développement et présente le processus. , Communications série Explique comment connecter terminaux et modems à votre système FreeBSD aussi bien pour les connexions entrantes que sortantes. , PPP et SLIP Décrit comment utiliser PPP, SLIP ou PPP sur Ethernet pour se connecter à des systèmes distants à l'aide de FreeBSD. , Courrier électronique Explique les différents composants d'un serveur de courrier et plonge dans la configuration de base du serveur de courrier le plus populaire: sendmail. , Serveurs réseau Fournit des instructions détaillées et des exemples de fichiers de configuration pour configurer votre machine &os; comme serveur de fichiers, serveur de noms de domaine, serveur d'information réseau, ou comme serveur de synchronisation d'horloge. , Coupe-feux Explique la philosophie des coupe-feux logiciels et fournit des informations détaillées sur la configuration des différents coupe-feux disponibles pour &os;. , Administration réseau avancée Décrit de nombreux sujets sur l'utilisation réseau, dont le partage d'une connexion Internet avec d'autres ordinateurs sur votre réseau local, routage, réseaux sans-fils, &bluetooth;, ATM, IPv6, et bien plus. , Se procurer FreeBSD Enumère les différentes sources pour obtenir FreeBSD sur CDROM ou DVD, ainsi que les différents sites Internet qui vous permettent de télécharger et d'installer FreeBSD. , Bibliographie Cet ouvrage aborde de nombreux sujets cela peut vous laisser sur votre faim et à la recherche de plus de détails. La bibliographie énumère d'excellents ouvrages qui sont référencés dans le texte. , Ressources sur Internet Décrit les nombreux forums disponibles pour les utilisateurs de FreeBSD pour poster des questions et engager des conversations techniques au sujet de FreeBSD. , Clés PGP Liste les clés PGP de nombreux développeurs FreeBSD. Conventions utilisées dans ce livre Pour fournir un texte logique et facile à lire, plusieurs conventions sont respectées tout au long du livre. Conventions typographiques Italique Une police de caractères italique est utilisée pour les noms de fichiers, les URLs, le texte à mettre en valeur et la première utilisation de termes techniques. Police de caractères à chasse fixe Une police de caractères à chasse fixe est utilisée pour les messages d'erreurs, les commandes, les variables d'environnement, les noms des logiciels portés, les noms d'hôtes, les noms d'utilisateurs, les noms de groupes, les noms de périphériques, les variables et les morceaux de code source. Caractères gras Des caractères gras sont utilisés pour les applications, les commandes et les touches. Utilisation du clavier Les touches sont représentées en gras pour ressortir du texte. Les combinaisons de touches qui sont sensées être tapées simultanément sont représentées avec `+' entre chaque touche, comme par exemple: Ctrl Alt Del Indiquant que l'utilisateur devra appuyer simultanément sur les touches Ctrl, Alt, et Del. Les touches qui sont sensées être tapées en séquence seront séparées par une virgule, par exemple: Ctrl X , Ctrl S Signifiera que l'on on attend à ce que l'utilisateur tape les touches Ctrl et X simultanément et ensuite tape Ctrl et S simultanément. Exemples Les exemples commençant par E:\> indiquent une commande &ms-dos;. Sauf indication contraire, on peut exécuter ces commandes depuis une fenêtre “d'invite de commande” dans un environnement µsoft.windows; moderne. E:\> tools\fdimage floppies\kern.flp A: Les exemples commençant par &prompt.root; indiquent que la commande doit être lancée en tant que super-utilisateur sous FreeBSD. Vous pouvez ouvrir une session en tant que root pour taper cette commande, ou ouvrir une session sous votre compte normal et utiliser &man.su.1; pour obtenir les privilèges de super-utilisateur. &prompt.root; dd if=kern.flp of=/dev/fd0 Les exemples commençant par &prompt.user; indiquent une commande qui devrait être lancée par un utilisateur normal. Sauf indication contraire, la syntaxe de l'interpréteur de commandes C-shell est utilisée pour configurer les variables d'environnement et autres commandes de l'interpréteur. &prompt.user; top Remerciements L'ouvrage que vous avez en main représente les efforts de plusieurs centaines de personnes dans le monde. Qu'ils aient envoyé des corrections de fautes de frappe, ou soumis des chapitres entiers, toutes les contributions ont été utiles. Plusieurs entreprises ont supporté le développement de ce document en payant des auteurs à travailler à plein temps dessus, en payant pour la publication etc... En particulier, BSDi (rachetée plus tard par Wind River Systems) a payé à temps plein des membres du Groupe de Documentation de FreeBSD à l'amélioration de ce livre menant ainsi à la publication de la première version imprimée en Mars 2000 (ISBN 1-57176-241-8). Wind River Systems a ensuite payé plusieurs auteurs supplémentaires pour apporter un certain nombre d'améliorations à l'infrastructure de publication et à l'ajout de chapitres. Ce travail a abouti à la publication de la deuxième édition imprimée en Novembre 2001 (ISBN 1-57176-303-1). En 2003-2004, FreeBSD Mall, Inc, a payé plusieurs auteurs pour travailler sur l'amélioration de ce manuel en vue de la publication de la troisième édition papier. Index: head/fr_FR.ISO8859-1/books/handbook/x11/chapter.xml =================================================================== --- head/fr_FR.ISO8859-1/books/handbook/x11/chapter.xml (revision 53063) +++ head/fr_FR.ISO8859-1/books/handbook/x11/chapter.xml (revision 53064) @@ -1,1868 +1,1868 @@ Le système X Window KenTomMis à jour pour le serveur X11 d'X.Org par MarcFonvieille &trans.a.fonvieille; Synopsis FreeBSD utilise X11 pour fournir aux utilisateurs une interface graphique puissante. X11 est une version libre du système X Window qui est implémentée dans &xorg; et &xfree86; (et d'autres logiciels qui ne seront pas abordés ici). Les versions de &os; jusqu'à &os; 5.2.1-RELEASE utilisent par défaut &xfree86;, le serveur X11 publié par le projet &xfree86;. Depuis &os; 5.3-RELEASE, la version officielle par défaut d'X11 a été remplacée par &xorg;, le serveur X11 de la fondation X.Org qui est disponible sous une license semblable à celle de &os;. Des serveurs X commerciaux pour &os; sont également disponibles. Ce chapitre couvrira l'installation et la configuration d'X11 avec en insistant sur &xorg; version &xorg.version;. Pour des informations sur la configuration d'&xfree86; (c'est à dire sur d'anciennes versions de &os; où &xfree86; était la distribution X11 par défaut) ou d'anciennes versions de &xorg;, il est toujours possible de consulter les versions archivées de ce manuel à l'adresse http://docs.FreeBSD.org/doc/. Pour plus d'informations sur le matériel vidéo supporté par X11, consultez le site d'&xorg;. Après la lecture de ce chapitre, vous connaîtrez: Les divers composants du système X Window et comment ils fonctionnent ensemble. Comment installer et configurer X11. Comment installer et utiliser différents gestionnaires de fenêtres. Comment utiliser les polices de caractères &truetype; sous X11. Comment configurer votre système pour l'utilisation de procédures de connexions graphiques (XDM). Avant de lire ce chapitre, vous devrez: Savoir comment installer des logiciels tiers (). Comprendre X Utiliser X pour la première fois peut être en quelque sorte un choc pour quelqu'un de familier avec d'autres environnements graphiques, tels que µsoft.windows; ou &macos;. Alors qu'il n'est pas nécessaire de comprendre tout le détail des divers composants de X ni comment ils interagissent entre eux, une certaine connaissance des bases permet de tirer profit des points forts d'X. Pourquoi X? X n'est pas le premier système de fenêtrage écrit pour &unix;, mais c'est le plus populaire d'entre eux. L'équipe originelle de développement d'X avait travaillé sur un autre système de fenêtrage avant d'écrire X. Le nom de ce système était W (pour Window - fenêtre). X était juste la lettre suivante dans l'alphabet romain. X peut être appelé “X”, “Système X Window”, X11, et sous d'autres noms. Il se peut que vous puissiez trouver que nommer X11 X Windows peut être offensant pour certaines personnes; consultez &man.X.7; pour un peu plus d'éclairements sur la question. Le modèle client/serveur d'X X a été conçu dès le départ autour de la notion de réseau, et adopte un modèle client-serveur. Dans le modèle X, le “serveur X” tourne sur l'ordinateur sur lequel sont branchés le clavier, le moniteur, et la souris. Le serveur est responsable de tâches telles que la gestion de l'affichage, des entrées en provenance du clavier et de la souris, et d'autres périphériques d'entrée ou de sortie (une tablette peut être utilisée comme périphérique d'entrée et un vidéo-projecteur peut être un périphérique de sortie alternatif). Chaque application X (comme XTerm, ou &netscape;) est un “client”. Un client envoie des messages au serveur comme “Dessines une fenêtre aux coordonnées suivantes”, et le serveur envoie au client des messages du type “L'utilisateur vient de cliquer sur le bouton OK”. Chez soi ou dans un petit bureau, le serveur X et les clients X tourneront presque toujours sur le même ordinateur. Cependant, il est parfaitement possible de faire tourner le serveur X sur un ordinateur de bureau moins puissant, et les applications X (les clients) sur, par exemple, la machine puissante et chère du service. Dans ce scénario la communication entre le client X et le serveur se fera par l'intermédiaire du réseau. Cela jette le trouble chez certaines personnes, parce que la technologie X est exactement le contraire de ce à quoi ils s'attendent. Ils s'attendent à ce que le “serveur X” soit la grosse machine puissante au fond du couloir, et le “client X” la machine sur leur bureau. Il est important de se souvenir que le serveur X est la machine avec le moniteur et le clavier, et les clients X sont les programmes qui affichent les fenêtres. Il n'y a rien dans le protocole qui force les machines clientes et serveurs d'utiliser le même système d'exploitation, ou même de tourner sur le même type d'ordinateur. Il est certainement possible de faire fonctionner un serveur X sur µsoft.windows; ou &macos; d'Apple, et il existe diverses applications gratuites et commerciales qui font exactement cela. Le gestionnaire de fenêtres La philosophie de conception d'X est comme celle d'&unix;, “des outils, pas de contraintes”. Cela signifie qu'X n'essaye pas de dicter comment une tâche doit être accomplie. A la place, les outils sont fournis à l'utilisateur, et c'est à lui de décider comment utiliser ces outils. Cette philosophie va jusqu'à pousser X à ne pas contrôler l'aspect des fenêtres à l'écran, comment les déplacer avec la souris, quelles combinaisons de touches devraient être utilisées pour passer de l'une à l'autre (i.e., Alt Tab , dans le cas de µsoft.windows;), comment devraient être les barres de titre de chaque fenêtres, qu'elles aient ou pas des boutons de fermetures, etc... Au lieu de cela, X délègue cette responsabilité à une application appelée un “Window Manager” - gestionnaire de fenêtres. Il existe des douzaines de gestionnaires de fenêtres disponibles pour X: AfterStep, Blackbox, ctwm, Enlightenment, fvwm, Sawfish, twm, Window Maker, et bien plus. Chacun de ces gestionnaires de fenêtres fournit une apparence et une prise en main différente; certains d'entre eux supportent les “bureaux virtuels”; d'autres permettent de personnaliser les combinaisons de touches de gestion du bureau; certains ont un bouton “Démarrer” ou quelque chose d'identique; certains possèdent un système de “thèmes”, permettant un changement complet d'apparence et de prise en main en sélectionnant un nouveau thème. Ces gestionnaires de fenêtres, et bien plus, sont disponibles dans la catégorie x11-wm du catalogue des logiciels portés. De plus, les environnements de travail KDE et GNOME ont leur propre gestionnaire de fenêtres qui s'intègre avec l'environnement. Chaque gestionnaire de fenêtres possède également un mécanisme de configuration propre; certains demandent un fichier de configuration écrit à la main, d'autres disposent d'outils graphiques pour la plupart des tâches de configuration; et au moins un (Sawfish) utilise un fichier de configuration écrit dans un dialecte du langage LISP. Politique de focus Une autre fonction dont est responsable le gestionnaire de fenêtre est la “politique de focus” de la souris. Chaque système de fenêtrage a besoin de méthodes de choix de la fenêtre qui doit recevoir les frappes au clavier, et devrait également indiquer visiblement quelle fenêtre est active. Une politique de focus commune est appelée “click-to-focus” (cliquer pour obtenir le focus). C'est le mode utilisé sous µsoft.windows;, dans lequel une fenêtre devient active quand elle reçoit un clic de la souris. X ne supporte aucune politique de focus particulière. Au lieu de cela, le gestionnaire de fenêtres contrôle quelle fenêtre a le focus à n'importe quel moment. Différents gestionnaires de fenêtres supporteront différentes méthodes de focus. Tous supportent le clic pour obtenir le focus, une grande majorité supporte d'autres méthodes. Les politiques de focus les plus populaires sont: “focus-follows-mouse” - le focus suit la souris La fenêtre qui est sous le pointeur de la souris est la fenêtre qui a le focus. Ce n'est pas nécessairement la fenêtre qui est au-dessus des autres. Le focus est modifié en pointant une autre fenêtre, là il n'y pas besoin de cliquer sur la fenêtre. “sloppy-focus” - focus relâché Cette politique est version dérivée du “focus-follows-mouse”. Avec “focus-follows-mouse”, si la souris est déplacée sur la fenêtre racine (ou fond de l'écran) alors aucune fenêtre n'a le focus, et les frappes au clavier sont tout simplement perdues. Avec le focus relâché, le focus n'est modifié que si le pointeur passe sur une nouvelle fenêtre, et non pas quand il quitte la fenêtre actuelle. “click-to-focus” - cliquer pour obtenir le focus La fenêtre active est sélectionnée par clic de la souris. La fenêtre peut être ramenée au premier plan. Toutes les frappes au clavier seront désormais dirigées vers cette fenêtre, même si le curseur est déplacé vers une autre fenêtre. De nombreux gestionnaires de fenêtres supportent d'autres politiques, comme des variations de celles-ci. Assurez-vous de consulter la documentation du gestionnaire de fenêtres. “Widgets” - Eléments graphiques L'approche d'X d'offrir uniquement des outils s'étend aux éléments graphiques que l'on voit à l'écran dans chaque application. “Widget” est un terme pour désigner tous les éléments de l'interface utilisateur qui peuvent être cliqués ou manipulés d'une façon ou d'une autre; boutons, boîtes à cocher, boutons radio, icônes, listes, etc... µsoft.windows; appelle ces derniers des “contrôles”. µsoft.windows; et &macos; d'Apple ont tous deux une politique très rigide au niveaux des éléments graphiques. Les développeurs d'applications sont supposés s'assurer que leurs applications partagent une apparence et une prise en main commune. Avec X, on n'a pas considéré comme sensible d'exiger un style graphique particulier, ou ensemble d'éléments graphiques à respecter. En conséquence, ne vous attendez pas à ce que les applications X aient une apparence et une prise en main communes. Il a plusieurs ensembles populaires d'éléments graphiques et leurs variations, dont l'ensemble d'éléments original Athena du MIT, &motif; (d'après lequel fût modelé l'ensemble d'éléments graphiques de µsoft.windows;, tous les bords biseautés et trois nuances de gris), OpenLook, et d'autres. La plupart des nouvelles applications X, aujourd'hui utiliseront un ensemble d'éléments graphiques à l'apparence moderne, soit Qt, utilisé par KDE, soit GTK+, utilisé par le projet GNOME. A cet égard, il y a une certaine convergence dans l'apparence et la prise en main de l'environnement de travail &unix;, qui facilite certainement les choses pour l'utilisateur débutant. Installer X11 &xorg; est l'implémentation par défaut d'X11 sous &os;. &xorg; est le serveur X de l'implémentation open source du système X Window publiée par la fondation X.Org. &xorg; est basée sur le code de &xfree86; 4.4RC2 et d'X11R6.6. la version d'&xorg; actuellement disponible dans le catalogue des logiciels portés de &os; est la &xorg.version;. Pour compiler et installer &xorg; à partir du catalogue des logiciels portés: &prompt.root; cd /usr/ports/x11/xorg &prompt.root; make install clean Pour compiler &xorg; dans son intégralité, assurez-vous de disposer d'au moins 4 Go d'espace libre. D'autre part, X11 peut être directement installée à partir de paquetages. Une version pré-compilée à utiliser avec l'outil &man.pkg.add.1; est également disponible pour X11. Quand la fonction de récupération à distance de &man.pkg.add.1; est utilisée, le numéro de version doit être retiré. &man.pkg.add.1; téléchargera automatiquement la toute dernière version de l'application. Donc pour récupérer et installer la version pré-compilée d'&xorg;, tapez simplement: &prompt.root; pkg_add -r xorg Les exemples ci-dessus installeront la distribution complète d'X11 comprenant les serveurs, les clients, les polices de caractères, etc. Des paquetages et des logiciels portés séparés pour les différentes parties d'X11 sont également disponibles. Le reste de ce chapitre expliquera comment configurer X11, et comment installer un environnement de travail productif. Configuration d'X11 ChristopherShumwayContribution de &xorg; X11 Avant de commencer Avant de configurer X11, les informations sur le système cible sont nécessaires: Caractéristiques du moniteur Circuit graphique présent sur la carte vidéo Quantité de mémoire présente sur la carte vidéo fréquence de balayage horizontale fréquence de synchronisation verticale Les caractéristiques du moniteur sont utilisées par X11 pour déterminer la résolution et le taux de rafraîchissement à utiliser. Ces caractéristiques sont généralement obtenues sur la documentation fournie avec le moniteur ou sur le site web du constructeur. Il y a deux intervalles de nombres nécessaires, les fréquences de balayage horizontale et les fréquences de synchronisation verticale. La circuit graphique présent sur la carte vidéo définit quel pilote de périphérique X11 utilise pour communiquer avec le matériel graphique. Avec la plupart des circuits, cela peut être détecté automatiquement, mais il est toujours utile de connaître le type dans le cas où la détection automatique ne fonctionnerait pas correctement. La quantité de mémoire graphique sur la carte vidéo détermine la résolution et la profondeur de couleurs qui pourront être utilisées. C'est important de le savoir afin que l'utilisateur soit au courant des limitations du système. Configurer X11 Avec la version 7.3, &xorg; peut, la plupart du temps, fonctionner sans aucun fichier de configuration en tapant simplement à l'invite: &prompt.user; startx Si cela ne fonctionne pas, ou si la configuration par défaut n'est pas satisfaisante, X11 peut être configuré manuellement. La configuration d'X11 est un processus en plusieurs étapes. La première étape est de générer un fichier de configuration. En tant que super utilisateur, lancez simplement: &prompt.root; Xorg -configure Cela générera, dans le répertoire /root, un squelette de fichier de configuration pour X11 appelé xorg.conf.new (que vous utilisiez &man.su.1; ou ouvrez directement une session, cela affecte la variable d'environnement $HOME du super-utilisateur, et donc le répertoire utilisé pour écrire ce fichier). Le programme X11 tentera de sonder le matériel graphique présent sur le système et écrira un fichier de configuration pour charger les pilotes de périphériques corrects pour le matériel détecté sur le système cible. L'étape suivante est de tester la configuration existante pour vérifier que &xorg; peut fonctionner avec le matériel graphique présent sur le système cible. Pour effectuer ce test, lancez: &prompt.root; Xorg -config xorg.conf.new Si une grille grise et noire et un curseur de souris en forme de X apparaissent, la configuration fonctionne correctement. Pour quitter le test, appuyez simplement sur les touches Ctrl Alt Backspace simultanément. - + optimisation de la configuration d'X11 Ensuite, optimisez le fichier de configuration xorg.conf.new selon vos goûts. Ouvrez le fichier dans un éditeur de texte comme &man.emacs.1; ou &man.ee.1;. Tout d'abord, ajoutez les fréquences pour le moniteur du système cible. Celles-ci sont généralement exprimées sous la forme de fréquences de synchronisation horizontale et verticale. Ces valeurs sont ajoutées dans le fichier xorg.conf.new dans la section "Monitor": Section "Monitor" Identifier "Monitor0" VendorName "Monitor Vendor" ModelName "Monitor Model" HorizSync 30-107 VertRefresh 48-120 EndSection Les termes HorizSync et VertRefresh peuvent être absents du fichier de configuration. Si c'est le cas, ils doivent être ajoutés, avec les fréquences horizontales correctes placées après le terme HorizSync et les fréquences verticales après le terme VertRefresh. Dans l'exemple ci-dessus les fréquences du moniteur ont été entrées. X autorise l'utilisation des caractéristiques DMPS (Energy Star) avec les moniteurs qui en sont capables. Le programme &man.xset.1; contrôle les délais et peut forcer la mise en veille, l'arrêt, ou les modes d'extinction. Si vous souhaitez activer les fonctions DMPS de votre moniteur, vous devez ajouter la ligne suivante dans la section concernant le moniteur: Option "DPMS" xorg.conf Pendant que le fichier de configuration xorg.conf.new est toujours ouvert dans un éditeur, sélectionnez la résolution par défaut et la profondeur de couleurs désirée. Cela est défini dans la section "Screen": Section "Screen" Identifier "Screen0" Device "Card0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 Modes "1024x768" EndSubSection EndSection Le terme DefaultDepth indique la profondeur de couleurs utilisée par défaut. Cette valeur peut être outrepassée avec l'option en ligne de la commande &man.Xorg.1;. Le terme Modes indique la résolution à utiliser pour la profondeur de couleurs donnée. Notez que seuls les modes standard VESA sont supportés comme définis par le matériel graphique du système cible. Dans l'exemple ci-dessus, la profondeur de couleurs par défaut est de vingt quatre bits par pixel. A cette profondeur de couleurs, la résolution acceptée est de 1024 par 768. Pour fonctionner à une résolution de mille vingt quatre pixels par sept cent soixante huit pixels à vingt quatre bits par pixel, ajoutez le terme DefaultDepth avec la valeur vingt quatre, et ajoutez à la sous-section "Display" avec la valeur Depth désirée le terme Modes avec la résolution souhaitée par l'utilisateur. Notez que seuls les modes standard VESA sont supportés comme définis par le matériel graphique du système cible. Enfin, sauvez le fichier de configuration et testez-le en utilisant la procédure de test donnée ci-dessus. Un des outils disponibles pour vous aider en cas de problèmes sont les fichiers journaux d'X11, qui contiennent des informations sur chaque périphérique auquel le serveur X11 s'attache. Les noms des fichiers journaux d'&xorg; suivent la forme /var/log/Xorg.0.log. Le nom exact du fichier peut aller de Xorg.0.log à Xorg.8.log et ainsi de suite. Si tout se passe bien, le fichier de configuration doit être installé à un emplacement commun où &man.Xorg.1; pourra le trouver. C'est typiquement soit /etc/X11/xorg.conf ou /usr/local/etc/X11/xorg.conf. &prompt.root; cp xorg.conf.new /etc/X11/xorg.conf La configuration de X11 est maintenant achevée. &xorg; peut être maintenant lancé avec l'utilitaire &man.startx.1;. Le serveur X11 peut également être lancé à l'aide de &man.xdm.1;. Il existe également un outil de configuration graphique, &man.xorgcfg.1;, qui est fourni avec la distribution X11. Il permet de définir intéractivement votre configuration en sélectionnant les pilotes de périphériques et les paramètres adéquats. Ce programme peut être invoqué à partir de la console, en tapant la commande xorgcfg -textmode. Pour plus de détails, consultez la page de manuel d'&man.xorgcfg.1;. Alternativement, il existe également un outil appelé &man.xorgconfig.1;. Ce programme est un utilitaire en mode console moins convivial, mais qui peut fonctionner dans les situations où les autres ont échoué. Sujets avancés de configuration Configuration avec les circuits graphiques &intel; i810 circuits graphiques Intel i810 La configuration avec les circuits intégrés graphiques &intel; i810 nécessite agpgart l'interface de programmation AGP pour X11 afin de piloter la carte. Consultez la page de manuel du pilote &man.agp.4; pour plus d'information. Cela permettra la configuration de ce matériel comme n'importe quelle autre carte graphique. Notez que sur les systèmes sans le pilote &man.agp.4; compilé dans le noyau, tenter de charger le module à l'aide de &man.kldload.8; ne fonctionnera pas. Ce pilote doit être dans le noyau au démarrage soit compilé dans le noyau soit en utilisant /boot/loader.conf. Utilisation d'un écran large (<emphasis>Widescreen</emphasis>) configuration des écrans larges Cette section nécessite une maîtrise des configurations avancées. Si les tentatives d'utilisation des outils de configuration standards précédents n'ont pas donné lieu à une configuration fonctionnelle, il y a cependant suffisamment d'information dans les fichiers journaux pour parvenir à faire fonctionner votre équipement. L'utilisation d'un éditeur de texte sera également nécessaire. Les écrans larges actuellement disponibles (WSXGA, WSXGA+, WUXGA, WXGA, WXGA+, et.al.) supportent les formats 16:10 et 10:9 ainsi que d'autres formats pouvant être problèmatiques. Les résolutions d'écran courantes pour les formats 16:10 sont: 2560x1600 1920x1200 1680x1050 1440x900 1280x800 Dans certains cas, la configuration nécessitera de simplement ajouter une de ces résolutions comme Mode possible dans la Section "Screen": Section "Screen" Identifier "Screen0" Device "Card0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 Modes "1680x1050" EndSubSection EndSection &xorg; est suffisamment intelligent pour obtenir auprès de l'écran les informations sur la résolution par l'intermédiaire des données I2C/DDC, de cette manière il connaît les fréquences et résolutions maximales que peut supporter le moniteur. Si ces ModeLines ne sont pas présentes dans les pilotes, on pourra toujours aider &xorg; dans ce sens. En examinant le contenu du fichier /var/log/Xorg.0.log, on peut en extraire suffisamment d'information pour créer manuellement une ModeLine qui fonctionnera. Recherchez les lignes du type: (II) MGA(0): Supported additional Video Mode: (II) MGA(0): clock: 146.2 MHz Image Size: 433 x 271 mm (II) MGA(0): h_active: 1680 h_sync: 1784 h_sync_end 1960 h_blank_end 2240 h_border: 0 (II) MGA(0): v_active: 1050 v_sync: 1053 v_sync_end 1059 v_blanking: 1089 v_border: 0 (II) MGA(0): Ranges: V min: 48 V max: 85 Hz, H min: 30 H max: 94 kHz, PixClock max 170 MHz Ce type de données est appelée information EDID. La création d'une ModeLine à partir de ces informations consiste juste à placer les différentes valeurs dans le bon ordre: ModeLine <name> <clock> <4 horiz. timings> <4 vert. timings> Ainsi la ligne ModeLine de la Section "Monitor" pour cet exemple ressemblera à ceci: Section "Monitor" Identifier "Monitor1" VendorName "Bigname" ModelName "BestModel" ModeLine "1680x1050" 146.2 1680 1784 1960 2240 1050 1053 1059 1089 Option "DPMS" EndSection Ces modifications effectuées, X devrait maintenant se lancer sans problème sur votre nouvel écran large. Utilisation des polices de caractères sous X11 MurrayStokelyContribution de Polices de caractères Type1 Les polices de caractères livrées par défaut avec X11 sont loin d'être idéales pour des applications de type publication. Les grandes polices utilisées pour les présentations présentent un aspect en escalier et peu professionnel, et les petites polices sous &netscape; sont presque complètement illisibles. Cependant, il existe de nombreuses polices Type1 (&postscript;) gratuites, de hautes qualités qui peuvent être aisément utilisées avec X11. Par exemple, la collection de polices de caractères URW (x11-fonts/urwfonts) comprend une version haute qualité des polices de caractères standards type1 (Times Roman, Helvetica, Palatino et autres). La collection Freefonts (x11-fonts/freefonts) comprend beaucoup plus de polices de caractères, mais la plupart d'entre elles sont destinées à être utilisées avec des logiciels graphiques comme The Gimp, et ne sont pas suffisamment complètes pour servir de polices de caractères d'affichage. De plus X11 peut être configuré pour utiliser les polices de caractères &truetype; avec un minimum d'effort. Pour plus de détails à ce sujet, consultez la page de manuel &man.X.7; ou la section sur les polices de caractères &truetype;. Pour installer les collections de polices de caractères Type1 précédentes à partir du catalogue des logiciels portés, lancez les commandes suivantes: &prompt.root; cd /usr/ports/x11-fonts/urwfonts &prompt.root; make install clean Et de même pour la collection Freefont ou d'autres. Pour que le serveur X détecte ces polices, ajoutez une ligne appropriée au fichier de configuration du serveur X (/etc/X11/xorg.conf), du type: FontPath "/usr/local/lib/X11/fonts/URW/" Autre possibilité, en ligne de commande dans une session X lancez: &prompt.user; xset fp+ /usr/local/lib/X11/fonts/URW &prompt.user; xset fp rehash Cela fonctionnera mais les effets seront perdus quand la session X sera fermée, à moins de l'ajouter dans le fichier de démarrage (~/.xinitrc pour une session startx classique, ou dans ~/.xsession quand on s'attache au système par l'intermédiaire d'un gestionnaire de session graphique comme XDM). Une troisième méthode est d'utiliser le nouveau fichier /usr/local/etc/fonts/local.conf: voir la section sur l'anticrénelage. Polices de caractères &truetype; TrueType Fonts fonts TrueType &xorg; dispose d'un support intégré pour le rendu des polices &truetype;. Il y a deux différents modules qui peuvent activer cette fonctionnalité. Le module freetype est utilisé dans cet exemple parce qu'il est plus compatible avec les autres moteurs de rendu des polices de caractères. Pour activer le module freetype ajoutez juste la ligne suivante dans la section "Module" du fichier /etc/X11/xorg.conf. Load "freetype" Maintenant créez un répertoire pour les polices &truetype; (par exemple /usr/local/lib/X11/fonts/TrueType) et copiez toutes les polices &truetype; dans ce répertoire. Gardez à l'esprit que les polices &truetype; ne peuvent être directement prises d'un Macintosh; elles doivent être dans un format &unix;/&ms-dos;/Windows pour être utilisées sous X11. Une fois les fichiers copiés dans ce répertoire, utilisez ttmkfdir pour créer un fichier fonts.dir, de façon à ce que le moteur d'affichage des polices d'X sache que de nouveaux fichiers ont été installés. ttmkfdir est disponible dans le catalogue des logiciels portés de FreeBSD sous x11-fonts/ttmkfdir. &prompt.root; cd /usr/local/lib/X11/fonts/TrueType &prompt.root; ttmkfdir -o fonts.dir Maintenant ajoutez le répertoire des polices &truetype; au chemin des polices de caractères. Cela est identique à ce qui est décrit ci-dessus pour les polices Type1, c'est à dire, utiliser &prompt.user; xset fp+ /usr/local/lib/X11/fonts/TrueType &prompt.user; xset fp rehash ou ajouter une ligne FontPath au fichier xorg.conf. Voilà. Désormais &netscape;, Gimp, &staroffice;, et toutes les autres applications X devraient maintenant reconnaître les polices de caractères &truetype;. Les polices très petites (comme le texte de page web visualisé sur un écran haute résolution) et les très grandes polices (dans &staroffice;) auront un rendu bien meilleur maintenant. Polices de caractères anticrénelage Joe MarcusClarkeMis à jour par polices de caractères anticrénelage polices de caractères anticrénelage L'anticrénelage est disponible sous X11 depuis &xfree86; 4.0.2. Cependant, la configuration des polices de caractères était relativement lourde avant l'arrivée d'&xfree86; 4.3.0. Depuis &xfree86; 4.3.0, toutes les polices sous X11 se trouvant dans les répertoires /usr/local/lib/X11/fonts/ et ~/.fonts/ sont automatiquement disponibles pour l'anticrénelage avec les applications compatibles Xft. Toutes les applications ne sont pas compatibles Xft, mais de nombreuses ont été dotées du support Xft. Par exemple, les applications utilisant Qt 2.3 et versions suivantes (la boîte à outils pour l'environnement de travail KDE), GTK+ 2.0 et suivantes (la boîte à outils de l'environnement de travail GNOME), et Mozilla 1.2 et versions suivantes. Afin de contrôler quelles polices de caractères sont anticrénelées, ou pour configurer les propriétés de l'anticrénelage, créez (ou éditez, s'il existe déjà) le fichier /usr/local/etc/fonts/local.conf. Plusieurs caractéristiques avancées du système de fontes Xft peuvent être ajustées par l'intermédiaire de ce fichier; cette section ne décrit que des possibilités simples. Pour plus de détails, consultez la page de manuel &man.fonts-conf.5;. XML Ce fichier doit être dans le format XML. Faites attention à la casse des caractères, et assurez-vous que toutes les balises sont correctement fermées. Le fichier débute avec l'entête XML classique suivie par une définition DOCTYPE, puis de la balise <fontconfig>: <?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> Comme précisé précédemment, l'ensemble des polices de caractères du répertoire /usr/local/lib/X11/fonts/ comme du répertoire ~/.fonts/ sont disponibles pour les applications compatibles Xft. Si vous désirez ajouter un autre répertoire en dehors des ces deux là, ajoutez une ligne similaire à la suivante au fichier /usr/local/etc/fonts/local.conf: <dir>/chemin/vers/mes/fontes</dir> Après l'ajout de nouvelles fontes, et tout particulièrement de nouveaux répertoires de polices, vous devrez exécuter la commande suivante pour reconstituer le cache des polices de caractères: &prompt.root; fc-cache -f L'anticrénelage rend les bords légèrement flous, ce qui rend le texte très petit plus lisible et enlève l'effet “d'escalier” des grands textes, mais peut provoquer une fatigue visuelle si c'est appliqué au texte normal. Pour exclure les tailles de polices inférieures à 14 points de l'anticrénelage, ajoutez ces lignes: <match target="font"> <test name="size" compare="less"> <double>14</double> </test> <edit name="antialias" mode="assign"> <bool>false</bool> </edit> </match> <match target="font"> <test name="pixelsize" compare="less" qual="any"> <double>14</double> </test> <edit mode="assign" name="antialias"> <bool>false</bool> </edit> </match> polices de caractères espacement L'espacement pour certaines polices de caractères à chasse fixe peut également être inapproprié avec l'anticrénelage. Cela semble être un problème avec KDE, en particulier. Une solution possible pour cela est de forcer l'espacement pour de telles polices de caractères à 100. Ajoutez les lignes suivantes: <match target="pattern" name="family"> <test qual="any" name="family"> <string>fixed</string> </test> <edit name="family" mode="assign"> <string>mono</string> </edit> </match> <match target="pattern" name="family"> <test qual="any" name="family"> <string>console</string> </test> <edit name="family" mode="assign"> <string>mono</string> </edit> </match> (ceci ajoute un alias "mono" pour les autres noms communs des polices de caractères fixes), puis ajoutez: <match target="pattern" name="family"> <test qual="any" name="family"> <string>mono</string> </test> <edit name="spacing" mode="assign"> <int>100</int> </edit> </match> Certaines polices de caractères, comme Helvetica, peuvent présenter des problèmes lors de l'anticrénelage. Généralement cela se manifeste par l'impression que la fonte semble coupée en deux verticalement. Au pire cela peut provoquer des crashs avec certaines application comme Mozilla. Pour éviter cela, pensez à ajouter ce qui suit au fichier local.conf: <match target="pattern" name="family"> <test qual="any" name="family"> <string>Helvetica</string> </test> <edit name="family" mode="assign"> <string>sans-serif</string> </edit> </match> Une fois l'édition de local.conf achevée, assurez-vous que le fichier se termine par la balise </fontconfig>. Si ce n'est pas le cas, tous vos changements seront ignorés. L'ensemble de polices de caractères fourni par défaut avec X11 n'est pas très adapté pour l'anticrénelage. Un bien meilleur ensemble de fontes peut être trouvé dans le catalogue des logiciels portés: x11-fonts/bitstream-vera. Ce logiciel installera un fichier /usr/local/etc/fonts/local.conf si ce dernier n'existe pas déjà. Si le fichier existe, le logiciel porté créera un fichier nommé /usr/local/etc/fonts/local.conf-vera. Il fusionnera le contenu de ce fichier dans /usr/local/etc/fonts/local.conf, et les polices de caractères Bitstream remplaceront automatiquement les polices avec empattement (serif), sans empattement (sans-serif) et à chasse fixe d'X11. Et enfin, les utilisateurs peuvent ajouter leurs propres paramètres par l'intermédiaire de leur fichier .fonts.conf. Pour cela, chaque utilisateur devrait créer un fichier ~/.fonts.conf. Ce fichier doit également être écrit en XML. LCD screen Fonts LCD screen Un dernier point: avec un écran LCD, un échantillonnage “sub-pixel” peut être désiré. Fondamentalement, ceci traite les composantes rouge, verte et bleu séparément (horizontalement séparées) pour améliorer la résolution horizontale; les résultats peuvent être dramatiques. Pour activer cela, ajoutez quelque part dans le fichier local.conf les lignes: <match target="font"> <test qual="all" name="rgba"> <const>unknown</const> </test> <edit name="rgba" mode="assign"> <const>rgb</const> </edit> </match> En fonction de type d'écran, le terme “rgb” pourra devoir être changé pour “bgr”, “vrgb” ou “vbgr”: expérimentez pour définir lequel fonctionne le mieux. Mozilla désactiver l'anticrénelage des polices de caractères L'anticrénelage devrait être activé au prochain lancement du serveur X. Cependant, notez que les applications doivent savoir comment l'utiliser. A l'heure actuelle, le “toolkit” Qt le supporte, donc l'intégralité de l'environnement KDE peut utiliser des polices anticrénelées. GTK+ et GNOME peuvent également faire usage de l'anticrénelage via le système Font (voir la pour plus de détails). Par défaut, Mozilla 1.2 et versions suivantes utiliseront automatiquement l'anticrénelage. Pour désactiver cette caractéristique, recompilez Mozilla avec le paramètre -DWITHOUT_XFT. Le gestionnaire de procédures de connexions graphiques - “X Display Manager” SethKingsleyContribution de Généralités X Display Manager Le gestionnaire de procédures de connexions graphiques - “X Display Manager” (XDM) est une partie optionnelle du système X Window qui est utilisée pour la gestion des procédures de connexion au système. C'est utile dans plusieurs types de situations, dont les “Terminaux X” minimaux, et les serveurs X d'affichage de grands réseaux. Comme le système X Window est indépendant du type de réseau et de protocole, il existe une large variété de configurations possibles pour faire fonctionner des clients et des serveurs X sur différentes machines connectées entre elles par un réseau. XDM fournit une interface graphique pour sélectionner à quel serveur d'affichage se connecter, et entrer des informations d'autorisation comme l'ensemble identifiant et mot de passe. Il faut voir XDM comme fournissant les mêmes fonctionnalités à l'utilisateur que l'utilitaire &man.getty.8; (voir la pour plus de détails). C'est à dire, qu'il exécute les ouvertures de session sur le système sur lequel on se connecte et lance alors une session au nom de l'utilisateur (généralement un gestionnaire de fenêtres pour X). XDM attend alors que le programme se termine, signalant que l'utilisateur en a terminé et devrait être déconnecté du système. A ce moment, XDM peut afficher les écrans d'invite d'ouverture de session et de sélection de serveur pour le prochain utilisateur. Utiliser XDM Le “daemon” d'XDM est /usr/local/bin/xdm. Ce programme peut être lancé à n'importe quel moment en tant que root et il s'occupera de la gestion d'X sur la machine locale. Si XDM doit être exécuté à chaque démarrage de la machine, une manière pratique de le faire est d'ajouter une entrée dans /etc/ttys. Pour plus d'informations sur le format et l'utilisation de ce fichier, consultez la . Il existe une ligne dans le fichier /etc/ttys de défaut pour exécuter le “daemon” XDM sur un terminal virtuel: ttyv8 "/usr/local/bin/xdm -nodaemon" xterm off secure Par défaut cette entrée est désactivée; afin de la réactiver modifiez le cinquième champ de off à on et relancez &man.init.8; en utilisant les indications de la . Le premier champ, le nom du terminal que ce programme gérera, est ttyv8. Cela signifie que XDM démarrera sur le neuvième terminal virtuel. Configurer XDM Le répertoire de configuration d'XDM est situé dans /usr/local/lib/X11/xdm. Dans ce répertoire il y a de nombreux fichiers utilisés pour modifier le comportement et l'apparence d'XDM. Généralement les fichiers suivants seront présents: Fichier Description Xaccess Ensemble de règles d'autorisation du client. Xresources Fichier des ressources X par défaut. Xservers Liste des écrans distants et locaux à gérer. Xsession Procédure d'ouverture de session par défaut. Xsetup_* Procédures utilisées pour exécuter des applications avant l'interface d'ouverture de session. xdm-config Configuration globale pour tous les affichages utilisants cette machine. xdm-errors Erreurs générées par le programme serveur. xdm-pid L'identifiant du processus exécutant actuellement XDM. Dans ce répertoire se trouvent également quelques procédures et programmes utilisés pour configurer l'environnement quand XDM fonctionne. L'objet de chacun de ces fichiers sera brièvement décrit. La syntaxe exacte et l'utilisation de tous ces fichiers sont décrites dans la page de manuel &man.xdm.1;. La configuration par défaut est une simple fenêtre rectangulaire d'ouverture de session avec le nom de la machine hôte affiché en haut dans une grande police de caractères et avec des invites “Login:” et “Password:” en-dessous. C'est un bon point de départ pour modifier l'apparence et la prise en main des écrans XDM. Xaccess Le protocole utilisé pour se connecter à des écrans contrôlés par XDM est appelé le “X Display Manager Connection Protocol” (XDMCP). Ce fichier est un ensemble de règles pour contrôler les connexions XDMCP à partir de machines distantes. Il est ignoré à moins que le fichier xdm-config ne soit modifié pour accepter les connexions distantes. Par défaut, il n'autorise pas ces connexions. Xresources C'est un fichier de paramètres par défaut pour la sélection du serveur et des écrans d'ouverture de sessions. C'est l'endroit où l'apparence du programme d'ouverture de session peut être modifié. Le format est identique au fichier de paramètres par défaut des applications décrit dans la documentation d'&xfree86;. Xservers C'est une liste de choix des serveurs distants que l'écran de sélection devrait fournir. Xsession C'est la procédure par défaut à exécuter par XDM après qu'un utilisateur ait ouvert une session. Normalement chaque utilisateur disposera d'une procédure de session dans ~/.xsession qui sera utilisée en lieu et place du fichier par défaut. Xsetup_* Cela sera exécuté automatiquement avant d'afficher les interfaces de sélection et d'ouverture de session. Il existe une procédure pour chaque écran utilisé, nommée Xsetup_ suivie par le numéro de l'écran local (par exemple Xsetup_0). Généralement ces procédures exécutent un ou deux programmes en tâche de fond comme xconsole. xdm-config Ce dernier contient les paramètres sous la forme de paramètres par défaut qui sont applicables à chaque écran que l'installation gère. xdm-errors Ce dernier contient les messages de sortie du serveur X qu'XDM essaye d'exécuter. Si un terminal qu'XDM essaye de démarrer se bloque pour quelque raison, c'est le bon endroit pour chercher les messages d'erreur. Ces messages sont également écrits dans le fichier ~/.xsession-errors de l'utilisateur à chaque session. Exécuter un serveur d'affichage en réseau Afin de permettre aux autres clients de se connecter au serveur gérant l'affichage, vous devez éditer les règles de contrôle d'accès, et activez l'auditeur de demandes de connexion. Par défaut ces règles sont sur des valeurs conservatrices. Pour faire écouter à XDM les demandes de connexion, tout d'abord commentez une ligne du fichier xdm-config: ! SECURITY: do not listen for XDMCP or Chooser requests ! Comment out this line if you want to manage X terminals with xdm DisplayManager.requestPort: 0 et ensuite relancez XDM. Rappelez vous que les commentaires dans des fichiers de paramètres par défaut d'applications débutent avec un caractère “!”, et non pas par l'habituel “#”. Un contrôle d'accès plus strict peut être désiré — consultez les lignes d'exemple dans Xaccess, et référez-vous à la page de manuel &man.xdm.1; pour plus d'information. Remplacements pour XDM Plusieurs remplacements pour le programme XDM de défaut existent. L'un d'eux, KDM (fourni avec KDE) est décrit plus loin dans son propre chapitre. KDM offre de nombreuses améliorations visuelles, ainsi que la fonction permettant aux utilisateurs de sélectionner leur gestionnaire de fenêtres au moment d'ouvrir la session. Environnements de travail ValentinoVaschettoContribution de Cette section décrit les différents environnements de travail disponibles pour X sous FreeBSD. Le terme d'“environnement de travail” regroupe tout depuis le simple gestionnaire de fenêtres à la suite complète d'applications de bureau, comme KDE ou GNOME. GNOME A propos de GNOME GNOME GNOME est un environnement de travail convivial qui permet aux utilisateurs d'utiliser et de configurer facilement leur ordinateur. GNOME comprend un panneau - “panel” (pour lancer des applications et afficher des états), un bureau (où les données et les applications peuvent prendre place), un ensemble d'outils standards de bureau et d'applications, et un ensemble de conventions qui rendent aisée la coopération entre application et leur cohérence. Les utilisateurs d'autres systèmes d'exploitation ou environnement devraient se sentir en terrain de connaissance en utilisant le puissant environnement graphique que fournit GNOME. Plus d'information concernant GNOME sous FreeBSD peut être trouvé sur le site du Projet FreeBSD GNOME. Le site contient également des FAQs très complètes sur l'installation, la configuration, et l'administration de GNOME. Installer GNOME Ce logiciel peut être facilement installé à partir d'une version pré-compilée ou du catalogue des logiciels portés: Pour installer l'ensemble de logiciels pré-compilés GNOME à partir du réseau, tapez simplement: &prompt.root; pkg_add -r gnome2 Pour compiler GNOME à partir des sources, utilisez le logiciel porté: &prompt.root; cd /usr/ports/x11/gnome2 &prompt.root; make install clean Une fois que GNOME est installé, on doit signaler au serveur X d'exécuter GNOME à la place du gestionnaire de fenêtre par défaut. La manière la plus simple de lancer GNOME est d'utiliser GDM, le gestionnaire d'affichage de GNOME. GDM, qui est installé par défaut comme élément de l'environnement de travail GNOME (mais qui est désactivé par défaut), peut être activé en ajoutant la ligne gdm_enable="YES" au fichier /etc/rc.conf. Une fois que vous avez redémarré le système, GNOME sera lancé automatiquement dès que vous ouvrirez une session — aucune autre configuration n'est nécessaire. GNOME peut être également lancé à partir de la ligne de commande en configurant correctement un fichier appelé .xinitrc. Si un fichier .xinitrc personnalisé est déjà en place, remplacez simplement la ligne qui lance le gestionnaire de fenêtres avec une qui exécute /usr/local/bin/gnome-session à la place. S'il n'y a rien de spécial à faire dans ce fichier de configuration, alors il est suffisant de taper: &prompt.user; echo "/usr/local/bin/gnome-session" > ~/.xinitrc Ensuite, tapez startx, et l'environnement de travail GNOME sera lancé. Si un gestionnaire d'affichage plus ancien, comme XDM, est utilisé, cela ne fonctionnera pas. A la place, créez un fichier exécutable .xsession contenant la même commande. Pour cela, éditez le fichier et remplacez la commande correspondant au gestionnaire de fenêtres actuel avec /usr/local/bin/gnome-session: &prompt.user; echo "#!/bin/sh" > ~/.xsession &prompt.user; echo "/usr/local/bin/gnome-session" >> ~/.xsession &prompt.user; chmod +x ~/.xsession Une autre option est de configurer le gestionnaire d'affichage pour permettre la sélection du gestionnaire de fenêtres au moment de l'ouverture de session; la section de compléments sur KDE explique comment le faire pour kdm, le gestionnaire d'affichage de KDE. Polices de caractères anticrénelage avec GNOME GNOME polices de caractères anticrénelage X11 supporte l'anticrénelage par l'intermédiaire de son extension “RENDER“. GTK+ 2.0 et suivant (la boîte à outils utilisé par GNOME) peuvent utiliser cette fonctionnalité. La configuration de l'anticrénelage est décrite dans la . Aussi, avec des logiciels à jour, l'anticrénelage est possible dans l'environnement de travail GNOME. Aller dans le menu Applications Desktop Preferences Font , et sélectionnez soit Best shapes, soit Best contrast, ou Subpixel smoothing (LCDs). Pour une application GTK+ qui ne fait pas partie de l'environnement de travail GNOME, fixez la variable d'environement GDK_USE_XFT à 1 avant de lancer le programme. KDE KDE A propos de KDE KDE est un environnement de travail moderne facile d'emploi. Quelques unes des choses qu'apporte KDE aux utilisateurs sont: Un magnifique bureau moderne Une utilisation réseau complètement transparente Un système d'aide intégré utile, pour un accès cohérent à l'aide sur l'utilisation de l'environnement KDE et ses applications Une apparence et une prise en main commune pour toutes les applications KDE Des menus, barres d'outils, combinaisons de touches, couleurs, etc., standardisées Internationalisation: KDE est disponible dans plus de 40 langues Un système centralisé de configuration de l'environnement Un grand nombre d'applications KDE utiles KDE est fourni avec un navigateur web appelé Konqueror, qui est un solide concurrent aux autres navigateurs web sous &unix;. Plus d'information sur KDE peut être trouvé sur le site de KDE. Pour des informations et des ressources spécifiques à l'utilisation de KDE sous FreeBSD, consultez le site de l'équipe KDE sur FreeBSD. Il existe deux versions de KDE sous &os;. La version 3 est disponible depuis longtemps et présente une grande maturité. La version 4, la génération suivante, est également disponible dans le catalogue des logiciels portés. Ces deux versions peuvent être installées de paire. Installer KDE Juste comme avec GNOME ou tout autre environnement de travail, ce logiciel peut être aisément installé à partir des logiciels pré-compilés ou du catalogue des logiciels portés: Pour installer la version pré-compilée de KDE3 à partir du réseau, tapez simplement: &prompt.root; pkg_add -r kde Pour installer la version pré-compilée de KDE4 à partir du réseau, tapez simplement: &prompt.root; pkg_add -r kde4 &man.pkg.add.1; récupérera automatiquement la dernière version de l'application. Pour compiler KDE3 à partir des sources, utilisez le logiciel porté: &prompt.root; cd /usr/ports/x11/kde3 &prompt.root; make install clean Pour compiler KDE4 à partir des sources, utilisez le logiciel porté: &prompt.root; cd /usr/ports/x11/kde4 &prompt.root; make install clean Après que KDE ait été installé, on doit indiquer au serveur X de lancer cette application à la place du gestionnaire de fenêtres par défaut. Ceci est effectué en éditant le fichier .xinitrc: Pour KDE3: &prompt.user; echo "exec startkde" > ~/.xinitrc Pour KDE4: &prompt.user; echo "exec /usr/local/kde4/bin/startkde" > ~/.xinitrc Maintenant, quand le système X Window est invoqué avec la commande startx, KDE sera l'environnement de travail utilisé. Si un gestionnaire d'affichage comme XDM est utilisé, la configuration sera légèrement différente. Editez le fichier .xsession à la place. Les instructions concernant kdm seront données plus loin dans ce chapitre. Plus de détails sur KDE Maintenant que KDE est installé sur le système, la plupart des choses peuvent être découvertes à travers les pages d'aide, ou juste en pointant et cliquant sur les différents menus. Les utilisateurs de &windows; ou de &mac; se sentiront presque en terrain de connaissance. La meilleure référence pour KDE est la documentation en ligne. KDE est livré avec son propre navigateur internet Konqueror, et des douzaines d'applications utiles, et une large documentation. Le reste de cette section traite d'éléments techniques qui sont difficiles à apprendre par une exploration au hasard. Le gestionnaire d'affichage de KDE KDE gestionnaire d'affichage L'administrateur d'un système multi-utilisateurs peut désirer avoir un écran graphique d'ouverture de session pour accueillir les utilisateurs. XDM peut être utilisé comme décrit plus tôt. Cependant, KDE inclus une alternative, kdm, qui est conçue pour paraître plus attractive et inclure plus d'options d'ouverture de session. En particulier, les utilisateurs peuvent facilement (par l'intermédiaire d'un menu) sélectionner quel environnement de travail (KDE, GNOME, ou quelque chose d'autre) exécuter après l'ouverture de session. Pour activer kdm, la ligne ttyv8 du fichier /etc/ttys doit être modifiée. La ligne doit ressembler à: Pour KDE3: ttyv8 "/usr/local/bin/kdm -nodaemon" xterm on secure Pour KDE4: ttyv8 "/usr/local/kde4/bin/kdm -nodaemon" xterm on secure XFce A propos d'XFce XFce est un environnement de travail basé sur le “toolkit” GTK+ utilisé par GNOME, mais est plus léger et est destiné à ceux qui veulent un bureau simple, et efficace qui est néanmoins facile d'utilisation et de configuration. Visuellement, il ressemble énormément à CDE, que l'on trouve sur les systèmes &unix; commerciaux. Quelques unes des caractéristiques d'XFce sont: Un bureau de prise en main aisée et simple Complètement configurable à la souris, avec glisser-déposer, etc. Une barre principale similaire à CDE, avec des menus, des petites applications et des lanceurs d'applications Un gestionnaire de fenêtre intégré, un gestionnaire de fichiers, un gestionnaire du son, un module de compatibilité GNOME, et bien plus Personnalisable avec des thèmes (comme il utilise GTK+) Rapide, léger et efficace: idéal pour les machines vieilles/lentes ou avec des limitations en mémoire Plus d'information sur XFce peut être trouvé sur le site d'XFce. Installer XFce Une version pré-compilée d'XFce existe (au moment où ces lignes sont écrites). Pour installer, tapez simplement: &prompt.root; pkg_add -r xfce4 Alternativement, pour compiler à partir des sources, utilisez le catalogue des logiciels portés: &prompt.root; cd /usr/ports/x11-wm/xfce4 &prompt.root; make install clean Maintenant, il faut indiquer au serveur X d'exécuter XFce au prochain démarrage d'X. Tapez ceci: &prompt.user; echo "/usr/local/bin/startxfce4" > ~/.xinitrc Au prochain démarrage d'X, XFce sera l'environnement de travail. Comme précédemment, si un gestionnaire d'affichage comme XDM est utilisé, créez un fichier .xsession, comme décrit dans la section sur GNOME, mais avec la commande /usr/local/bin/startxfce4; ou configurez le gestionnaire d'affichage pour permettre la sélection d'un environnement de travail au moment de la connexion, comme expliqué dans la section sur kdm.