PIVOT_ROOT(8) إدارة النظام PIVOT_ROOT(8)

الاسم

pivot_root - غيّر نظام ملفات الجذر

موجز

pivot_root new_root put_old

الوصف

ينقل pivot_root نظام ملفات الجذر للعملية الحالية إلى الدليل put_old ويجعل new_root نظام ملفات الجذر الجديد. ولأن pivot_root(8) يستدعي ببساطة pivot_root(2)، يُرجى الرجوع لصفحة الدليل الخاصة بالأخير لمزيد من التفاصيل.

لاحظ أنه، اعتمادًا على تنفيذ pivot_root، قد يتغير جذر ودليل العمل الحالي لـ المستدعِي أو قد لا يتغيران. فيما يلي تسلسل لاستدعاء pivot_root يعمل في كلتا الحالتين، بافتراض أن pivot_root و chroot موجودان في مسار الـ PATH الحالي:

cd new_root
pivot_root . put_old
exec chroot . command

لاحظ أن chroot يجب أن يكون متاحًا تحت الجذر القديم والجذر الجديد، لأن pivot_root قد يغير أو لا يغير دليل الجذر الخاص بـ الصدفة بشكل ضمني.

لاحظ أن exec chroot يغير الملف التنفيذي الجاري تشغيله، وهو أمر ضروري إذا كان من المفترض فصل دليل الجذر القديم لاحقًا. لاحظ أيضًا أن المدخلات والمخرجات والأخطاء القياسية قد تظل تشير إلى جهاز في نظام ملفات الجذر القديم، مما يجعله مشغولاً. يمكن تغييرها بسهولة عند استدعاء chroot (انظر أدناه؛ لاحظ عدم وجود شرطات مائلة بادئة ليعمل الأمر سواء غيّر pivot_root جذر الصدفة أم لا).

الخيارات

-h، --help

اعرض نص المساعدة ثم اخرج.

-V، --version

اعرض الإصدار واخرج.

مثال

غيّر نظام ملفات الجذر إلى /dev/hda1 من صدفة تفاعلية:

mount /dev/hda1 /new-root
cd /new-root
pivot_root . old-root
exec chroot . sh <dev/console >dev/console 2>&1
umount /old-root

صِل نظام ملفات الجذر الجديد عبر NFS من 10.0.0.1:/my_root وشغّل init:

ifconfig lo 127.0.0.1 up   # for portmap
# اضبط Ethernet أو ما شابه
portmap   # لـ lockd (يُبدأ ضمناً بواسطة الوصل)
mount -o ro 10.0.0.1:/my_root /mnt
killall portmap   # portmap يبقي الجذر القديم مشغولاً
cd /mnt
pivot_root . old_root
exec chroot . sh -c 'umount /old_root; exec /sbin/init' \
  <dev/console >dev/console 2>&1

انظر أيضاً

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

التبليغ عن الأخطاء

لتقارير العِلل، استخدم مُتتبع المشكلات https://github.com/util-linux/util-linux/issues.

التوفر

الأمر pivot_root جزء من حزمة util-linux التي يمكن تنزيلها من أرشيف نواة لينكس https://www.kernel.org/pub/linux/utils/util-linux/.

2026-05-18 util-linux 2.42.1