Automatiza o chroot no sistema quebrado

4

Toda vez que você tem que montar um sistema com um live-boot-CD e chroot no sistema para reparar o grub, você tem que digitar tantas linhas para montar na partição correta:

fdisk -l

encontre a partição correta, por exemplo /dev/sda1

mount /dev/sda1 /mnt/
mount -t proc none /mnt/proc
mount -o bind /dev /mnt/dev
mount -t sysfs sys /mnt/sys
chroot /mnt/

Existe uma maneira de otimizar isso com um único script?

    
por rubo77 23.09.2014 / 19:39

1 resposta

4

Copie este script como mount-root no seu dispositivo usb

#!/bin/bash
if [ "$(whoami &2>/dev/null)" != "root" ] && [ "$(id -un &2>/dev/null)" != "root" ] ; then
 echo "You must be root to run this script!"; echo "use 'sudo !!'"; exit 1
fi


if [ $# -ne 2 ]; then
 echo "calling this script with only two options with the device and mountpoint"
 echo "for example"
 echo "mount-root /dev/sda1 /media/other/"
 set -x
 fdisk -l
 lsblk -f
 exit
fi

D=$(echo $1 | sed 's:/$::')
M=$(echo $2 | sed 's:/$::')

echo mounting $D to $M

mkdir -p $M

mount $D $M
mount -t proc none $M/proc
mount -o bind /dev $M/dev
mount -t sysfs sys $M/sys
mount --bind /dev/pts $M/dev/pts
cp /proc/mounts $M/etc/mtab
chroot $M/ /bin/bash

fonte: link

    
por 23.09.2014 / 20:34

Tags