summaryrefslogtreecommitdiffstats
path: root/appliance/init
blob: 770e558515b727e8b3d25ca8638dccf71d6595b7 (plain)
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
#!/bin/sh

echo Starting /init script ...

PATH=/sbin:/usr/sbin:$PATH

mount -t tmpfs none /dev
mkdir /dev/pts /dev/shm /dev/mapper
# Must do each MAKEDEV individually, because if one device fails,
# MAKEDEV will quit without creating the rest (RHBZ#507374).
for dev in mem null port zero core full ram tty console fd \
  hda hdb hdc hdd sda sdb sdc sdd loop sd; do
  MAKEDEV $dev ||:
done
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

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 ||:

/sbin/ifconfig lo 127.0.0.1
/sbin/ifconfig eth0 10.0.2.10
/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