Installation des outils système
Outil de journalisation du système
OpenRC
Quelques outils sont absents de l'archive tar d'étape 3 car plusieurs paquets fournissent la même fonctionnalité. Le choix est laissé à l'utilisateur de savoir quels paquets installer.
Le premier outil sur lequel un choix doit se faire est un outil de journalisation pour le système. Unix et Linux ont un historique excellent de capacités de journalisations - si besoin, tout ce qui se passe sur le système peut être enregistré dans des journaux.
Gentoo offre plusieurs utilitaires de journalisation, notamment :
- app-admin/sysklogd - Offre l'ensemble traditionnel des démons de journalisation système. La configuration par défaut fonctionne correctement ce qui fait de ce paquet une bonne option pour les débutants.
- app-admin/syslog-ng - Un système de journalisation avancé. Nécessite une configuration supplémentaire pour fonctionner au delà de la journalisation dans un seul gros fichier. Les utilisateurs avancés peuvent choisir ce système de journalisation du fait de son potentiel mais attention, un configuration est nécessaire pour une journalisation intelligente.
- app-admin/metalog - Un système de journalisation hautement configurable.
D'autres sont disponibles depuis Portage - le nombre de paquets disponibles augmente tous les jours.
Si syslog-ng sera utilisé, il est recommandé d'installer et de configurer logrotate par la suite car il ne fournit aucun mécanisme de rotation pour les fichiers du journal. Les nouvelles versions (>= 2.0) de sysklogd intègrent par contre leur propre mécanisme de rotation.
Pour installer l'outil de journalisation désiré, installez-le. Sur OpenRC, ajoutez-le au niveau d'exécution par défaut en utilisant rc-update. L'exemple suivant installe app-admin/sysklogd :
root #
emerge --ask app-admin/sysklogd
root #
rc-update add sysklogd default
systemd
Les utilisateurs de systemd peuvent normalement passer cette étape, à moins qu'ils souhaitent spécifiquement un outil de journalisation système. systemd inclut journald, qui fournit déjà cette fonctionnalité.
See man journalctl for more details on using journalctl to query and review the systems logs.
For a number of reasons, such as the case of forwarding logs to a central host, it may be important to include redundant system logging mechanisms on a systemd-based system. This is a irregular occurrence for the handbook's typical audience and considered an advanced use case. It is therefore not covered by the handbook.
Facultatif : daemon Cron
OpenRC
Ensuite viens le daemon cron. Bien que cela soit facultatif et pas nécessaire pour tous les systèmes, il est judicieux d'en installer un.
Un démon cron exécute des commandes programmées. Cela est très utile si certaines commandes doivent être exécutées régulièrement (à intervalle quotidienne, hebdomadaire ou mensuelle).
All cron daemons support high levels of granularity for scheduled tasks, and generally include the ability to send an email or other form of notification if a scheduled task does not complete as expected.
Gentoo offre plusieurs démons cron possibles, notamment sys-process/bcron, sys-process/dcron, sys-process/fcron, et sys-process/cronie. Installer l'un d'entre eux est similaire à l'installation d'un système de journalisation. L'exemple suivant utilise sys-process/cronie :
- sys-process/cronie - cronie is based on the original cron and has security and configuration enhancements like the ability to use PAM and SELinux.
- sys-process/dcron - This lightweight cron daemon aims to be simple and secure, with just enough features to stay useful.
- sys-process/fcron - A command scheduler with extended capabilities over cron and anacron.
- sys-process/bcron - A younger cron system designed with secure operations in mind. To do this, the system is divided into several separate programs, each responsible for a separate task, with strictly controlled communications between parts.
cronie
The following example uses sys-process/cronie:
root #
emerge --ask sys-process/cronie
Sur OpenRC :
root #
rc-update add cronie default
Sur systemd :
root #
systemctl enable cronie
root #
rc-update add cronie default
Alternative: dcron
root #
emerge --ask sys-process/dcron
Si dcron est utilisé, une commande d'initialisation supplémentaire doit être exécutée :
root #
crontab /etc/crontab
Alternative: fcron
root #
emerge --ask sys-process/fcron
If fcron is the selected scheduled task handler, an additional emerge step is required:
root #
emerge --config sys-process/fcron
Alternative: bcron
bcron is a younger cron agent with built-in privilege separation.
root #
emerge --ask sys-process/bcron
systemd
Similar to system logging, systemd-based systems include support for scheduled tasks out-of-the-box in the form of timers. systemd timers can run at a system-level or a user-level and include the same functionality that a traditional cron daemon would provide. Unless redundant capabilities are necessary, installing an additional task scheduler such as a cron daemon is generally unnecessary and can be safely skipped.
Facultatif : Indexation des fichiers
Pour indéxer le système de fichiers afin de fournir des fonctions de recherche plus rapides, installez sys-apps/mlocate.
root #
emerge --ask sys-apps/mlocate
Facultatif : Accès distant
opensshd's default configuration does not allow root to login as a remote user. Please create a non-root user and configure it appropriately to allow access post-installation if required, or adjust /etc/ssh/sshd_config to allow root.
Pour pouvoir accéder au système à distance après l'installation, sshd doit être configuré pour être lancé au démarrage.
OpenRC
Pour ajouter le script sshd au niveau d'exécution par défaut, sur OpenRC :
root #
rc-update add sshd default
Si l'accès à la console série est nécessaire (ce qui est possible dans le cas de serveurs distants), agetty doit être configuré.
Sur OpenRC, décommenter la section sur la console série dans /etc/inittab :
root #
nano -w /etc/inittab
# SERIAL CONSOLES s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100 s1:12345:respawn:/sbin/agetty 9600 ttyS1 vt100
systemd
Sur systemd :
root #
systemctl enable sshd
Sur systemd :
root #
systemctl enable getty@tty1.service
Optional: Shell completion
Bash
Bash is the default shell for Gentoo systems, and therefore installing completion extensions can aid in efficiency and convenience to managing the system. The app-shells/bash-completion package will install completions available for Gentoo specific commands, as well as many other common commands and utilities:
root #
emerge --ask app-shells/bash-completion
Post installation, bash completion for specific commands can managed through eselect. See the Shell completion integrations section of the bash article for more details.
Time synchronization
It is important to use some method of synchronizing the system clock. This is usually done via the NTP protocol and software. Other implementations using the NTP protocol exist, like Chrony.
Pour installer Chrony, par exemple :
root #
emerge --ask net-misc/chrony
OpenRC
Sur OpenRC :
root #
rc-update add chronyd default
systemd
Sur systemd :
root #
systemctl enable chronyd
Alternatively, systemd users may wish to use the simpler systemd-timesyncd SNTP client which is installed by default.
root #
systemctl enable systemd-timesyncd.service
Outils de systèmes de fichiers
En fonction des systèmes de fichiers utilisés, il est nécessaire d'installer les utilitaires de systèmes de fichiers requis (pour vérifier l'intégrité su système de fichiers, créer des systèmes de fichiers additionnels, etc.). Noter que les outils pour gérer les système de fichiers ext4 (sys-fs/e2fsprogs) sont déjà installé dans le cadre de l'ensemble @system.
Le tableau suivant liste les outils à installer si un certain système de fichiers est installé :
Système de fichiers | Paquet |
---|---|
Ext 4 | sys-fs/e2fsprogs |
XFS | sys-fs/xfsprogs |
ReiserFS | sys-fs/reiserfsprogs |
JFS | sys-fs/jfsutils |
VFAT (FAT32, ...) | sys-fs/dosfstools |
Btrfs | sys-fs/btrfs-progs |
ZFS | sys-fs/zfs |
It's recommended that sys-block/io-scheduler-udev-rules is installed for the correct scheduler behavior with e.g. nvme devices:
root #
emerge --ask sys-block/io-scheduler-udev-rules
Pour plus d'informations sur les systèmes de fichiers dans Gentoo, se réfrérer à l'article sur les systèmes de fichiers.
Outils de mise en réseau
Si il n'est pas nécessaire d'installer d'outils de mise en réseau supplémentaires, continuer immédiatement avec la section sur la Configuration d'un système d'amorçage
Installer un client DHCP
Bien que facultatif, la majorité des utilisateurs nécessitent un client DHCP pour se connecter au serveur DHCP de leur réseau. Profiter de cette opportunité pour installer un client DHCP. Ci cette étape est oubliée, le système peut alors être incapable de se connecter au réseau rendant ainsi impossible le téléchargement d'un client DHCP par la suite.
Pour que le système obtienne automatiquement une adresse IP pour un ou plusieurs interfaces réseau utilisant des scripts netifrc, il est nécessaire d'installer un client DHCP. Nous recommandons l'utilisation du paquet net-misc/dhcpcd même si de nombreux autres client DHCP sont disponibles dans le répertoire Gentoo :
root #
emerge --ask net-misc/dhcpcd
Facultatif : Installer un client PPPoE
SI PPP est utilisé pour se connecter à Internet, installer le paquet net-dialup/ppp :
root #
emerge --ask net-dialup/ppp
Facultatif : Installer des outils de réseau sans fil
Si le système doit se connecter à des réseaux sans fil, installez le paquet net-wireless/iw pour les réseaux Open ou WEP et/ou le paquet net-wireless/wpa_supplicant pour les réseaux WPA ou WPA2. . iw est également un outil de diagnostic utile pour scanner les réseaux sans fil.
root #
emerge --ask net-wireless/iw net-wireless/wpa_supplicant
Maintenant, continuer avec la Configuration du système d'amorçage