Scroll to navigation

PIVOT_ROOT(8) Administracja systemem PIVOT_ROOT(8)

NAZWA

pivot_root - zmienia główny katalog (korzeń) systemu plików

SKŁADNIA

pivot_root nowy-katalog-główny miejsce-na-stary

OPIS

pivot_root przesuwa główny katalog systemu plików bieżącego procesu do katalogu miejsce-na-stary i czyni nowy-katalog-główny nowym katalogiem głównym systemu plików. Ponieważ pivot_root(8) jedynie wywołuje pivot_root(2), podręcznik systemowy tego ostatniego opisuje więcej szczegółów.

Proszę zauważyć, że w zależności od implementacji pivot_root, katalog główny i bieżący katalog roboczy wywołującego może, ale nie musi ulec zmianie. Poniższa sekwencja wywołania pivot_root zadziała w obu przypadkach, zakładając że pivot_root i chroot znajdują się w bieżącej PATH:

cd nowy-katalog-główny
pivot_root . miejsce-na-stary
exec chroot . polecenie

Proszę zauważyć, że chroot musi być dostępne w starym katalogu głównym oraz w nowym katalogu głównym, ponieważ pivot_root mógł, lecz nie musiał, niejawnie zmienić katalog główny powłoki.

Proszę zauważyć, że exec chroot zmienia działający plik wykonywalny, co jest konieczne, jeśli stary katalog główny ma być później odmontowany. Proszę również zwrócić uwagę, że standardowe wejście, wyjście oraz wyjście błędów mogą wciąż wskazywać na urządzenie w starym katalogu głównym systemu plików, czyniąc go zajętym. Można to łatwo zmienić przy wywołaniu chroot (zob. niżej; proszę zauważyć brak początkowych ukośników, co umożliwia działania niezależnie od tego, czy pivot_root zmieniło katalog główny powłoki, czy też nie).

OPCJE

-h, --help

Wyświetla ten tekst i wychodzi.

-V, --version

Wyświetla wersję i wychodzi.

PRZYKŁAD

Zmienia katalog główny systemu plików na /dev/hda1 z powłoki interaktywnej:

mount /dev/hda1 /nowy-katalog-główny
cd /nowy-katalog-główny
pivot_root . stary-katalog-główny
exec chroot . sh <dev/console >dev/console 2>&1
umount /stary-katalog-główny

Montuje nowy katalog główny systemu plików za pośrednictwem NFS z 10.0.0.1:/moj-katalog-glowny i uruchamia init:

ifconfig lo 127.0.0.1 up   # dla portmap
# konfiguruje Ethernet itp.
portmap   # dla lockd (jawnie uruchomiony przez mount)
mount -o ro 10.0.0.1:/moj-katalog-glowny /mnt
killall portmap   # portmap utrzymuje zajętość starego k. gł.
cd /mnt
pivot_root . stary-katalog-glowny
exec chroot . sh -c 'umount /stary-katalog-glowny; exec /sbin/init' \

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

ZOBACZ TAKŻE

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

ZGŁASZANIE BŁĘDÓW

Problemy należy zgłaszać w systemie śledzenia błędów <https://github.com/util-linux/util-linux/issues>.

DOSTĘPNOŚĆ

Polecenie pivot_root jest częścią pakietu util-linux, który można pobrać ze strony Archiwum jądra Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.

2025-09-24 util-linux 2.41.2