このページの目次
チェンジルートの準備を行う
次の記事からは、チェンジルート環境下で作業を進めていきます。 ここでは、チェンジルートに必要な準備作業を行います。
最初に、$MYLINUX以下にマウントポイントとデバイスファイルを作成します。 まずは、マウントポイントを作成します。
mkdir -vp $MYLINUX/devmkdir -vp $MYLINUX/proc mkdir -vp $MYLINUX/sys mkdir -vp $MYLINUX/run
mkdir -vp $MYLINUX/dev
mkdir -vp $MYLINUX/proc
mkdir -vp $MYLINUX/sys
mkdir -vp $MYLINUX/run




次に、デバイスファイルの作成を行います。
mknod -m 0600 $MYLINUX/dev/console c 5 1mknod -m 0666 $MYLINUX/dev/null c 1 3
mknod -m 0600 $MYLINUX/dev/console c 5 1
mknod -m 0666 $MYLINUX/dev/null c 1 3


チェンジルートするためには、新しいルートディレクトリ以下に必要最低限のディレクトリやファイルが存在していなくてはなりません。 上記の作業は、それらのディレクトリやファイルを作成する作業です。
シェルスクリプトの作成
最後に、チェンジルートを行うシェルスクリプトを作成します。
cat > /root/chroot.sh << "EOF"mount -v --bind /dev $MYLINUX/dev mount -vt devpts devpts $MYLINUX/dev/pts -o gid=5,mode=620 mount -vt proc proc $MYLINUX/proc mount -vt sysfs sysfs $MYLINUX/sys mount -vt tmpfs tmpfs $MYLINUX/run chroot $MYLINUX /tools/bin/env -i HOME=/root TERM=$TERM SKIPPS1=1 PS1='MYLINUX@\u:\w\$ ' PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin /tools/bin/bash --login +h #chroot $MYLINUX /usr/bin/env -i HOME=/root TERM=$TERM SKIPPS1=1 PS1='MYLINUX@\u:\w\$ ' PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/bash --login umount -v $MYLINUX/run umount -v $MYLINUX/sys umount -v $MYLINUX/proc umount -v $MYLINUX/dev/shm umount -v $MYLINUX/dev/pts umount -v $MYLINUX/dev EOF chmod 0755 /root/chroot.sh
cat > /root/chroot.sh << "EOF"
mount -v --bind /dev $MYLINUX/dev
mount -vt devpts devpts $MYLINUX/dev/pts -o gid=5,mode=620
mount -vt proc proc $MYLINUX/proc
mount -vt sysfs sysfs $MYLINUX/sys
mount -vt tmpfs tmpfs $MYLINUX/run

chroot $MYLINUX /tools/bin/env -i HOME=/root TERM=$TERM SKIPPS1=1 PS1='MYLINUX@\u:\w\$ ' PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin /tools/bin/bash --login +h
#chroot $MYLINUX /usr/bin/env -i HOME=/root TERM=$TERM SKIPPS1=1 PS1='MYLINUX@\u:\w\$ ' PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/bash --login

umount -v $MYLINUX/run
umount -v $MYLINUX/sys
umount -v $MYLINUX/proc
umount -v $MYLINUX/dev/shm
umount -v $MYLINUX/dev/pts
umount -v $MYLINUX/dev
EOF
chmod 0755 /root/chroot.sh


















上記のシェルスクリプトを実行することで、簡単にチェンジルート環境に入ることができます。





