wiki:systemes_d_exploitation:bsd_unix:netbsd

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
wiki:systemes_d_exploitation:bsd_unix:netbsd [2025/03/14 12:55] – [Sites Internet dédiés à NetBSD] Thibault Seguinwiki:systemes_d_exploitation:bsd_unix:netbsd [2025/03/14 12:59] (Version actuelle) Thibault Seguin
Ligne 24: Ligne 24:
   * [[https://www.netbsd.org/community/|Liens Communautaires sur NetBSD]]   * [[https://www.netbsd.org/community/|Liens Communautaires sur NetBSD]]
 ===== Caractéristiques et spécificités de NetBSD ===== ===== Caractéristiques et spécificités de NetBSD =====
-==== Bref Résumé de NetBSD ====+==== Bref résumé de NetBSD ====
 Comme tous les **BSD Libres**, **NetBSD** est un **OS** complet, ''développé'' par la même ''entité'', la **Fondation NetBSD**, il est composé de tous les **composants** propre à un **système UNIX**, comme un **noyau** de type **monolithique modulaire**, **système d'initialisation** de type **init** (**rc.d**), de plusieurs **shell Unix** (par défaut **sh**, **ksh** et **csh**), des **systèmes de fichiers** (**UFS** et **ZFS** à l'installation par défaut), tous les **utilitaires Unix** de base et plus, des **bibliothèques logicielles**, des **daemons** (**services**) comme **SSH** ou **NFS**, des **protocoles réseau**, des **journaux de log**, un **hyperviseur** appelé **NVMM** (**//NetBSD Virtual Machine Monitor//**) piloté avec l'**émulateur** **QEMU**, d'un **gestionnaire de paquets**, du **compilateur** **GCC** de **GNU** et sous **NetBSD**, vous avez également la possibilité d'installer par défaut un **serveur** **X** (**serveur d'afficahge**) en l'occurence **X.Org** associé au **gestionnaire de fenêtre** du nom de **CTWM** (**//Claude's Tab Window Manager//**) qui est une améliotation du **gestionnaire de fenêtre** nommé **twm** (**//Tab Window Manager//**) qui était le **gestionnaire de fenêtre** par défaut sous les principaux **BSD**, dont **NetBSD**. Comme tous les **BSD Libres**, **NetBSD** est un **OS** complet, ''développé'' par la même ''entité'', la **Fondation NetBSD**, il est composé de tous les **composants** propre à un **système UNIX**, comme un **noyau** de type **monolithique modulaire**, **système d'initialisation** de type **init** (**rc.d**), de plusieurs **shell Unix** (par défaut **sh**, **ksh** et **csh**), des **systèmes de fichiers** (**UFS** et **ZFS** à l'installation par défaut), tous les **utilitaires Unix** de base et plus, des **bibliothèques logicielles**, des **daemons** (**services**) comme **SSH** ou **NFS**, des **protocoles réseau**, des **journaux de log**, un **hyperviseur** appelé **NVMM** (**//NetBSD Virtual Machine Monitor//**) piloté avec l'**émulateur** **QEMU**, d'un **gestionnaire de paquets**, du **compilateur** **GCC** de **GNU** et sous **NetBSD**, vous avez également la possibilité d'installer par défaut un **serveur** **X** (**serveur d'afficahge**) en l'occurence **X.Org** associé au **gestionnaire de fenêtre** du nom de **CTWM** (**//Claude's Tab Window Manager//**) qui est une améliotation du **gestionnaire de fenêtre** nommé **twm** (**//Tab Window Manager//**) qui était le **gestionnaire de fenêtre** par défaut sous les principaux **BSD**, dont **NetBSD**.
  
Ligne 31: Ligne 31:
 **NetBSD** est composé de plusieurs parties de l'**OS** que l'on appelle des **sets** dans le ''jargon'' **BSD**. Les **sets** indispensables au fonctionnement de **NetBSD**, sont : le **set** **base** (qui contient tous les **utilitaires Unix** de base), **etc** (qui contient tous les **fichiers de configuration** dans ''etc''.), et **kern-GENERIC** (qui contient le **noyau** de base de **NetBSD**) puis les **sets** fortement recommandés : le **set** **comp**, **debug**, **games** (pas essentiel), **gpufw** (pas essentiel), **man**, **misc**, **modules** (**modules** ajoute des ''fonctionnalités'' au **noyau**), **rescue** (qui comporte tous les **utilitaires Unix** **standard** et d'**administration** de ''base'' de manière ''statique'', très utile pour ''réparer'' une installation **NetBSD** cassée) et **text**. Tous ses **sets** sont suffisants pour avoir un **NetBSD** complètement fonctionnel mais si vous souhaitez faire de **NetBSD** un **poste de travail**, il faut ajouter ses **sets** : **xbase** (qui contient des **utilitaires graphiques** de base, tel que : **xcalc**, **xclock**, **xkill**,...), **xcomp**, **xdebug**, **xfont**, **xetc** (qui contient les **fichiers de configutations** dans ''/etc'' liés à **X**) et **xserver** (contient le **serveur** **X** en lui même, qui est **X.Org**).  **NetBSD** est composé de plusieurs parties de l'**OS** que l'on appelle des **sets** dans le ''jargon'' **BSD**. Les **sets** indispensables au fonctionnement de **NetBSD**, sont : le **set** **base** (qui contient tous les **utilitaires Unix** de base), **etc** (qui contient tous les **fichiers de configuration** dans ''etc''.), et **kern-GENERIC** (qui contient le **noyau** de base de **NetBSD**) puis les **sets** fortement recommandés : le **set** **comp**, **debug**, **games** (pas essentiel), **gpufw** (pas essentiel), **man**, **misc**, **modules** (**modules** ajoute des ''fonctionnalités'' au **noyau**), **rescue** (qui comporte tous les **utilitaires Unix** **standard** et d'**administration** de ''base'' de manière ''statique'', très utile pour ''réparer'' une installation **NetBSD** cassée) et **text**. Tous ses **sets** sont suffisants pour avoir un **NetBSD** complètement fonctionnel mais si vous souhaitez faire de **NetBSD** un **poste de travail**, il faut ajouter ses **sets** : **xbase** (qui contient des **utilitaires graphiques** de base, tel que : **xcalc**, **xclock**, **xkill**,...), **xcomp**, **xdebug**, **xfont**, **xetc** (qui contient les **fichiers de configutations** dans ''/etc'' liés à **X**) et **xserver** (contient le **serveur** **X** en lui même, qui est **X.Org**). 
  
-==== Le Noyau de NetBSD ====+==== Le noyau de NetBSD ====
 Le **noyau** de **NetBSD** est un **noyau monolithique modulaire**, **modulaire** dans le sens où il permet d'activer ou installer des ''fonctionnalités'' via des **modules**, qui ne sont pas activées par défaut sous le **noyau NetBSD**. Le **noyau NetBSD** prend en charge **SMP** (**//Symmetric Multiprocessing//**, **multiprocesseur symétrique** en français) qui n'a cessé d'être amélioré au fil de l' ''évolution'' de **NetBSD**, qui consiste à ''multiplier'' les **processeurs** identiques au sein d'un **ordinateur**, de manière à augmenter la **puissance** de **calcul**, tout en conservant une unique **mémoire**. Le **noyau** de **NetBSD** est un **noyau monolithique modulaire**, **modulaire** dans le sens où il permet d'activer ou installer des ''fonctionnalités'' via des **modules**, qui ne sont pas activées par défaut sous le **noyau NetBSD**. Le **noyau NetBSD** prend en charge **SMP** (**//Symmetric Multiprocessing//**, **multiprocesseur symétrique** en français) qui n'a cessé d'être amélioré au fil de l' ''évolution'' de **NetBSD**, qui consiste à ''multiplier'' les **processeurs** identiques au sein d'un **ordinateur**, de manière à augmenter la **puissance** de **calcul**, tout en conservant une unique **mémoire**.
  
Ligne 41: Ligne 41:
 Vous pouvez modifier certaines ''fonctionnalités'' du **noyau NetBSD** via des **variables** dans le **fichier** ''/etc/sysctl.conf''. Vous pouvez modifier certaines ''fonctionnalités'' du **noyau NetBSD** via des **variables** dans le **fichier** ''/etc/sysctl.conf''.
  
-==== Un grand Atout de NetBSD, la Portabilité ====+==== Un grand atout de NetBSD, la portabilité ====
 La grande force de **NetBSD** réside dans sa grande ''portabilité'', **NetBSD** est disponible pour un nombre très impressionnant d'**architecture processeur** comme les familles: **x86**, **ia-64**, **m68k**, **arm**, **riscv**, **powerpc**, **sparc**, **mips**,  **alpha**, **hppa**, **vax** et **sh3**, on décompte pas moins de ''12'' **architectures processeurs** différentes et environ ''60'' **plates-formes matérielles**, ce qui est énorme pour un seul et même **OS**. La grande force de **NetBSD** réside dans sa grande ''portabilité'', **NetBSD** est disponible pour un nombre très impressionnant d'**architecture processeur** comme les familles: **x86**, **ia-64**, **m68k**, **arm**, **riscv**, **powerpc**, **sparc**, **mips**,  **alpha**, **hppa**, **vax** et **sh3**, on décompte pas moins de ''12'' **architectures processeurs** différentes et environ ''60'' **plates-formes matérielles**, ce qui est énorme pour un seul et même **OS**.
  
Ligne 81: Ligne 81:
  
  
-==== L'Installateur de NetBSD ====+==== L'installateur de NetBSD ====
 L'**installateur** de **NetBSD** se nomme **sysinst** c'est un **installateur** qui a une **interface** de type **Curses** et qui est relativement complet (il peut paramétrer très ''finement'' l'installation de **NetBSD**) mais un peu complexe pour les non-initiés, qui permet tout type d'installation, pour les **serveurs informatiques** ou les **postes de travail**. Un cours résumé pour installer **NetBSD** : L'**installateur** de **NetBSD** se nomme **sysinst** c'est un **installateur** qui a une **interface** de type **Curses** et qui est relativement complet (il peut paramétrer très ''finement'' l'installation de **NetBSD**) mais un peu complexe pour les non-initiés, qui permet tout type d'installation, pour les **serveurs informatiques** ou les **postes de travail**. Un cours résumé pour installer **NetBSD** :
   - Les **touches** et combinaisons de **touche**  du **clavier** à utiliser pour naviguer sont : la **touche** ''Tabulation'' (**↹**), la combinaisons de **touche** ''Ctrl+N'' (''N'' = ''Next'') pour aller sur l'occurence ''suivante'' et ''Ctrl+P'' (''P'' = ''Previous'') pour l'occurence ''précédente'' et la **touche** ''Entrer'' (**↵**) pour ''valider'' un choix ou une opération.   - Les **touches** et combinaisons de **touche**  du **clavier** à utiliser pour naviguer sont : la **touche** ''Tabulation'' (**↹**), la combinaisons de **touche** ''Ctrl+N'' (''N'' = ''Next'') pour aller sur l'occurence ''suivante'' et ''Ctrl+P'' (''P'' = ''Previous'') pour l'occurence ''précédente'' et la **touche** ''Entrer'' (**↵**) pour ''valider'' un choix ou une opération.
Ligne 113: Ligne 113:
 Le **système** **NetBSD** a pour **outil** de base en **console**, **wscons** qui est un **logiciel** de type **cadriciel** (**framework**) qui gère l' ''interaction'' entre le **système** et les **périphériques** d' ''entrée/sortie'' tel que les **claviers**, **souris**, **écrans**, il a comme **fichier de configuration** ''/etc/wscons.conf''. **wscons** est en autres le **pilote de console** sous **NetBSD** (également sous **OpenBSD**), il permet la **création** et la **gestion** des **consoles virtuelles** (**getty**), la **configuration** du **clavier** tel que sa **disposition** ou **layout** (**AZERTY**,**QWERTY**,...), la **gestion** de la **souris**, la **configuration** de l'**écran** et le **support** des types de **terminaux** tel que **VT100**, **VT220**,... Le **système** **NetBSD** a pour **outil** de base en **console**, **wscons** qui est un **logiciel** de type **cadriciel** (**framework**) qui gère l' ''interaction'' entre le **système** et les **périphériques** d' ''entrée/sortie'' tel que les **claviers**, **souris**, **écrans**, il a comme **fichier de configuration** ''/etc/wscons.conf''. **wscons** est en autres le **pilote de console** sous **NetBSD** (également sous **OpenBSD**), il permet la **création** et la **gestion** des **consoles virtuelles** (**getty**), la **configuration** du **clavier** tel que sa **disposition** ou **layout** (**AZERTY**,**QWERTY**,...), la **gestion** de la **souris**, la **configuration** de l'**écran** et le **support** des types de **terminaux** tel que **VT100**, **VT220**,...
  
-==== Le Réseau sous NetBSD ====+==== Le réseau sous NetBSD ====
 **NetBSD** à une **pile TCP/IP**, très ''stable'', ''robuste'' qui c'est basé originellement sur **4.3BSD Net2**, pour finir par ''intégrer'' la **pile TCP/IP** de **4.4BSD Lite Release 2** qui a été constamment améliorée par le **projet NetBSD**. **NetBSD** prend évidement en charge le **protocole de communication** de type **Ethernet** mais également le **Wifi**, la **pile TCP/IP** prend en charge **IPv4** et **IPv6**. **NetBSD** à une **pile TCP/IP**, très ''stable'', ''robuste'' qui c'est basé originellement sur **4.3BSD Net2**, pour finir par ''intégrer'' la **pile TCP/IP** de **4.4BSD Lite Release 2** qui a été constamment améliorée par le **projet NetBSD**. **NetBSD** prend évidement en charge le **protocole de communication** de type **Ethernet** mais également le **Wifi**, la **pile TCP/IP** prend en charge **IPv4** et **IPv6**.
  
Ligne 135: Ligne 135:
   * **NetBSD** à son propre **pare-feu** du non de **NPF** (**//NetBSD Packet Filter//**) qui est un **fork** de **PF** (**//PacketFilter//**) du **système BSD** nommé **OpenBSD**.   * **NetBSD** à son propre **pare-feu** du non de **NPF** (**//NetBSD Packet Filter//**) qui est un **fork** de **PF** (**//PacketFilter//**) du **système BSD** nommé **OpenBSD**.
  
-==== Gestionnaire de Paquets sous NetBSD ====+==== Gestionnaire de paquets sous NetBSD ====
 **NetBSD** utilise ''deux'' méthodes d'installation de paquets, soit sous forme de **compilation** avec **pkgsrc** ou sous forme **binaire** avec l'**utilitaire** en **ligne de commande** du nom de **pkgin**. Tous les **logiciels tiers**, installés par **pkgsrc** ou **pkgin** se retrouvent dans le répertoire ''/usr/pkg''. **NetBSD** utilise ''deux'' méthodes d'installation de paquets, soit sous forme de **compilation** avec **pkgsrc** ou sous forme **binaire** avec l'**utilitaire** en **ligne de commande** du nom de **pkgin**. Tous les **logiciels tiers**, installés par **pkgsrc** ou **pkgin** se retrouvent dans le répertoire ''/usr/pkg''.
   * **pkgsrc** est un **système** de **compilation** qui permet d'installer un **logiciel** et toutes ses **dépendances** de manière ''automatisée'' par **compilation** avec de simple **Makefiles** (**fichiers** d'instructions de **compilation**) et l'**utilitaire Unix** des plus célèbres, **make**. Vous pouvez installer **pkgsrc** à la fin de l'installation de **NetBSD** à condition d'être connecté à **Internet**.   * **pkgsrc** est un **système** de **compilation** qui permet d'installer un **logiciel** et toutes ses **dépendances** de manière ''automatisée'' par **compilation** avec de simple **Makefiles** (**fichiers** d'instructions de **compilation**) et l'**utilitaire Unix** des plus célèbres, **make**. Vous pouvez installer **pkgsrc** à la fin de l'installation de **NetBSD** à condition d'être connecté à **Internet**.
Ligne 143: Ligne 143:
  
 <note>La **collection** de **logiciels** de **pkgsrc** n'est pas seulement disponible sur **NetBSD**, vous pouvez installer **pkgsrc** sous **Linux**, **macOS**, **FreeBSD**, **OpenBSD**, **Solaris** et **illumos**, **MINIX**, **HP-UX** de **HP**, **AIX** d'**IBM**,...</note> <note>La **collection** de **logiciels** de **pkgsrc** n'est pas seulement disponible sur **NetBSD**, vous pouvez installer **pkgsrc** sous **Linux**, **macOS**, **FreeBSD**, **OpenBSD**, **Solaris** et **illumos**, **MINIX**, **HP-UX** de **HP**, **AIX** d'**IBM**,...</note>
-==== Compatibilité Binaire avec d'autres OS sous NetBSD ====+==== Compatibilité binaire avec d'autres OS sous NetBSD ====
 L'**OS** **NetBSD** est pouvu d'une **compatibilité binaire** avec **Linux** en implémentant l'**ABI** (**//Application Binary Interface//**) de **Linux** ce qui permet d'exécuter des **applications** prévues pour **Linux** de façon quasi ''natives''. La **compatibilité binaire** avec **Linux** est activé par défaut dans le **noyau GENERIC** de **NetBSD** sous le nom de **COMPAT_LINUX**, elle est aussi bien ''compatible'' avec les **logiciels** ''32 bits'' et ''64 bits''. Il y a peu, depuis **NetBSD 10.0** sortie le 28 mars 2024, il y a aussi une **compatibilité binaire** avec **Linux** pour les **processeurs** ARM ''64 bits''. Par défaut, en passant par les **sources** via **pkgsrc** ou par les **binaires** via **pkgin**, donc les **logiciels tiers**, **NetBSD** installe une **distribtion OpenSUSE**, le **FHS** (**//Filesystem Hierarchy Standard//**)  est installé dans ''/emul/linux'' qui est un **lien symbolique** qui pointe vers ''/usr/pkg/emul/linux'', c'est à dire toute l'**arborescence** de **Linux**, les **répertoires**, les **fichiers**,... Vous avez également la possibilité d'installer la **distribution Linux** de votre choix, par exemple pour **Debian GNU/Linux** utilisez l'**outils** en **ligne de commande** du nom de **debootstrap** pour faciliter le ''téléchargement'' de la **distro**. L'**OS** **NetBSD** est pouvu d'une **compatibilité binaire** avec **Linux** en implémentant l'**ABI** (**//Application Binary Interface//**) de **Linux** ce qui permet d'exécuter des **applications** prévues pour **Linux** de façon quasi ''natives''. La **compatibilité binaire** avec **Linux** est activé par défaut dans le **noyau GENERIC** de **NetBSD** sous le nom de **COMPAT_LINUX**, elle est aussi bien ''compatible'' avec les **logiciels** ''32 bits'' et ''64 bits''. Il y a peu, depuis **NetBSD 10.0** sortie le 28 mars 2024, il y a aussi une **compatibilité binaire** avec **Linux** pour les **processeurs** ARM ''64 bits''. Par défaut, en passant par les **sources** via **pkgsrc** ou par les **binaires** via **pkgin**, donc les **logiciels tiers**, **NetBSD** installe une **distribtion OpenSUSE**, le **FHS** (**//Filesystem Hierarchy Standard//**)  est installé dans ''/emul/linux'' qui est un **lien symbolique** qui pointe vers ''/usr/pkg/emul/linux'', c'est à dire toute l'**arborescence** de **Linux**, les **répertoires**, les **fichiers**,... Vous avez également la possibilité d'installer la **distribution Linux** de votre choix, par exemple pour **Debian GNU/Linux** utilisez l'**outils** en **ligne de commande** du nom de **debootstrap** pour faciliter le ''téléchargement'' de la **distro**.
  
Ligne 152: Ligne 152:
  
 L'**hyperviseur** **Xen** est intégré à **NetBSD** depuis la version **NetBSD 3.0**, il est pleinement fonctionnel, il gère les **Dom0** et les **DomU**. L'**hyperviseur** **Xen** est intégré à **NetBSD** depuis la version **NetBSD 3.0**, il est pleinement fonctionnel, il gère les **Dom0** et les **DomU**.
-==== Quelques Protocoles Réseaux Applicatifs intégrés par Défaut sous NetBSD ====+==== Quelques protocoles réseaux applicatifs intégrés par défaut sous NetBSD ====
 Tous les **protocoles réseaux** ''applicatifs'' comprennent à la fois le **client** et le **serveur**. Tous les **protocoles réseaux** ''applicatifs'' comprennent à la fois le **client** et le **serveur**.
   * **SSH** (**//Secure Shell//**), précisément **OpenSSH** sous **NetBSD** est un **protocole** qui permet en autres de se connecter à un **ordinateur** distant ayant un **serveur SSH** en **ligne de commande**, comme l'ancien **Telnet** ou **Rlogin** mais de manière ''sécurisée'' en utilisant la **cryptographie asymétrique**.   * **SSH** (**//Secure Shell//**), précisément **OpenSSH** sous **NetBSD** est un **protocole** qui permet en autres de se connecter à un **ordinateur** distant ayant un **serveur SSH** en **ligne de commande**, comme l'ancien **Telnet** ou **Rlogin** mais de manière ''sécurisée'' en utilisant la **cryptographie asymétrique**.
Ligne 166: Ligne 166:
 <note important>Il est important de savoir que tous les **serveurs** ''intégrés'' à **NetBSD** sont ''désactivés'' par défaut, pour activer les **serveurs** sous **NetBSD**, il faut les renseigner dans ''/etc/rc.conf''. Exemple pour activer le **daemon** et **serveur** **OpenSSH** : ''echo sshd=YES >> /etc/rc.conf''.</note> <note important>Il est important de savoir que tous les **serveurs** ''intégrés'' à **NetBSD** sont ''désactivés'' par défaut, pour activer les **serveurs** sous **NetBSD**, il faut les renseigner dans ''/etc/rc.conf''. Exemple pour activer le **daemon** et **serveur** **OpenSSH** : ''echo sshd=YES >> /etc/rc.conf''.</note>
  
-==== Mise à Jour ou à Niveau de NetBSD ====+==== Mise à jour ou à niveau de NetBSD ====
 Pour **mettre à jour** ou à **mettre à niveau** vous pouvez utilisez l' **installateur** de **NetBSD** nommé **sysinst** ou utilisez un **logiciel tiers** du nom de **sysupgrade**, que vous pouvez soit installer via **pkgsrc** ou **pkgin**. Pour **mettre à jour** ou à **mettre à niveau** vous pouvez utilisez l' **installateur** de **NetBSD** nommé **sysinst** ou utilisez un **logiciel tiers** du nom de **sysupgrade**, que vous pouvez soit installer via **pkgsrc** ou **pkgin**.
   * **sysinst** : il vous faut un **média d'installation** de type **CD/DVD** ou **Clé USB** par exemple puis au moment du démarrage de l'**installateur** il vous est proposé soit d' ''installer'' **NetBSD** ou de le ''mettre à jour'' (à ''niveau''), chosissez ''mettre à jour'' puis suivez les ''instructions''. L'avantage de **sysinst** est qu'il permet de ''mettre à niveau'' **NetBSD** sans connexion à **Internet** (il tout de même préférable d'être connecté à **Internet**).   * **sysinst** : il vous faut un **média d'installation** de type **CD/DVD** ou **Clé USB** par exemple puis au moment du démarrage de l'**installateur** il vous est proposé soit d' ''installer'' **NetBSD** ou de le ''mettre à jour'' (à ''niveau''), chosissez ''mettre à jour'' puis suivez les ''instructions''. L'avantage de **sysinst** est qu'il permet de ''mettre à niveau'' **NetBSD** sans connexion à **Internet** (il tout de même préférable d'être connecté à **Internet**).
  • wiki/systemes_d_exploitation/bsd_unix/netbsd.txt
  • Dernière modification : 2025/03/14 12:59
  • de Thibault Seguin