Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 |
#!bin/bash mount /dev/sdc3 /mnt/gentoo/ mount -t proc none /mnt/gentoo/proc mount -o bind /dev /mnt/gentoo/dev chroot /mnt/gentoo /bin/bash env-update && source /etc/profile export PS1="(chroot_gentoo) $PS1" ##sh /home/update_script |
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Michigen« (15.07.2010, 22:19)
Quellcode |
|
1 |
chroot /mnt/gentoo /bin/bash |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#!bin/bash mount /dev/sdc3 /mnt/gentoo/ mount -t proc none /mnt/gentoo/proc mount -o bind /dev /mnt/gentoo/dev chroot /mnt/gentoo /bin/bash <<EOF #### Wird im chroot ausgeführt env-update && source /etc/profile #export PS1="(chroot_gentoo) $PS1" # braucht Du nicht, weil nicht interaktiv emerge -uDN world exit #### Chroot Ende EOF umount /mnt/gentoo/dev umount /mnt/gentoo/proc |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 |
#!bin/bash mount /dev/sdc3 /mnt/gentoo/ mount -t proc none /mnt/gentoo/proc mount -o bind /dev /mnt/gentoo/dev cp /tools/update_script.sh /mnt/gentoo/tmp chroot /mnt/gentoo /bin/bash /tmp/update_script.sh rm /mnt/gentoo/tmp/update_script.sh umount /mnt/gentoo/dev umount /mnt/gentoo/proc |
Quellcode |
|
1 2 3 4 5 6 |
if [ -d $CHROOTDIR ]; then mount /dev/$1 $CHROOTDIR mount -t proc proc $CHROOTDIR/proc mount -o bind /dev $CHROOTDIR/dev cp -L /etc/resolv.conf $CHROOTDIR/etc/resolv.conf chroot $CHROOTDIR /bin/bash |
Mit "<<EOF" "env-update" "EOF" klappt das gerade nicht.
genau so soll es und am Anfang sollen die "env-update" "sh /home/update_script" Befehle gleich übergeben werden.Zitat von »bell«
Interaktiv heißt eigentlich nur, dass Du auf "emerge -a " (o.ä.) reagieren kannst.
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
#!/bin/bashsh ###################################################################################### #Hier ein Kleines Script um sich die einzelnen Schritte für Chroot zu ersparen. # # # #Das Script erwartet den Scriptnamen und als Argument das Device in das 'gechrooted' # #werden soll, ohne ein führendes '/dev/'. # #Zum Beispiel: # # # #chroot.sh sda8 # # # #um ein Chroot in die Partition /dev/sda8 durchzuführen. Nachdem die Arbeiten in der # #Chroot-Umgebung erledigt sind, verlässt man sie wieder mit dem Befehl "exit". # #Das Script hängt danach die Mountpunkte wieder aus. # ###################################################################################### CHROOTDIR=/mnt/chroot # Make sure only root can run our script if [ $EUID -ne 0 ]; then echo "This script must be run as root" 1>&2 exit 1 fi # Make sure that $1 is not empty if [ ! -n "$1" ]; then echo -e "\033[1;33mYou must give an argument which device you want to chroot in (without leading '/dev/') " echo -e "\033[1;33mExample '$0 sda8' will chroot the device /dev/sda8 into /mnt/chroot." exit 1 fi # Make sure that directory '/mnt/chroot' exists if [ ! -d $CHROOTDIR ]; then echo Error: No directory $CHROOTDIR existing. Creating it... !! >&2 mkdir -p $CHROOTDIR fi if [ -d $CHROOTDIR ]; then echo Created directory $CHROOTDIR successfully... >&2 echo Now chrooting into /dev/$1 ... >&2 fi if [ -d $CHROOTDIR ]; then mount /dev/$1 $CHROOTDIR mount -t proc proc $CHROOTDIR/proc mount -o bind /dev $CHROOTDIR/dev cp -L /etc/resolv.conf $CHROOTDIR/etc/resolv.conf chroot $CHROOTDIR /bin/bash <<EOF env-update && source /etc/profile sh /home/update_script EOF fi echo unmounting the devices from the chroot directory ... >&2 if [ -d $CHROOTDIR ]; then umount $CHROOTDIR/proc umount $CHROOTDIR/dev umount $CHROOTDIR fi echo deleting chroot directory $CHROOTDIR ... >&2 rmdir $CHROOTDIR if [ ! -d $CHROOTDIR ]; then echo $CHROOTDIR deleted successfully. Good bye !! >&2 |