2015年3月31日火曜日

rm -rf が怖かったので chroot した

Linux ベースのファイルサーバでいらなくなったディレクトリを削除しようかと思ったけどうっかり必要なデータまで消してしまうのが怖かったので、チキンな私は chroot した。

以前、データを移行したディレクトリは .migrated に移してあった。
 
# mkdir .migrated
# mv hoge fuga .migrated

なので .migrated/ に chroot する。
 
# cd .migarated
# ldd /bin/bash
        linux-vdso.so.1 =>  (0x00007fff36fff000)
        libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00000037d1a00000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00000037c7600000)
        libc.so.6 => /lib64/libc.so.6 (0x00000037c7200000)
        /lib64/ld-linux-x86-64.so.2 (0x00000037c6e00000)

# ldd /bin/rm
        linux-vdso.so.1 =>  (0x00007fffbf1ff000)
        libc.so.6 => /lib64/libc.so.6 (0x00000037c7200000)
        /lib64/ld-linux-x86-64.so.2 (0x00000037c6e00000)

# mkdir bin lib64
# cp /lib64/libtinfo.so.5 /lib64/libdl.so.2 /lib64/libc.so.6 \
        /lib64/ld-linux-x86-64.so.2 lib/
# cp /bin/bash /bin/rm bin/ 
# chroot . 
 
# echo * 
bin fuga hoge lib64  
 
# pwd 
/
 
# bin/rm -rf hoge/ fuga/
# exit