Linux

無法創建最小的 chroot 監獄

  • November 5, 2013

試圖創建一個最小的chroot監獄。

遵循的步驟是:

  1. 創建了一個文件夾chroot
  2. 將 bash 複製到文件夾chroot
  3. 執行ldd bash以了解依賴項
ldd /bin/bash   linux-vdso.so.1 =>  (0x00007fff645e2000)
   libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f9155f75000)
   libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f9155d71000)
   libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f91559e6000)
   /lib64/ld-linux-x86-64.so.2 (0x00007f91561bb000)
  1. 然後我創建了像這樣的文件夾
ls chroot/

bash  lib  lib64

ls chroot/lib

x86_64-linux-gnu
  1. 當我跑
chroot chroot/

chroot: failed to run command `/bin/bash': No such file or directory

正如錯誤消息所說,chroot嘗試執行chroot/bin/bash/bin/bash內部chroot),但它無法執行它,因為您bashchroot//內部chroot)中。因此解決方案是將你的 bash 放到chroot/bin/.

引用自:https://unix.stackexchange.com/questions/98909