Table des matières

FreeBSD, le système BSD le plus Populaire et Polyvalent

Le logo de FreeBSD :

Présentation de FreeBSD

FreeBSD est une distribution BSD UNIX sous Licence FreeBSD (Licence BSD permissive) qui est basée sur 4.4BSD Lite Release 2 du CSRG de l' Université de Californie à Berkeley (UCB) également appelé 4.4BSD-Lite2, la première version de FreeBSD, FreeBSD 1.0-RELEASE, publiée le 1 novembre 1993, était à l'origine basée sur 386BSD 0.1 de Lynne et William Jolitz puis sur 4.4BSD Lite Release 1 ou plus simplement 4.4BSD-Lite de l' UCB à partir de FreeBSD 2.0-RELEASE publiée le 22 novembre 1994 et FreeBSD 3.0-RELEASE, publiée le 16 octobre 1998 est la première version à être issue de 4.4BSD Lite Release 2. L' actuelle et dernière version de production de FreeBSD est FreeBSD 14.2-RELEASE publiée le 3 décembre 2024 et l'ancienne version de production toujours maintenue et mise à jour est FreeBSD 13.4-RELEASE publiée le 17 septembre 2024.

À l'origine FreeBSD a été crée pour fonctionner uniquement sur l'architecture processeur Intel i386 car c'était l'architecture la plus utilisée et populaire à cette époque mais au fur et à mesure que les versions de FreeBSD se sont succédées, FreeBSD a été porté sur de plus en plus d' architectures processeurs différentes, à commencer par l' architecture Intel i386, Intel x86-64, ARM , PowerPC et RISC-V, certaines ont été retirées comme l' architecture processeur Alpha de DEC ou alors l' Intel IA-64 (processeur Itanium et Itanium 2), car les ordinateurs basés sur ses processeurs ne sont plus produits et sont jugé comme obsolètes pour FreeBSD et cet OS cherche avant tout à être compatible, avec les processeurs les plus couramment utilisés.

FreeBSD est sans aucun doute la distribution BSD la plus utilisée et est également le BSD que l'on peut utiliser dans le plus de domaines différents et contrairement à se que l'on peut penser, FreeBSD n'est pas seulement un OS pour les serveurs informatiques mais peut très bien être utilisé pour se creer une station de travail professionnelle ou bien même pour la bureautique, multimedia mais FreeBSD étant un système d'exploitation ayant été prévu à l'origine plutôt pour les serveurs, il n'y a pas d' interface graphique installée par défaut donc il faut avoir un minimum de connaissance pour configurer son OS à son image après installation.

À la différence de GNU/Linux les distributions BSD sont des OS complets, qui comporte à la fois leurs propres utilitaires Unix et un noyau monolithique modulaire (pour FreeBSD et NetBSD) et les daemons (services de base), comme FTP, NFS, SSH, NTP,…etc, en clair tous les composants d'un système BSD sont crées par la même entité, en l'occurence les membres du développement de FreeBSD. De plus le nombre de logiciels disponibles dans les dépôts de FreeBSD sont relativement conséquents, la plupart des logiciels disponibles sous GNU/Linux le sont aussi sous FreeBSD, mis à part les programmes qui sont spécifiques à GNU/Linux.

Les sites internet officiels de FreeBSD :

Si FreeBSD est acutellement le système d'exploitation de type BSD le plus utilisé et le plus populaire c'est en premier lieu parce que l' entreprise Walnut Creek CDROM Inc qui fournissait des CDROMs sur les logiciels libres (open source) à distribuée FreeBSD sur CD et DVD, là où Internet était encore peu utilisé, ce qui a propulsé FreeBSD et lui a permit de se faire connaître. FreeBSD c'est également focalisé sur l'architecture processeur Intel i386 qui était l'architecture des PC (Ordinateur Personnel ou en anglais Personal Computer) qui était et sont les ordinateurs les plus populaires auprès du grand publique.
Les systèmes BSD sont certainement les plus stables, robustes, sécurisés, ils sont développés depuis plus de 40 ans, 46 ans pour être précis et ça, sa fait toute la différence par rapport à d'autres OS beaucoup moins matures. Raison pour laquelle ils sont utilisés sur certains des plus importants data center (salle contenant une multitude de serveurs informatiques en rack). Photo d'une salle de data center (centre de données en français).

Sites Officiels FreeBSD

Les différentes Branches de FreeBSD

Spécifications et caractéristiques de FreeBSD

FreeBSD un Système d'Exploitation Complet

Tout d'abord, comme mentionné précédement, tous les systèmes d'exploitation de type BSD, sont des OS complets, qui comportent les utilitaires Unix en ligne de commande, le noyau BSD spécifique à chaque distributions BSD, les daemons (services en français) et tout ce que nécessite un système d'exploitation complet après installation et pour une utilisation optimale et FreeBSD ne déroge pas à cette règle. FreeBSD utilise par défaut les shells Unix, tcsh pour un utilisateur ordinaire (non-privilégié) et sh (ash) pour le compte de root (superutilisateur), il est à noter que FreeBSD dispose d'un compte du nom de toor, qui a les même privilèges que root mais sur lequel on peut associer un shell Unix des dépôts tiers comme le populaire bash. FreeBSD dispose d'un noyau de type monolithique modulaire, c'est à dire qu'il est possible d'installer des modules (équivalent des pilotes sous Windows) externes qui ne sont pas intégrés au noyau par défaut, celà permet d'avoir un noyau monolithique qui prend moins de place sur la mémoire de masse et qui donne la possiblité de prendre en charge du matériel informatique supplémentaire. Tout ce qui compose FreeBSD (utilitaires Unix, noyau FreeBSD, daemons de base, pilotes de périphériques et plus encore) est développé en interne par les membres du projet FreeBSD spécialisés dans le développement de cet OS. Par contre, si vous souhaitez faire de FreeBSD votre poste de travail, il vous faut installer l'environnement de bureau de votre choix par vos propres moyens car FreeBSD n'installe pas d'interface graphique par défaut après installation et c'est un choix délibéré pour vous laissez le choix de créer votre système d'exploitation selon vos besoins (serveur ou poste bureautique) mais surtout pour une histoire de licence, car FreeBSD a fait de choix d'inclure un maximum de logiciels sous licence BSD, mais pour les plus pressés d'entre vous, sachez qu'il existe une distribution BSD basée sur FreeBSD du nom de GhostBSD qui vous permet au choix, d'installer l'environnement de bureau appelé MATE (fork de GNOME2) ou Xfce qui est non pas géré par le projet officiel de GhostBSD comme MATE mais par sa communauté.

Si par mégarde pour avez installés FreeBSD avec la disposition clavier QWERTY et souhaitez passer votre clavier en AZERTY, exécutez cette commande : kbdcontrol -l fr.iso.acc (ceci n'est que temporaire), pour passer votre clavier en AZERTY de manière définitive il faut ajouter cette disposition au fichier /etc/rc.conf en ajoutant : keymap=“fr.acc.kbd” à /etc/rc.conf.

Le Noyau FreeBSD

Le noyau (kernel en anglais) de FreeBSD est de type monolithique modulaire tout comme Linux. Pour gérer les modules du noyau, il y a trois commandes Unix qui sont : kldload pour charger les modules, kldunload pour les décharger et kldstat pour savoir quels modules du noyau sont chargés. Dans le FHS de FreeBSD les modules du noyau installés par défaut se trouvent dans /boot/kernel et la plupart des modules externes, dans /boot/modules. Le noyau en lui même est le fichier /boot/kernel/kernel.

FreeBSD intègre KMS (Kernel-based Mode-Setting) qui est un pilote graphique qui se charge de la gestion des modes d'affichage graphique.

FreeBSD et ses dérivés sont les seuls systèmes BSD à supporter le pilote propriétaire NVIDIA via les logiciels tiers, pour les cartes graphiques produitent par NVIDIA !!!

Installateur de FreeBSD

L'installateur de FreeBSD se nomme bsdinstall, il a été adopté dans FreeBSD 9.0 le 12 janvier 2012. L'installateur précédent était sysinstall apparu dans FreeBSD 2.0 le 22 novembre 1994 et en fonction jusqu'à FreeBSD 8.4 sorti le 1er août 2015. L'installateur bsdinstall est nettement plus conviviale et cohérent que sysinstall et il permet, même après installation l'administration de son FreeBSD est ça permet par certains aspects de simplifier certaine tâche qui serait plus complexe pour un utilisateur non initié aux système de type BSD. Parmi ses tâches, ont peut énumérer : la possibilité de créer une Jail, de configurer le clavier, configuration du non d'hôte (hostname) et du réseau, la partition des disques durs, l'ajout d'utilisateur,…

Système d’initialisation de FreeBSD

Le système d’initialisation de FreeBSD est rc, très stable, simplissime, éprouvé et bien moins complexe à gérer que systemd de GNU/Linux. Pour résumer, le système d’initialisation rc lance le programme init (1er processus du système), qui lit le script /etc/rc (qui est le coeur du système d’initialisation) qui éxecute les daemons (services) indiqués dans le fichier /etc/rc.conf, les scripts d’initialisation de chaque daemon se trouvent dans /etc/rc.d pour les scripts internes et dans /usr/local/etc/rc.d pour les scripts externes (ne faisant à l'origine pas partie de FreeBSD).

Compilateur Logiciel sous FreeBSD

FreeBSD est passé du compilateur GCC (GNU Compiler Collection) sous licence GNU GPL à droit d'auteur copyleft au compilateur Clang et ses bibliothèques LLVM qui sont sous licence libre permissive et de se fait FreeBSD n'est plus contraint à la notion de copyleft. Désormais tous les logiciels par défaut de FreeBSD sont compilés avec l'association Clang/LLVM ainsi que les logiciels tiers dans le catalogue des logiciels portés. Le principal but de Clang/LLVM est d'être une alternative viable à GCC. Derrière les composants de se compilateur, se trouvent les entreprises : Apple, Microsoft, Google, ARM, Sony, Intel, AMD et Mozilla (en ce qui concerne les bibliothèques LLVM). Clang prend en charge les langages de programmation C, C++, Objective-C et Objective-C++. Les développeurs de Clang affirment qu'il utilise moins de mémoire vive et est plus rapide que le compilateur GCC. Clang est également le compilateur par défaut de macOS. À noter que le débogueur DTrace provenant de Sun Microsystems pour le projet et OS OpenSolaris fait partie intégrante de FreeBSD.

Installation de Logiciels par Défaut

En ce qui concerne l'installation de logiciels de manière officielle, il existe deux méthodologies, soit vous utilisez le catalogue des logiciels portés qui se trouve dans /usr/ports et vous vous rendez dans le répertoire du logiciel souhaité qui comporte en autres des fichiers Makefile qui sont une suite d'instructions pour compliler le logiciel et ses possibles dépendances , cette pratique consiste à compiler les logiciels en questions et toutes leurs dépendances de manière automatisée. Le seul utilitaire make en ligne de commande permet d'effectuer le processus d'installation.
L'autre option qui est nettement plus rapide est d'opter pour les logiciels pré-compilés avec l'utilitaire en ligne de commande du nom de pkg, le programme complet s'appel pkgng, crée par Baptiste Daroussin apparu sous FreeBSD 9.1, qui est un gestionnaire de paquets en ligne de commande extrèment complet qui utilise les dépôts de paquets de son choix, il permet à la fois d'installer un paquet logiciel et ses dépendances mais aussi de rechercher des logiciels en fonction de différents critères, de mettre à jour les logiciels installés, que ça soit par le biais des logiciels pré-compilés ou du catalogue des logiciels portés, enfin c'est un gestionnaire de paquets doté de très nombreuses fonctionnalités. Il était de coutûme d'installer les logiciels par compilation sous les distributions BSD mais là, c'est de l'histoire ancienne. Il existe également une interface graphique pour pkg appelée octopkg mais malheureusement, elle n'utilise qu'un faible potentiel de cet outil extraordinaire qu'est pkg.

Tous les logiciels installés soi même se logent dans le répertoire /usr/local. Les logiciels provenant du catalogue des logiciels portés s'appellent des ports sous FreeBSD alors que les ports sont pour la plupart des système Unix des architectures processeurs pour les OS en question.

Organisation du Système de Fichiers

Le FHS (Filesystem Hierarchy Standard) est pleinement compatible POSIX et est bien mieux compartimenté que sous GNU/Linux, les utilitaires utilisateur BSD fondamentaux sont dans /bin, les utilitaires administrateur fondamentaux sont dans /sbin, les utilitaires utilisateur courants, outils de programmation et applications sont dans /usr/bin et les utilitaires administrateur et daemons système sont dans /usr/sbin, les utilitaires et daemons système exécutés par des programmes sont dans /usr/libexec. En ce qui concerne les fichiers de configurations interne à FreeBSD, ils se trouvent dans /etc et les fichiers de configurations externes, suite à l'installation de logiciels se situent dans /usr/local/etc. Pour plus d'informations sur le l organisation du système de fichiers FreeBSD, exécuter la commande composé man hier. Sous FreeBSD, /home n'est qu'un lien symbolique vers le vrai répertoire home /usr/home donc sous FreeBSD, home ne se trouve pas à la racine / du système comme la plupart des système Unix mais dans /usr. Le répertoire home est l'endroit où se trouve les répertoires de chaque utilisateur, par exemple /home/david pointe vers le répertoire /usr/home/david.

Stockage sous FreeBSD

Au moment de l'installation de FreeBSD vous avez la possibilité d'opter pour deux systèmes de fichiers différents, le traditionnel UFS (Unix File System), précisément UFS2 ou ZFS (OpenZFS pour FreeBSD) sous licence CDDL, le système de fichiers ayant le plus de fonctionnalités, le mieux adapté au partage de fichiers en réseau et étant le plus à même d'acceillir des disques durs ou SSD de très grande capacité. ZFS utilise une structure de données de type B-tree, il n'est d'ailleurs pas necessaire de partitionner son périphérique de stockage à l'avance. Le système de fichiers ZFS a de nombreuses fonctionnalités tel que : les pools de stockage qui comme LVM de Linux permettent de concaténer des périphériques de stockage (disque dur, SSD,…) à une mémoire de masse déjà existance, une protection contre les pannes de disque dur, SSD ; le RAID logiciel plus précisément RAID-Z qui propose les types de RAID: RAID-Z1, RAID-Z2, RAID-Z3, qui offrent une redondance similaire à RAID 5 et RAID 6 (RAID traditionnel) ; les snapshots qui permettent des copies instantanées du système de fichiers à un instant donné, la création de clones ; la compression des données ; la déduplication qui élimine les blocs de données identiques ; la vérification de l'intégrité des données par le biais de checksums (md5,sha512,…) ; la gestion des quotas pour les utilisateurs et les groupes ; les réservations qui garantissent qu'il y aura toujours de l'espace libre sur un pool ; la gestion des ACL (Access Control List).

En lieu et place du gestionnaire de volumes logiques de Linux, du nom de LVM (Logical Volume Management), FreeBSD intégre Vinum, qui est un gestionnaire de volumes et a des fonctionnalités de RAID logiciel (RAID 0, 1, 5).

FreeBSD à son propre gestionnaire de partition du nom de gpart, qui est un utilitaire en ligne de commande relativement complet, qui fonctionne avec GEOM. C'est l'utilitaire principal pour partionner un disque dur ou SSD que l'on veut ajouter à son ordinateur sous FreeBSD.

Le Réseau sous FreeBSD

La mise en réseau de FreeBSD fait partie de ses grands atouts. La pile TCP/IP de FreeBSD se base sur celle de 4.4BSD en ayant été énormément améliorée, en plus du protocole IPv4, elle prend en charge IPv6, le protocole SCTP (Stream Control Transmission Protocol),IPsec (Internet Protocol Security) qui est une suite de protocoles de réseau sécurisés qui sert en autres pour créer un réseau VPN (Virtual private network), les réseaux sans fil Wi-Fi et encore bien d'autres protocoles réseaux. IPv6 et IPsec ont été à la base repris du projet KAME. La pile TCP/IP de FreeBSD est mature, robuste et fiable, utilisée par des data center (en français centre de données) de grande importance, un data center est une multitude de serveurs informatiques regroupés dans une salle sécurisée qui hébergent énormément de données.

Sécurité sous FreeBSD

FreeBSD est fournit par défaut de trois pare-feu (en anglais firewall) : IPFW, PF et IPFilter.

Courte description des ses trois pare-feu :

Packet Filter (PF) est le pare-feu logiciel par défaut de pfSense (Site Officiel) de l' entreprise Netgate et son fork nommé OPNsense (site officiel), tous deux des distributions BSD dédiées aux pare-feu issu de m0n0wall basés sur FreeBSD. Pour la partie matériels informatiques, vous pouvez trouver des routeurs et pare-feu ici pour pfSense et sur se site pour OPNsense. Sachez qu'il est tout à fait possible de se faire son propre pare-feu matériel avec OPNsense, il vous suffit de disposer d'un ordinateur à base de processeur Intel ou AMD récent, disposant de l'architecture processeur AMD64 appelée aussi Intel x86_64, il vous suffit de télécharger OPNsense ici et d'installer l'image sélectionnée sur votre ordinateur.

FreeBSD intègre également OpenSSH, une implémentation libre du protocole SSH (Secure Shell) qui est une suite d'utilitaires réseau, la commande Unix ssh (partie client) permet de se connectée à distance de manière sécurisée par le biais de la cryptographie asymétrique à un système Unix et désormais également à Windows sur un serveur OpenSSH (commande sshd). OpenSSH est un logiciel client-serveur pour le protocole SSH qui remplace en autres Telnet et rlogin et qui a été créée par le projet OpenBSD, la première version a été publiée 1er décembre 1995 et a été intégrée dans FreeBSD 4.8-RELEASE. OpenSSH est aujourd'hui utilisé par la plupart des systèmes d'exploitation, tels que les distributions GNU/Linux, toutes les distributions BSD (macOS d'Apple y compris), les systèmes UNIX commercials et les distributions Illumos ainsi que Windows, Windows 10 étant la première version à l'avoir intégré.

Le protocole SSH d'OpenBSD, OpenSSH mérite une page complète tellement il est riche et complet !!! Pour rappel, OpenSSH, le logiciel exploitant le protocole SSH, est le plus utilisé parmi les OS Unix et il est y compris disponible sur Microsoft Windows, à partir de Windows 10.

Couche de Compatibilité Binaire avec d'autres OS

FreeBSD comporte une compatibilité binaire avec Windows pour les pilotes de carte réseau via NDIS (Network Driver Interface Specification) qui est une interface de programmation d'application que l'on appelle plus simplement API (Application Programming Interface) qui permet d'installer des pilotes Windows (sous FreeBSD les pilotes s'appellent des modules) sous FreeBSD pour les cartes réseaux n'étant pas reconnus par défaut sous le noyau FreeBSD. FreeBSD permet également d'installer des logiciels prévus pour Windows via le projet et logiciel du nom de Wine, se logiciel ne fait pas partie de la distribution FreeBSD par défaut mais est installable via les logiciels tiers en passant par les logiciels pré-compilés ou le catalogue des logiciels portés.

FreeBSD a également une compatibilité binaire avec Linux qui n'est pas une émulation mais utilise les appels systèmes appelé ABI (Application Binary Interface) de Linux, cette compatibilté peut être activée par le biais d'un module du noyau FreeBSD qui se nomme linux.ko ou/et linux64.ko pour les programmes 64 bits, pour activer cette compatibilté au démarrage et de manière définitive, il suffit d'ajouter linux_enable=“YES” au fichier /etc/rc.conf. Les exécutables et bibliothèques partagées de Linux sont executés comme les exécutables et bibliothèques partagées de FreeBSD donc l'execution d'un logiciel Linux est quasiment identique à l'execution d'un logiciel sous FreeBSD en ce qui concerne les performances. La couche de compatibilité binaire Linux fonctionne aussi bien pour les programmes 32 bits et 64 bits provenant de GNU/Linux. Le FHS (Filesystem Hierarchy Standard) de Linux se situe par défaut dans /compat/linux. Par défaut vous pouvez installer via les logiciels tiers des dépôts officiels de FreeBSD les distributions Linux CentOS 7 ou Rocky Linux qui est basée sur le code source de Red Hat Enterprise Linux (RHEL) et qui est pleinement compatible au niveau binaire avec la RHEL. Si vous n'êtes pas fan des distributions Linux basées sur RHEL, vous pouvez également installer une distribution basée sur Debian (ou autres) telle que Ubuntu à l' aide de l'utilitaire en ligne de commande du nom de debootstrap mais l'installation est légèrement plus complexe et manuelle. La compatibilité binaire Linux permet de faire fonctionner la plupart des logiciels conçus pour Linux.

Virtualisation et Conteneurisation par Défaut sous FreeBSD

Hyperviseur Bhyve développé par FreeBSD

Bhyve est un hyperviseur de type 2, tout comme l'est VirtualBox, installé par défaut sous FreeBSD, il a été intégré à FreeBSD à partir de la version FreeBSD 10.0-RELEASE, il est relativement récent mais est très prometteur et est d'ores et déjà en mesure de virtualiser, divers distributions GNU/Linux, tel que : Debian, Ubuntu, Fedora, Alpine Linux…, du côté des distributions Illumos on peut citer : OpenIndiana, SmartOS, OmniOS et plus encore et bien évidemment la plupart des distributions BSD comme : FreeBSD, NetBSD, OpenBSD mais aussi Windows de Microsoft. La version initiale de bhyve a été créée en 2014 par les développeurs de FreeBSD. Pour le moment, il n'existe pas d'interface graphique pour bhyve mais il y a des outils en ligne de commande tels que : iohyve, vm-bhyve pour les plus courants permettant de gérer en intégralité l'hyperviseur spécifique à FreeBSD. Si vous n'êtes pas fan de la ligne de commande, vous pouvez vous orienter vers une interface Web légère du nom de BVCP disponible à cette adresse. Parmi les fonctionnalités, bhyve prend en charge les installations UEFI (Unified Extensible Firmware Interface),les interfaces émulées de KVM, VirtIO, pour la prise en charge des périphériques tels que les contrôleurs USB avec la spécification xHCI (eXtensible Host Controller Interface), les contrôleurs NVM Express (NVMe), les contrôleurs audio haute définition, le périphérique de mémoire tampon d'image brute connecté au serveur VNC (sortie vidéo) et le relais AHCI / PCI.

Sachez qu'il est tout à fait possible installer via les logiciels tiers l'hyperiveur d'Oracle, VirtualBox.

L'OS d'Apple macOS à un portage de bhyve du nom de xhyve. Se port logiciel, est utilisé par l'hyperviseur de macOS appelé HyperKit, qui permet de faire fonctionner Docker, le logiciel de conteneurs le plus populaire. L'hyperviseur xhyve peut tout à fait être utilisé pour faire tourner de nombreux systèmes d'exploitation différents.

Conteneurs (Jails) de FreeBSD

Les Jails (Prisons en français) de FreeBSD qui sont des conteneurs (en anglais containers) comme LXC (Linux Containers) mais qui ressemble davantage aux conteneurs de Solaris d'Oracle Corporation, les Zones Solaris, également présentes dans les distributions illumos. Pour faire simple, les jails permettent d'avoir plusieurs systèmes FreeBSD totalement isolés du système FreeBSD principal, appelé l'Hôte, sur la même machine. Les Jails virtualisent uniquement l'espace utilisateur (userland en anglais), le noyau FreeBSD est le même pour la ou les jails que le système Hôte. Se procédé existe depuis longtemps sous Unix via l'appel système chroot et la commande Unix du même nom mais les jails renforcent l' isolation, si une jail est infectée, les autres jails ne le seront pas ainsi que le système Hôte. Les principales fonctionnalités des jails sont :

Via l'émulation binaire Linux, il est désormais possible d'avoir des jails sous Linux sur FreeBSD, enfin bref, les jails ont tout pour séduire un administrateur système Unix ou Linux.

Les Jails sont idéales pour avoir un serveur Web de test ou de productrion qui a sa propre adresse IP, elles peuvent également servir pour se faire un environment de développement, enfin tout ce qui permet d'avoir une multitude de systèmes FreeBSD, isolés de l'OS FreeBSD Hôte et des autres Jails et désormais plusieurs GNU/Linux au sein de l'ordinateur. Par les logiciels tiers, il est également possible d'installer Docker mais je n'y vois pas trop d' intérêt.

Quelques Daemons (Services) et Logiciels installés par défaut sous FreeBSD

Exemple de Daemons installés par Défaut

Logiciels d'intérêt installés par Défaut

Par défaut, tous les daemons sous FreeBSD sont désactivés. Ils sont tous activables dans /etc/rc.conf. Exemple, ajoutez inetd_enable=“YES” à /etc/rc.conf. FreeBSD est d'une conception très sécurisée par défaut, et le fait que tous les daemons intégrés au système soient désactivés par défaut, il n'y a aucun risque de sécurité à se qu'ils soient préinstallés.

Mise à Jour ou à Niveau de FreeBSD

L'outil en ligne de commande pour mettre à jour ou mettre à niveau FreeBSD se nomme freebsd-update. Il est extrèment fiable pour qui connaît cet OS ! Les mise à jour ou à niveau sont à effectuer avec le compte root (super-utilisateur) ou sudo ou doas.

Pour passer en mode root sous FreeBSD :

su -

Puis tapez votre mot de passe à l'aveugle et appuyer sur la touche Enter.

Mise à Jour

Pour faire une simple mise à jour :

freebsd-update fetch

puis :

freebsd-update install

Reboot et c'est tout !!!

En cas d'erreur de votre part vous pouvez revenir en arrère pour restaurer le système

freebsd-update rollback

Mise à Niveau

Il existe deux types de mise à niveau, mineure et majeure.

La mise à niveau mineure est par exemple de passer de FreeBSD 14.1 à 14.2 et la mise à niveau majeure est par exemple de passer de 13.3 à 14.2, pour faire une mise à niveau mineure :

Pensez à vérifier que votre système est à jour

freebsd-update fetch ; freebsd-update install

Pour passer de 14.1 à 14.2 :

freebsd-update -r 14.2-RELEASE upgrade

Vous aurez à répondre à plusieurs questions (attention, prenez votre temps et ne vous trompez pas dans vos réponses !!!)

puis :

freebsd-update install

pour mettre à niveau le noyau FreeBSD

Une fois terminé, vous redémarrez :

shutdown -r now

Une fois booter sur le nouveau noyau vous exécutez à nouveau :

freebsd-update install

ce qui va mettre le système au complet à niveau.

Cest fini !!!

Pour faire une mise à niveau majeure, le processus est exactement le même, sauf qu'il faut penser à mettre à jour les logiciels tiers (externes) avec pkgng comme ceci :

pkg update

Puis :

pkg upgrade
Contrairement à certaines distributions Linux, la mise à niveau sous FreeBSD est très fiable, elle résussie à coup sûr si vous avez de bonne connaissance sous FreeBSD. L'une des raisons pour laquelle une mise à niveau est en général plus fiable que sous GNU/Linux vient du fait que les logiciels fournis par défaut sous FreeBSD, sont séparés des logiciels tiers (externes) qui se trouvent dans leur propre répertoire, /usr/local (principe que l'on retrouve dans toutes les distributions BSD confondues.

Suppléments de documentation sur FreeBSD

Dans cette section vous trouverez des tutoriels sur FreeBSD pour de plus amples informations sur la distribution FreeBSD.

Pour davantage d'informations, il existe un manuel de référence en français sur FreeBSD sur son site officiel, à cette adresse et la version en anglais (plus à jour), ici.