无法创建最小的 chroot 监狱

无法创建最小的 chroot 监狱

试图建立一个最小的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)
    
  4. 然后我创建了类似的文件夹

    ls chroot/
    
    bash  lib  lib64
    
    ls chroot/lib
    
    x86_64-linux-gnu
    
  5. 当我跑步时

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

答案1

正如错误消息所示,chroot尝试运行chroot/bin/bash/bin/bashinside chroot),但它无法运行它,因为你bashchroot//inside chroot)中。因此,解决方案是将 bash 放到chroot/bin/.

相关内容