dhcpcd est une implémentation du client DHCP spécifié dans RFC2131. Un client DHCP sert à connecter votre ordinateur à un réseau qui utilise DHCP pour affecter les adresses réseau. dhcpcd vise à être un client très complet mais toujours très léger.
This package is known to build and work properly using an LFS-11.2 platform.
Téléchargement (HTTP) : https://roy.marples.name/downloads/dhcpcd/dhcpcd-9.4.1.tar.xz
Somme de contrôle MD5 : 2b2f46648bc96979f96127f0e0e07d9b
Taille du téléchargement : 251 Ko
Estimation de l'espace disque requis : 3.6 Mo (avec les tests)
Estimation du temps de construction : moins de 0.1 SBU (avec les tests)
LLVM-14.0.6 (avec Clang), ntp-4.2.8p15, chronyd et ypbind
Notes utilisateur : https://wiki.linuxfromscratch.org/blfs/wiki/dhcpcd
Les versions récentes de dhcpcd
implémentent la séparation de privilèges. Des étapes d'installation
supplémentaires sont nécessaires pour configurer l'environnement
approprié, elles sont effectuées en exécutant les commandes
suivantes en tant qu'utilisateur root
:
install -v -m700 -d /var/lib/dhcpcd && groupadd -g 52 dhcpcd && useradd -c 'dhcpcd PrivSep' \ -d /var/lib/dhcpcd \ -g dhcpcd \ -s /bin/false \ -u 52 dhcpcd && chown -v dhcpcd:dhcpcd /var/lib/dhcpcd
Corrigez un problème à l'exécution causé par un changement dans glibc-2.36 :
sed '/Deny everything else/i SECCOMP_ALLOW(__NR_getrandom),' \ -i src/privsep-linux.c
Installez dhcpcd en exécutant les commandes suivantes :
./configure --prefix=/usr \ --sysconfdir=/etc \ --libexecdir=/usr/lib/dhcpcd \ --dbdir=/var/lib/dhcpcd \ --runstatedir=/run \ --privsepuser=dhcpcd && make
Pour tester les résultats lancez : make test.
Maintenant, en tant qu'utilisateur root
:
make install
--libexecdir=/usr/lib/dhcpcd
:
indique un emplacement plus correct pour les bibliothèques internes
à dhcpcd.
--dbdir=/var/lib/dhcp
: le
répertoire par défaut /var/db
n'est
pas compatible FHS
--runstatedir=/run
:
le répertoire par défaut /var/run
est
un lien symbolique vers /run
.
--with-hook=...
: Vous pouvez
éventuellement installer plus de crochets, par exemple pour
installer quelques fichiers de configuration comme ntp.conf
. L'ensemble des crochets est dans le
répertoire dhcpcd-hooks
dans l'arbre
de construction.
Si vous voulez configurer vos interfaces réseau pour utiliser
dhcpcd au
démarrage, vous devrez installer l'unité systemd incluse dans le
paquet blfs-systemd-units-20220720 en
lançant la commande suivante en tant qu'utilisateur root
:
make install-dhcpcd
Le
comportement par défaut de dhcpcd est de régler le nom
de l'hôte et les paramètres du MTU. Il écrase aussi
/etc/resolv.conf
et /etc/ntp.conf
. Ces modifications des fichiers
de système et des paramétrages des fichiers de configuration
système sont faites par les scripts conservés dans /lib/dhcpcd/dhcpcd-hooks
. Paramétrez
dhcpcd en
supprimant ou en ajoutant des scripts dans ce répertoire. Vous
pouvez désactiver l'exécution des scripts en utilisant l'option
--nohook
(-C
) de la ligne de commande ou via l'option
nohook
du fichier /etc/dhcpcd.conf
.
Assurez-vous de désactiver le service systemd-networkd ou configurez-le pour ne pas gérer vos interfaces si vous souhaitez les gérer avec dhcpcd.
À ce stade, vous pouvez tester si dhcpcd se comporte correctement
en exécutant la commande suivante en tant qu'utilisateur
root
:
systemctl start dhcpcd@eth0
Pour démarrer dhcpcd sur une interface
particulière au démarrage, activez l'unité systemd précédemment
installée en lançant la commande suivante en tant qu'utilisateur
root
:
systemctl enable dhcpcd@eth0
Remplacez eth0
par le
vrai nom de votre interface.
Last updated on