git.annexia.org
/
libguestfs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add guestfs_rescue=1 appliance option to start a rescue shell.
[libguestfs.git]
/
appliance
/
make-initramfs.sh.in
diff --git
a/appliance/make-initramfs.sh.in
b/appliance/make-initramfs.sh.in
index
248f2e2
..
b39b13d
100755
(executable)
--- a/
appliance/make-initramfs.sh.in
+++ b/
appliance/make-initramfs.sh.in
@@
-95,6
+95,12
@@
rm -f $koutput
-a ! -name 'crc_itu_t.ko' \
-a ! -name 'nls_utf8.ko' \
-a ! -name 'dm-*.ko' \
-a ! -name 'crc_itu_t.ko' \
-a ! -name 'nls_utf8.ko' \
-a ! -name 'dm-*.ko' \
+ -a ! -name 'cramfs.ko' \
+ -a ! -name 'squashfs.ko' \
+ -a ! -name 'hfsplus.ko' \
+ -a ! -name 'ufs.ko' \
+ -a ! -name 'exportfs.ko' \
+ -a ! -name 'xfs.ko' \
-a -print0 ) |
xargs -0 @FEBOOTSTRAP_RUN@ initramfs -- rm
-a -print0 ) |
xargs -0 @FEBOOTSTRAP_RUN@ initramfs -- rm
@@
-129,11
+135,19
@@
cat > init.new <<'__EOF__'
#!/bin/sh
echo Starting /init script ...
PATH=/sbin:/usr/sbin:$PATH
#!/bin/sh
echo Starting /init script ...
PATH=/sbin:/usr/sbin:$PATH
+mount -t tmpfs none /dev
+mkdir /dev/pts /dev/shm /dev/mapper
MAKEDEV mem null port zero core full ram tty console fd \
hda hdb hdc hdd sda sdb sdc sdd loop sd
MAKEDEV mem null port zero core full ram tty console fd \
hda hdb hdc hdd sda sdb sdc sdd loop sd
+mknod /dev/ptmx c 5 2; chmod 0666 /dev/ptmx
+mknod /dev/random c 1 8; chmod 0666 /dev/random
+mknod /dev/urandom c 1 9; chmod 0444 /dev/urandom
mount -t proc /proc /proc
mount -t sysfs /sys /sys
mount -t devpts -o gid=5,mode=620 /dev/pts /dev/pts
mount -t proc /proc /proc
mount -t sysfs /sys /sys
mount -t devpts -o gid=5,mode=620 /dev/pts /dev/pts
+ln -sf /proc/self/fd/0 /dev/stdin
+ln -sf /proc/self/fd/1 /dev/stdout
+ln -sf /proc/self/fd/2 /dev/stderr
modprobe virtio_pci
modprobe virtio_net
modprobe dm_mod ||:
modprobe virtio_pci
modprobe virtio_net
modprobe dm_mod ||:
@@
-142,6
+156,9
@@
modprobe dm_mod ||:
/sbin/route add default gw 10.0.2.2
lvm vgscan --ignorelockingfailure
lvm vgchange -ay --ignorelockingfailure
/sbin/route add default gw 10.0.2.2
lvm vgscan --ignorelockingfailure
lvm vgchange -ay --ignorelockingfailure
+if grep -sq guestfs_rescue=1 /proc/cmdline; then
+ bash -i
+fi
exec guestfsd -f
__EOF__
exec guestfsd -f
__EOF__