FreeBSD 10

, par  Loïc Blot , popularité : 2%

Le système d’exploitation FreeBSD est arrivé dans sa dixième cuvée. Cette version très attendue apporte notamment la gestion de l’affichage par le noyau (Kernel Mode Setting) pour les pilotes AMD et l’hyperviseur bhyve.

FreeBSD

Sommaire

Matériel

Le Raspberry Pi est désormais pris en charge, et de manière générale le support des architectures ARM a été amélioré.

L’architecture ARM supporte désormais les Superpages, améliorant les performances et la scalabilité du système.

Au passage, un nouvel outil est apparu, Crochet, développé par Tim Kientzle. Il permet de construire des images FreeBSD amorçables pour différents modules embarqués comme le Raspberry Pi, les BeagleBones et quelques autres encore.

L’instruction RDRand des processeurs Intel est désormais supportée. Celle-ci permet de générer des nombres aléatoires directement depuis le CPU. Elle est présente dans les processeurs Ivy Bridge et supérieurs.

Stockage

Le système de fichiers ZFS supporte désormais la commande TRIM (qui était déjà supportée par UFS) et la compression LZ4 (backportée sur 9.2). LZ4 est un algorithme de compression particulièrement rapide qui augmente les performances de 50 à 80% par rapport au défaut LZJB pour un ratio de compression plus élevé (jusqu’à 10% sur de larges blocks). La fonctionnalité NOP-write a également été importée d’Illumos. Celle-ci permet de ne pas réécrire les données si le checksum des nouvelles données est identique à celui des anciennes.

UFS de son côté reçoit le support de l’extension de système de fichiers à chaud sur des partitions montées en écriture. Les nouveaux systèmes de fichiers créés bénéficieront également de meilleures performances lors d’un fsck.

FUSE fait son entrée dans le système de base (précédemment un module noyau était disponible dans les ports).

Une nouvelle pile iSCSI implémentée dans le noyau est disponible.

Système

Une étape dans l’abandon de GCC a été franchie, FreeBSD 10 (pour les architectures i386 et amd64) est intégralement compilé à l’aide de LLVM/CLang. Cette bascule est due à une volonté de libérer la base de FreeBSD de la licence GPL v.3 qui régit les versions récentes de GCC. Remercions au passage Chris Lattner, initiateur et mainteneur de CLang, employé d’Apple. Les autres architectures continuent d’utiliser GCC (4.2.1).

Il est toujours possible de compiler le système avec GCC en passant une option dans le src.conf.

L’installeur permet désormais l’installation du système sur des volumes ZFS

FreeBSD 10 intègre désormais nativement la gestion des initiateurs et cibles iSCSI

Réseau

FreeBSD supporte désormais 65536 tables de routage au lieu de 16.


L’implémentation des interfaces virtuelles carp(4) a été réécrite.

Affichage

Les pilotes graphiques libres Intel et AMD n’étaient plus compatibles avec FreeBSD car ils nécessitent un support de l’affichage géré par le noyau (Kernel Mode Setting ou KMS). Il fallait donc fonctionner avec le pilote VESA ce qui était assez pénible (résolution incorrecte et aucun support de la 2D ou 3D). Avec FreeBSD 9.1 il était possible d’utiliser KMS pour les pilotes Intel mais de manière limitée.

FreeBSD 10 prend désormais en charge KMS pour les cartes graphiques AMD, permettant d’utiliser l’accélération 2D et 3D matérielle des puces graphiques de celles-ci. Pour Nvidia il faut toujours utiliser le pilote propriétaire qui n’exploite pas KMS. Concernant Intel, le support était déjà partiel à partir de la version 9.1 mais bien incomplet. FreeBSD 10 apporte des améliorations sur ce point.

Virtualisation

FreeBSD est connu depuis longtemps pour son système de jails, apparu sous FreeBSD 4 (2000). Cela permet de créer d’autres instances de FreeBSD, partielles ou complètes tout en restant sur la même machine physique. On peut ainsi créer des conteneurs systèmes très facilement, à l’instar des conteneurs LXC sous Linux. Combiné avec le linuxulator, il est même possible, avec quelques limitations, de créer des jails Linux.

Mais pour apporter la prise en charge des autres systèmes d’exploitation et outrepasser certaines limites, FreeBSD se dote désormais d’un véritable hyperviseur. Bhyve (BSD Hypervisor, anciennement BHyVe) est un hyperviseur dit de type 2 (qui s’exécute à l’intérieur d’un système d’exploitation à part entière), libre de tout héritage. Il va rapidement être désigné comme un concurrent à Linux-KVM et utilise déjà des périphériques VirtIO.

Bhyve requiert un CPU Intel avec le support VT-x et EPT. Il est actuellement capable de booter toute version de FreeBSD supportant VirtIO (8.4+) ainsi que GNU/Linux et OpenBSD. Le support de UEFI/BIOS n’étant pas encore implémenté, cela limite le nombre d’OS utilisables, toutefois ce support est une priorité pour le projet.

De fait, Bhyve est encore récent et ne supporte pas toutes les fonctionnalités classiques des hyperviseurs, qui sont prévues dans les versions futures, telles que le suspend/resume ou la live migration. Quelques limitations sont également présentes, comme le nombre de vCPU qui ne peut dépasser 16.

Par ailleurs, FreeBSD 10, tout comme FreeBSD 9.2, intègre des pilotes VirtIO ce qui lui permet de fonctionner de manière optimale dans un hyperviseur Linux-KVM ou VirtualBox (et très bientôt bhyve).

Enfin, beaucoup de pilotes Hyper-V ont été intégrés, permettant notamment un meilleur support des périphériques spéciaux et interaction avec l’hyperviseur (périphériques SCSI, synchronisation horloge, signal d’arrêt, migration à chaud).

Performances

Le pare-feu Packet Filter a été réécrit afin d’utiliser un système de verrous plus fin, améliorant sensiblement ses performances sur des machines multi-cœurs.

Applications

Le système de paquets de FreeBSD est désormais basé sur pkgng. Les anciens outils pkg_* ont été retirés.


Si vous souhaitez passer de FreeBSD 9.X à FreeBSD 10.X, il est suggéré d’installer pkg, puis de taper la commande pkg2ng avant de faire la mise à jour vers FreeBSD 10.

FreeBSD abandonne Bind au profil de LDNS et Unbound. Bind pourra toujours être installé en passant par les ports. Cette décision est l’aboutissement d’un long débat car il s’agit d’un changement important dans les habitudes des utilisateurs (une violation de la POLA) cependant le consensus s’est rapidement établi autour du fait que

  • seul un resolver était nécessaire dans le système de base,
  • Bind pose trop régulièrement des problèmes de sécurité, un remplaçant à la commande host(1) était un préalable absolu. Vitaly Magerya a donc implémenté un remplaçant de host basé sur ldns.

Sécurité

Le périphérique de nombres aléatoires random(4) est devenu plus sélectif, utilisant des sources qualifiées de « haute qualité ». Certaines sources jugées douteuses suite à des suspicions de surveillance de la part de certains gouvernements (mode paranoïa) ont été retirées.

Pourquoi choisir FreeBSD ?

Note : ce paragraphe a été ajouté à titre informatif, nul désir de troller. On ne peut affirmer objectivement que FreeBSD est supérieur ou inférieur à Linux. Les deux peuvent remplir les mêmes fonctions. Mais FreeBSD se démarque tout de même sur certains points :

  • Les jails qui sont matures et intégrés au système, tandis que sur Linux on ne sait pas quelle solution est vraiment pérenne (exemple : Xen retiré de la majorité des distributions, puis finalement intégré dans l’upstream du kernel. OpenVZ déprécié puis finalement en cours d’adaptation pour fonctionner en upstream aussi, etc).
  • La présence d’outils comme NanoBSD pour construire une image read-only du système très facilement.
  • Certains barbus préfèrent le système d’init et de configuration à l’ancienne.
  • Possibilité d’avoir une base stable avec des logiciels additionnels dans leur dernière version, ce qui allie les avantages du stable et du rolling release.
  • Le système de fichiers ZFS, très exigeant mais idéal pour du stockage de fichiers en datacenter.
  • Le système de ports, apprécié par certains barbus également, permet de passer ses propres options de compilation. Poudriere permet aussi de se faire très simplement un serveur de compilation de ports et un dépôt pkgng.

Conclusion

FreeBSD10 apporte beaucoup d’innovations et un souffle nouveau, autant pour les desktops que les serveurs.

Télécharger ce contenu au format Epub

Lire les commentaires

Cet article est repris du site http://linuxfr.org/news/freebsd-10

Sites favoris Tous les sites

84 sites référencés dans ce secteur