*View this article in its original form at: http://www.sunworld.com/swol-01-1999/swol-01-bsd.html. Reprinted with permission from the January 1999 edition of SunWorld magazine, www.sunworld.com. Copyright Web Publishing Inc., a WebIDG Inc. Division, San Francisco, CA 94107, phone: (415) 243-4188. All rights reserved. May not be duplicated or distributed without permission except for personal use.
La version originale de cet article a parue dans SunWorld : http://www.sunworld.com/swol-01-1999/swol-01-bsd.html. Reproduit avec leur autorisation de l'édition de Janvier 1999 de SunWorld magazine, www.sunworld.com. Copyright Web Publishing Inc., une Division de WebIDG Inc., San Francisco, CA 94107, téléphone : (415) 243-4188. Tous droits réservés. Ne peut être reproduit ou distribué sans autorisation hormis à usage strictement personnel.
Version
française de Frédéric Haby <frederic.haby@mail.dotcom.fr>.
Les projecteurs sont ces temps-ci braqués sur Linux, mais qu'en est-il des autres systèmes d'exploitation librement disponibles ? Dans cet aperçu des variantes de BSD, Greg Lehey récapitule l'historique des différents projets BSD, décrit leurs caractéristiques, et évalue les raisons pour utiliser BSD sur vos machines Sun et même choisir BSD au lieu de Linux.
Cela a pris du temps, mais les gens commencent à accepter Solaris, le système d'exploitation basé sur System V qui a remplacé SunOS 4. Six ans, c'est toutefois long, et ça aurait été même plus long si Sun avait continué à maintenir SunOS 4. Pourquoi une telle fidélité ? Ce sont, après tout, tous deux des versions d'Unix.
Il n'est nullement dans mon intention de ranimer la controverse entre SunOs et Solaris, mais j'amerais pourtant attirer l'attention sur l'unique différence essentielle entre SunOS 4 et SunOS 5, le système d'exploitation du Solaris actuel ; SunOs se base sur 4.2 BSD, la version d'Unix développée à l'université de Californie à Berkeley et le premier système d'exploitation ayant supporté TCP/IP. Cependant, SunOs 5 (habituellement appelé Solaris, bien que cela ne soit pas tout à fait exact) repose sur AT&T Unix System V.4. BSD diffère suffisamment de System V pour avoir encore un grand nombre d'adeptes, même six ans après la ``mort'' de SunOS 4. Il est simplement dommage qu'il ne puisse être utilisé avec du matériel moderne.
Alors que SunOs ne peut tourner sur du matériel récent, d'autres versions de BSD en sont capables. Et en plus, elles sont libres. La publicité récente pour Linux tend à obscurcir le fait qu'il existe d'autres systèmes d'exploitation libres. Dès 1991, bien avant la naissance de Linux, les gens de Berkeley travaillaient à la réalisation d'une version libre de 4.3 BSD pour les plates-formes Intel. De plus, Berkeley Software Design Inc. (BSDI) mettait au point une version commerciale. Ces efforts ont été considérablement handicapés par les poursuites en justice d'Unix System Laboratories (USL) à l'encontre de BSDI, sous prétexte d'utilisation abusive du code source d'AT&T.
Le procès s'est terminé en 1994. Une seule condition de l'arrangement a été rendue publique : BSD s'est engagé à regrouper son code dans 4.4 BSD Lite, la dernière version de la lignée des BSD, publiée juste avant que le ``Berkeley's Computer Sciences Research Group'' n'arrête ses activités.
L'obsolescence est une des principales raisons pour lesquelles les gens ont cessé d'utiliser SunOS 4. En particulier, il n'est pas compatible avec le matériel récent. Qu'en est-il des dérivés de 4.4 BSD ? Chacun d'eux a ses propres objectifs :
BSD/OS : BSD/OS est un produit de BSDI. Il ne tourne actuellement que sur Intel, bien qu'il y ait eu des tentatives de portage sur architecture Sparc. BSDI a apparemment décidé qu'un portage Sparc n'en valait pas la peine--voir plus bas. Comme c'est la seule variante commerciale de BSD, le support constructeur en est meilleur.
FreeBSD : FreeBSD est actuellement la version la plus répandue des BSD. Plus que les autres, il vise la facilité d'installation et d'utilisation pour les utilisateurs finaux. Il était à l'origine disponible uniquement pour plates-formes Intel. Mais il y a un eu récemment un portage sur architecture Compaq/DEC Alpha. Il y a d'autres projets dont un portage sur UltraSparc qui, à l'heure actuelle, est encore au stage embryonnaire.
NetBSD : l'approche de NetBSD est différente depuis le départ, l'objectif était de supporter autant de plates-formes que possible. A l'heure où j'écris ces lignes, il tourne sur pratiquement toutes les architectures imaginables, dont à peu près tous les matériels Sun à partir du Sun 3, bien que le support soit parfois limité Le portage UltraSparc par exemple, n'inclut pas encore le support des cartes mères PCI et des multi-processeurs, bien qu'il y ait des chances que cela soit le cas dans avenir proche.
OpenBSD : OpenBSD a divergé de NetBSD en 1995. L'accent ici est plus placé sur la sécurité que dans les autres projets. Comme NetBSD, il supporte de nombreuses plates-formes, bien qu'en moins grand nombre que NetBSB. Il n'y a par exemple pas encore de portage UltraSparc.
A voir cette liste de systèmes d'exploitation, vous vous demandez peut-être pourquoi il y en a autant de similaires. Un seul ne suffirait-il pas ?
Historiquement, chaque système a vu le jour à la suite de divergences d'opinion sur ce qui constitue un bon système d'exploitation. Comme c'est du logiciel libre, un groupe de gens peut décider de mettre au point sa propre version du système. Si cela ne marche pas, le projet s'arrête. En effet, toutes les variantes de BSD, y compris BSDI, ont leur racine dans le projet 386 BSD de Bill Jolitz, qui est tombé dans l'oubli en 1994.
A première vue, cela ne paraît pas être une bonne approche : pourquoi ne pas faire de compromis ? En pratique, ce système démontre une remarquable capacité d'auto-régulation : 386 BSD est le seul projet qui a fermé boutique, dont les rejetons se portent à merveille et font preuve de synergie active. Le fait que chaque système ait un noyau différent signifie que là aussi le mieux adapté survit, alors qu'en ce qui concerne Linux, cela n'est vrai que pour le code utilisateur. Le portage embryonnaire de FreeBSD sur Sparc n'est pas parti de rien : il s'est appuyé sur l'implémentation de NetBSD, et la question s'est immédiatement posée : que pourrions-nous faire mieux ? Ce processus monte automatiquement la barre pour réussir. De ce fait, beaucoup de tentatives échouent, mais celles qui réussissent engendrent du code de toute première qualité.
Pour choisir une version de BSD, il faut d'abord décider de la plate-forme souhaitée. C'est elle qui dans la plupart des cas dictera le choix du système d'exploitation. Sur les plates-formes Intel et compatibles, que tous les BSD supportent, ce choix sera peut-être plus difficile, mais il n'y a pas vraiment de mauvais choix.
Les diiférences les plus importantes entre les BSD n'ont rien a voir avec les sytèmes, mais avec la façon dont vous les utilisez. Toutes les stations de travail disposent aujourd'hui de l'une ou de l'autre variante d'une interface utilisateur graphique. Tous les BSD incluent XFree86, l'implémentation de X11 qui est aussi fournie avec Linux. D'un côté, une forte unification résulte de cette interface : il est difficile à la simple vue de l'écran de dire si le système est un BSD, Linux, ou même Solaris. D'un autre côté, le vaste choix de matériel PC rend délicat le configuration fiable de X, et il est conseillé de passer un peu de temps à sélectionner le matériel pour XFree86.
En plus du choix du matériel, XFree86 offre un éventail impressionnant de logiciels, gestionnaires d'affichage et de bureau en particulier, ce qui fait qu'il est encore plus difficile de reconnaître la plate-forme à la simple vue de ce qui est affiché. Pour plus d'informations sur les gestionnaires de fenêtres, consultez le Répertoire Ouvert - ``Open Directory Project''. Vous pouvez aussi le faire ressembler à OpenWindows avec le Gestionnaire de Fenêtres OpenLook.
Dans bien des cas cependant, vous disposerez pas d'interface graphique. Les systèmes BSD sont un excellent choix pour les serveurs de noms de domaines, les serveurs Web, de courrier électronique, etc. Vous n'aurez alors peut-être même pas besoin d'un écran.
Tous les systèmes d'exploitation BSD libres sont disponibles sur CD-ROM, avec la totalité de leur code source, et des utilitaires. La plupart de ces derniers sont basés sur les mêmes outils GNU qu'utilise Linux, bien qu'un certain nombre proviennent aussi des utilitaires BSD antérieurs. Tous ces systèmes incluent des outils de développement complets, une fois encore basés sur les logiciels GNU. Comme il a déjà été dit, ils disposent aussi de l'implémentation XFree86 de X11, et la plupart des plates-formes peuvent exécuter des binaires Linux et SCO.
A première vue, il pourrait sembler que BSD/OS ou FreeBSD ne soient pas aussi intéressants que NetBSD et OpenBSD, parce qu'ils ne tournent pas sur architecture Sparc. En fait, cette possibilité est peut-être sur-évaluée. C'est probablement la raison pour laquelle BSDI n'a pas poursuivi son portage Sparc. Il y a déjà un système d'exploitation bien maintenu sur Sparc, Solaris, sur lequel Sun a porté tous ses efforts. Bien que NetBSD et OpenBSD exécutent certaines choses beaucoup mieux que Solaris, il est difficile d'entrer en compétition, et l'état actuel du support UltraSparc présente quelques faiblesses. Le support PCI est en développement, et l'implémentation ne supporte pas encore les multi-processeurs.
Enfin, l'intérêt majeur des systèmes BSD vient du prix avantageux du matériel PC. Si vous voulez mettre en place, par exemple, un gros serveur FTP, vous avez approximativement quatre solutions :
Acheter une station Sun Sparc avec Solaris 7. C'est cher, mais ça marche et vous n'aurez pas trop de problèmes.
Acheter un PC et y installer du logiciel Microsoft. Pour un gros serveur, il vous faudra Windows NT. Dans ce cas précis, vous n'aurez besoin que du serveur NT de base, qui, à 809$, est relativement bon marché. La page Web de Microsoft qui décrit les solutions et recommandations (voyez les Ressources plus bas) stipule que vous pouvez espérer transférer environ 6Go/jour avec trois Compaq ProLiant 5000s ou 5500s disposant de quatre processeurs Pentium Pro et 512 Mo de mémoire chacun. Pour une haute disponibilité, Microsoft recommande de mettre en place du matériel redondant.
Acheter un PC et y installer FreeBSD. Le matériel sera à priori du même prix, mais le logiciel est gratuit. En fait, comme le montre la configuration matériel de wcarchive.cdrom.com, ce n'est pas exact. wcarchive ne dispose que d'un seul processeur, qui est aussi un Pentium Pro. Néanmoins, par rapport aux 6Go/jour de Microsoft, il transfère habituellement plus de 700 Go/jour, et accepte jusqu'à 3.600 utilisateurs simultanés. C'est plus de 100 fois la performance des 3 machines Windows NT plus musclées ensemble. Le 2 Décembre 1998, wcarchive a transféré 820.097.694.368 octets de données, ce qui en a fait le site FTP le plus chargé au monde[1].
Acheter un PC et y installer un Unix commercial. En bien des points, cette solution est comparable à l'option FreeBSD. Mais les solutions Unix commerciales sont relativement coûteuses, et nombre de constatations montrent qu'elles ne sont pas à la hauteur des performances des BSD.
wcarchive n'est pas la seule réussite de FreeBSD. Un autre utilisateur en vue est Yahoo!, qui utilise presque exclusivement FreeBSD. De plus, au moins deux serveurs DNS racine utilisent FreeBSD et la plupart des Fournisseurs d'Accès à l'Internet se servent de BSD pour une fonction ou une autre.
En plus de ces applications de pointe, NetBSD et OpenBSD sont un bon choix sur les matériels Sun plus anciens, dont les premiers matériels Sparc, sur lesquels Solaris 2 et 7 sont trop lourds, et les systèmes Sun 3. Le niveau de support est variable : et NetBSD et OpenBSD offrent du code pour les Sun 3, mais OpenBSD annonce que ce code n'est pas activement maintenu. Les deux systèmes supportent par contre les architectures Sun 4, Sun 4c et Sun 4m.
Pourquoi utiliser BSD sur une machine Sun ? Dans la plupart des cas, le matériel ancien est plus adapté à certains usages ; vous pouvez facilement utiliser un vieux Sun 3 ou une SparcStation comme serveur de courrier ou de noms de domaines. Cela peut se faire également avec SunOS, mais l'âge du noyau se révèle dans certains aspects de la pile réseau, et il vous faudra porter toutes les versions récentes des clients réseau, ce qui vous prendra beaucoup plus de temps que d'installer un des BSD et ses logiciels et le mettre à jour. Ironiquement, cette cure de jouvence est encore plus impressionnante avec le vieux matériel PC. La plupart du temps, un vieux 386, qui n'est pas assez puissant pour servir de poste de travail Windows, acquiert soudainement une nouvelle jeunesse comme passerelle Internet, serveur de courrier, de noms de domaines et serveur Web combinés.
Aurais-je dit portage ? Porter des logiciels a été le travail des administrateurs systèmes Unix pendant des dizaines d'années, mais ce n'était jamais facile. Le catalogue des logiciels portés de FreeBSD (voyez les Ressources), qu'OpenBSD a aussi adopté, change cet état de choses. Si vous voulez installer par exemple xarchie sur votre système, c'est simple :
Bien, direz-vous, c'est facile lorsque le code source est déjà installé sur votre machine. Jusqu'à ce que vous découvriez que le répertoire /usr/ports/net/xarchie ne contient que six fichiers--dont le plus volumineux n'a que 691 octets--vous réalisez alors que cela cache une mécanique vraiment sophistiquée.
Le catalogue de logiciels portés de FreeBSD comprend aujourd'hui près de 2.000 logiciels. Pour chacun, il n'inclut pas le logiciel lui-même, mais simplement ce qu'il faut pour se le procurer, le compiler et l'installer. Cela donne aux utilisateurs de BSD accès à la plus importante collection de logiciels à installer disponible sur un système d'exploitation, avec simplement deux commandes et le délai lié au téléchargement du logiciel depuis l'Internet.
Il est pourtant facile de sous-estimer les avantages de ce système. Quelle version de Sendmail utilisez-vous ? Il y a des chances que ce soit la version fournie avec votre système, la 8.8.8 peut-être, si vous avez mis votre système à jour récemment. La version 8.9.1 courante inclut nombre d'améliorations pour éviter les abus du courrier électronique, en bloquant les relais illégaux et des domaines précis. Le portage de Sendmail a toujours été pénible, même sur les systèmes BSD pour lesquels il a été conçu. Utilisez le catalogue des logiciels portés, au contraire, et ce sera un jeu d'enfant.
Que dire de named ? Il y a quelques mois, le CERT a fait paraître un avertissement prévenant de diverses vulnérabilités de named, le ``démon'' de résolution de noms, sur la plupart des systèmes Unix. Quand l'avis a été publié, les systèmes BSD avaient déjà corrigé les problèmes ; Sun a annoncé des mises à jour à venir pour certaines versions de ses systèmes d'exploitation uniquement.
Linux est bien plus connu que BSD. En supposant que vous alliez installer un Unix libre, pourquoi ne pas suivre le courant et utiliser Linux ?
Il n'y a pas vraiment de bonne réponse à cette question, Linux est parfaitement adapté aux mêmes usages que les divers BSD. Certains arguent que BSD est plus stable que Linux--qu'il est plus orienté vers les serveurs, alors que Linux se comporte mieux sur une station de travail. Le slogan de FreeBSD est ''Le Pouvoir de Servir''.
Un autre aspect est l'héritage Unix direct de BSD, ce qui le rendrait plus mûr que le Linux nouveau venu. Ils mettent aussi en avant le fait qu'il y a parmi les développeurs de BSD des noms bien connus venant du CSRG de Berkeley, ce qui impliquerait que le code soit bien meilleur.
Mais ce n'est qu'un aspect de la question et ses bases sont instables. La vérité est que Linux est aussi un bon système d'exploitation, qui a, comme les autres systèmes, ses forces et ses faiblesses. Certains citent parmi les faiblesses de Linux sa gestion de mémoire virtuelle, qu'ils considèrent en deçà de celle de FreeBSD et NetBSD, mais aucune comparaison de performances ne s'est révélée concluante.
L'orientation est une des différences entre Linux et les BSD. Linux a été développé bénévolement, tout comme les BSD, mais est devenu de plus en plus commercial ces deux dernières années. Une des raisons pour lesquelles on entend autant parler de Linux est que des gens commencent à faire de l'argent en le distribuant. Les BSD sont moins axés sur le succès commercial.
Pourquoi BSD alors ? Pour une raison en particulier, c'est qu'il a la même origine que le code que vous utilisez sur vos machines Solaris, il y a donc des chances qu'il vous soit plus familier. Et bien qu'il n'y ait pas de preuve concluante qu'il soit plus fiable ou performant que Linux, il y a de façon étonnante bien peu de revendications inverses dans le camp Linux.
FreeBSD, NetBSD et OpenBSD sont librement redistribuables et vous pouvez les télécharger depuis l'Internet. Ce n'est peut-être pas la meilleure solution, parce que ce sont des distributions volumineuses, et des problèmes réseau peuvent compliquer l'installation. Ces trois systèmes d'exploitation sont disponibles sur CD-ROM, et FreeBSD peut être accompagné d'un livre : ``The Complete FreeBSD'', qui couvre tous les aspects de l'installation et de l'administration sur lesquels il diffère des autres systèmes Unix.
Le principal argument qui s'oppose à l'utilisation de systèmes d'exploitation libres en environnement commercial touche au support. A qui s'adresser lorsque quelque chose ne fonctionne pas. Sur ce point les BSD libres ne diffèrent pas beaucoup de Linux. Il existe un support commercial, et il y en a de plus en plus. Une des différences est qu'il existe aussi un BSD commercial : BSD/OS est accompagné d'options de maintenance comparables à celles des autres variantes d'Unix.
Ceci était juste un aperçu ; testez maintenant les BSD vous-même !
BSD/OS est un produit commercial disponible auprès de BSDI, qui offre aussi du support.
FreeBSD peut être téléchargé depuis l'Internet, ou commandé à Walnut Creek CDROM. Vous trouverez du support auprès de consultants FreeBSD.
Vous pouvez télécharger NetBSD depuis l'Internet, ou vous le procurer sur CD-ROM. NetBSD n'a pas de liste officielle de consultants, mais de nombreux consultants FreeBSD ou OpenBSD prennent aussi NetBSD en charge.
Vous pouvez télécharger OpenBSD depuis l'Internet, ou vous le procurer sur CD-ROM. Il existe aussi un support commercial.
Berkeley Software Design Inc. (BSDI)
BSD/OS
FreeBSD
NetBSD
OpenBSD
XFree86
Open Directory Project - Répertoire Ouvert
http://directory.mozilla.org/Computers/Software/X_Windows/Window_Managers/
OpenLook Window Manager - Gestionnaire de Fenêtres OpenLook
La page de Solutions et Recommandations de Microsoft
Configuration matériel de wcarchive.cdrom.com
La catalogue des logiciels portés de FreeBSD
Avis du CERT sur named
``The Complete FreeBSD''
Télécharger FreeBSD
FreeBSD sur CD-ROM
Consultants FreeBSD
Télécharger NetBSD
NetBSD sur CD-ROM
Télécharger OpenBSD
OpenBSD sur CD-ROM
Support commercial OpenBSD
``Getting help with free software,'' (Trouver de l'assistance pour les logiciels libres) le dossier de Décembre 1998 de SunWorld
``The story on FreeBSD,'' (Une aventure FreeBSD) le dossier de Décembre 1998 de LinuxWorld
http://www.linuxworld.com/linuxworld/lw-1998-12/lw-12-freebsd.html
Greg Lehey est un consultant indépendant en
informatique et auteur spécialisé sur BSD
Unix. Habitant Adelaïde, en Australie, il a
écrit ``Porting Unix
Software'' (O'Reilly & Associates, 1995), ``Installing and Running FreeBSD''
(Walnut Creek, 1996) et ``The
Complete FreeBSD'' (Walnut Creek, 1997 et 1998). Vous
pouvez le contacter à l'adresse suivante :
<greg.lehey@sunworld.com>.
| [1] |
N.d.T.: La machine a depuis été remplacée par une configuration plus musclée (bi-processeur Xeon 500 MHz avec 4Go de mémoire vive) et accepte maintenant 6.000 connexions simultanées, ce qui lui a permis de dépasser encore ce record. |
This, and other documents, can be downloaded from ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
For questions about FreeBSD, read the
documentation
before contacting <questions@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.