Перейти к главному содержимому

Подготовка chroot

Подготовка и запуск chroot

#!/bin/bash

target=/mnt/disk
source=/dev/sda2
#src_boot=/dev/sda1
#dst_boot=$target/boot/efi

echo "** mount disk..."
mkdir -p $target
mount $source $target

if [[ -v "${src_boot}" ]]; then
  echo "** mount boot..."
  mount ${src_boot} ${dst_boot}
fi

mount -t proc /proc $target/proc
mount -t sysfs /sys $target/sys
mount -o bind  /dev $target/dev
mount tmpfs $target/var/log -t tmpfs -o rw,noatime,nodiratime
mount tmpfs $target/tmp     -t tmpfs -o rw,nodev,nosuid,noatime,nodiratime
mount tmpfs $target/run     -t tmpfs -o rw,nodev,nosuid,noatime,nodiratime

echo "** ready to chroot to $target"

read -p "Run chroot (y/n)? " -n 1 -r
echo    # (optional) move to a new line
if [[ $REPLY =~ ^[Yy]$ ]]
then
    # do dangerous stuff
    chroot $target
fi

Размонтирование после выхода из chroot

#!/bin/sh

target=/mnt/disk
#dst_boot=$target/boot/efi

umount $target/var/log
umount $target/tmp
umount $target/run

umount $target/dev
umount $target/sys
umount $target/proc

if [[ -v "${src_boot}" ]]; then
  echo "** umount boot..."
  umount -R ${dst_boot}
fi

echo "** umount $target..."
umount -R $target