Le mini-HOWTO Linux+FreeBSD

v1.11, 30 mars 2000
Qu'est-ce que FreeBSD ? est un système d'exploitation libre de la famille Unix, tout comme Linux. La principale différence réside dans le fait que, au contraire de Linux qui a été écrit à partir de rien, FreeBSD est basé sur 4.4BSD-lite, les parties librement distribuables de 4.4BSD (Berkeley Software Distribution). Ce fait amène certaines personnes à suggérer que FreeBSD est plus proche du ``vrai'' UNIX® que Linux. FreeBSD tourne uniquement sur les plateformes PC Intel (i386 et suivants), des ports sur les plateformes DEC Alpha et Sun Sparc sont en cours. et sont similaires à FreeBSD, et tournent tous deux sur plusieurs plateformes. Les exigences matérielles de tous ces systèmes *BSD sont à peu près les mêmes que celles de Linux.Le développement de FreeBSD est géré différement de celui de Linux. Une équipe (le noyau) de développeurs sert d'arbitre et dirige le projet. Les gros changements sont d'abord discutés sur les listes de discussion (mailing lists). Le projet FreeBSD comprend deux arbres de développement (comme Linux) : ``-current'' (courant) et ``-stable''. Le développement des nouvelles fonctionnalités est fait dans ``-current'', alors que les évolutions des versions ``-stable'' sont limitées à des corrections de bogues ou à de nouvelles fonctionnalités minitieusement testées.FreeBSD peut être utilisé et (re-)distribué librement comme Linux. La majorité du système est placée sous le copyright BSD, le reste est sous la licence GNU GPL ou d'autres licences .Nommage des disques durs sous FreeBSDLinux et FreeBSD nomment les disques durs et les partitions selon deux principes différents. Cette section décrit les principales différences entre les deux systèmes. En fait le principe de nommage de FreeBSD est une variation du style de nommage BSD traditionnel adapté aux partitions de PC. Il est donc très proche sur ce point des autres systèmes Unix basés sur BSD tels que NetBSD, OpenBSD, Ultrix, Digital Unix, SunOS et Solaris.

1.

``Partitions'' et ``tranches'' (slices) sous FreeBSDFreeBSD a besoin d'une entrée dans la table de partition primaire de votre disque dur. Cette partition primaire est appelée ``tranche'' (slice en anglais) dans la terminologie FreeBSD. Il utilise ensuite le programme disklabel pour créer plusieurs partitions logiques dans cette partition primaire. Ces partitions logiques sont appelées ``partitions'' dans la terminologie FreeBSD. Ce concept est similaire à la façon dont Linux (et DOS) manipule les partitions logiques dans une partition étendue. Vous ne pouvez pas installer FreeBSD dans une partition étendue créée par Linux (ou DOS). Notez que le programme fdisk de Linux n'affiche pas les partitions d'une tranche FreeBSD depuis le menu principal, mais il peut afficher l'information de nommage de disque (disklabel) BSD si on utilise la commande 'b'. Le résultat sera quelque chose comme ceci (/dev/hda4 est la tranche FreeBSD) :# fdisk /dev/hda Command (m for help): p Disk /dev/hda: 64 heads, 63 sectors, 621 cylinders Units = cylinders of 4032 * 512 bytes Device Boot Begin Start End Blocks Id System /dev/hda1 * 1 1 27 54400+ 83 Linux native /dev/hda2 28 28 55 56448 83 Linux native /dev/hda3 56 56 403 701568 83 Linux native /dev/hda4 404 404 621 439488 a5 BSD/386 Command (m for help): b Reading disklabel of /dev/hda4 at sector 1624897. BSD disklabel command (m for help): p 8 partitions: # size offset fstype [fsize bsize cpg] a: 64512 1624896 4.2BSD 0 0 0 # (Cyl. 404 - 419) b: 104832 1689408 swap # (Cyl. 420 - 445) c: 878976 1624896 unused 0 0 # (Cyl. 404 - 621) e: 64512 1794240 4.2BSD 0 0 0 # (Cyl. 446 - 461) f: 645120 1858752 4.2BSD 0 0 0 # (Cyl. 462 - 621) BSD disklabel command (m for help): q #Les lettres `a'...`f' dans la première colonne sont les mêmes étiquettes (labels) que celles utilisées plus bas dans l'exemple d'une tranche FreeBSD. Il y a trois partitions spéciales dans le jargon FreeBSD. La lettre `a' désigne la partition racine, `b' la partition de swap tandis que `c' désigne la tranche en entier. Voyez la documentation pour plus d'information sur la façon ``standard'' d'affecter ces lettres aux différents types de partitions.
Partage de l'espace de swap entre Linux et FreeBSDCette section décrit comment j'ai pu utiliser la même partition de swap pour Linux et FreeBSD. Il peut y avoir d'autres façons d'obtenir le même résultat. Vous pouvez, si vous voulez, installer FreeBSD avant Linux mais faites attention à l'ordre des partitions dans la tranche FreeBSD.Démarrer FreeBSD avec LILOVous pouvez facilement démarrer FreeBSD avec LILO. N'installez pas le chargeur de FreeBSD (Booteasy) si vous voulez utiliser LILO. Ajoutez les lignes suivantes à votre fichier /etc/lilo.conf et relancez lilo (la tranche FreeBSD étant /dev/hda4) :other=/dev/hda4 table=/dev/hda label=FreeBSDSi vous avez installé FreeBSD sur le second disque SCSI, utilisez quelque chose du type (la tranche FreeBSD étant /dev/sdb2):other=/dev/sdb2 table=/dev/sdb loader=/boot/chain.b label=FreeBSDMonter les systèmes de fichiers

1.

Monter des systèmes de fichiers UFS sous LinuxMalheureusement le support pour UFS dans les noyaux Linux 2.0.xx est bogué. Quand on essaye de monter un système de fichiers UFS, on obtient juste des messages d'erreur (le système de fichiers est monté, mais on ne peut rien y lire ou écrire). Ce problème a été résolu dans les versions récentes du noyau (depuis 2.1.87).Il y a une autre version du support du système de fichiers UFS pour les noyaux Linux 2.0.xx (xx <= 30) à . Son nom est U2FS et la version actuelle est u2fs-0.4.3.tar.gz. Une version d'U2FS (ufs-0.4.4.tar.gz) pour Linux 2.0.31 et suivants (2.0.xx, pas 2.1.xx) se trouve sur avec d'autres informations sur U2FS (et UFS.)Maintenant il faut construire un nouveau noyau avec le support pour U2FS file system et BSD disklabel. Voyez la section pour plus d'informations. Vous pouvez laissez tomber le support pour UFS file system quand vous utilisez U2FS file system.Quand vous avez installé le nouveau noyau, vous pouvez monter les systèmes de fichiers UFS (toutes les partitions dans la tranche FreeBSD sauf la partition de swap) avec une commande du type :mount -t u2fs /dev/hda8 /mntIl faudra utiliser une commande du type :mount -t ufs /dev/hda8 /mntsi vous utilisez un noyau 2.1.87 ou supérieur. À partir de la version 2.1.112 il faut ajouter à la commande l'option -o ufstype=44bsd : mount -t ufs -o ufstype=44bsd /dev/hda8 /mntLe support UFS (et U2FS) est en lecture seule. Donc, vous pouvez lire depuis les systèmes de fichiers UFS mais pas y écrire. Un pilote UFS expérimental en lecture/écriture a remplacé le pilote en lecture seule à partir du noyau 2.1.112. L'écriture dans des partitions FreeBSD est supportée depuis la version 2.1.127.
Exécuter des binaires ``étrangers''Sources d'informationsLa dernière version de ce mini-HOWTO peut être trouvée sur en plusieurs formats (y compris SGML et PostScript). La version française peut être trouvée sur . Ce document a été traduit en Japonais par M. Teruyoshi Fujiwara comme partie du .Quelques articles sur la différence entre Linux et FreeBSD se trouvent .Vous pouvez trouver plus d'informations sur FreeBSD (et rapatrier tout le système) à l'url . Vous pouvez aussi acheter le système sur CDROM chez (leurs serveurs sont sous FreeBSD).Le HOWTO du noyau Linux fait partie du .Remerciements et aspects légauxMerci aux membres du pour avoir répondu aux questions d'un nul en FreeBSD, à M. Takeshi Okazaki pour avoir porté à ma connaissance l'existence de U2FS et à M. David O'Brien pour ses précieuses suggestions.