Scroll to navigation

PIVOT_ROOT(8) Administration Système PIVOT_ROOT(8)

NOM

pivot_root - Changer le système de fichiers racine

SYNOPSIS

pivot_root new_root put_old

DESCRIPTION

pivot_root moves the root file system of the current process to the directory put_old and makes new_root the new root file system. Since pivot_root(8) simply calls pivot_root(2), we refer to the man page of the latter for further details.

Notez que, selon l’implémentation de la commande pivot_root, la racine et le répertoire de travail actuel du processus appelant peut changer tout comme il peut ne pas changer. Ce qui suit est un exemple d’appel à pivot_root qui fonctionne dans un cas comme dans l’autre, en supposant que pivot_root et chroot sont dans le chemin de recherche actuel (PATH) :

cd new_root
pivot_root . put_old
exec chroot . command

Notez que chroot doit être disponible dans l’ancienne racine et aussi dans la nouvelle car pivot_root pourrait ou non avoir changé implicitement le répertoire racine de l’interpréteur de commandes.

Notez que exec chroot change le processus actuel, ce qui s’avère être nécessaire si l’ancien répertoire racine est démonté par la suite. Par ailleurs sachez que l’entrée, la sortie et l’erreur standard peuvent encore pointer sur un périphérique de l’ancienne racine du système de fichiers, le conservant occupé. Elles peuvent être aisément modifiées en utilisant chroot (voir ci-dessous ; remarquez l’absence de barre oblique au début pour qu’il fonctionne si pivot_root a changé la racine de l’interpréteur de commandes ou pas.

OPTIONS

-h, --help

Afficher l’aide-mémoire puis quitter.

-V, --version

Afficher le numéro de version et quitter.

EXEMPLE

Changer la racine du système de fichiers vers /dev/hda1 depuis un interpréteur de commandes interactif :

mount /dev/hda1 /nouvelle_racine
cd /nouvelle_racine
pivot_root . ancienne_racine
exec chroot . sh <dev/console >dev/console 2>&1
umount /ancienne_racine

Monter le nouveau système de fichiers racine au-dessus de NFS depuis 0.0.0.1:/ma_racine et exécuter init :

ifconfig lo 127.0.0.1 up   # pour portmap
# configurer Ethernet ou autre
portmap   # pour lockd (lancé implicitement par mount)
mount -o ro 10.0.0.1:/ma_racine /mnt
killall portmap   # portmap conserve l'ancienne racine occupée
cd /mnt
pivot_root . ancienne_racine
exec chroot . sh -c 'umount /ancienne_racine; exec /sbin/init' \e

<dev/console >dev/console 2>&1

VOIR AUSSI

chroot(1), pivot_root(2), mount(8), switch_root(8), umount(8)

SIGNALER DES BOGUES

Pour signaler un bogue, utilisez le gestionnaire de bogues sur <https://github.com/util-linux/util-linux/issues>.

DISPONIBILITÉ

La commande pivot_root fait partie du paquet util-linux, elle est disponible sur l’archive du noyau Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.

2024-12-06 util-linux 2.40.2