]> git.ipfire.org Git - thirdparty/dracut.git/blame - test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh
TEST-70-BONDBRIDGETEAMVLAN: load vlan kernel modules
[thirdparty/dracut.git] / test / TEST-70-BONDBRIDGETEAMVLAN / server-init.sh
CommitLineData
4e669086
HH
1#!/bin/sh
2exec </dev/console >/dev/console 2>&1
3set -x
4export PATH=/sbin:/bin:/usr/sbin:/usr/bin
5export TERM=linux
6export PS1='nfstest-server:\w\$ '
7stty sane
8echo "made it to the rootfs!"
9echo server > /proc/sys/kernel/hostname
10
11wait_for_if_link() {
12 local cnt=0
13 local li
14 while [ $cnt -lt 600 ]; do
15 li=$(ip -o link show dev $1 2>/dev/null)
16 [ -n "$li" ] && return 0
17 sleep 0.1
18 cnt=$(($cnt+1))
19 done
20 return 1
21}
22
23wait_for_if_up() {
24 local cnt=0
25 local li
26 while [ $cnt -lt 200 ]; do
27 li=$(ip -o link show up dev $1)
28 [ -n "$li" ] && return 0
29 sleep 0.1
30 cnt=$(($cnt+1))
31 done
32 return 1
33}
34
35wait_for_route_ok() {
36 local cnt=0
37 while [ $cnt -lt 200 ]; do
38 li=$(ip route show)
39 [ -n "$li" ] && [ -z "${li##*$1*}" ] && return 0
40 sleep 0.1
41 cnt=$(($cnt+1))
42 done
43 return 1
44}
45
46linkup() {
47 wait_for_if_link $1 2>/dev/null\
48 && ip link set $1 up 2>/dev/null\
49 && wait_for_if_up $1 2>/dev/null
50}
51
94cc856c 52modprobe --all -b -q 8021q ipvlan macvlan
4e669086
HH
53>/dev/watchdog
54ip addr add 127.0.0.1/8 dev lo
55linkup lo
56ip link set dev eth0 name ens3
57ip addr add 192.168.50.1/24 dev ens3
58linkup ens3
59>/dev/watchdog
60ip link set dev eth1 name ens4
61ip link add dev ens4.1 link ens4 type vlan id 1
62ip link add dev ens4.2 link ens4 type vlan id 2
63ip link add dev ens4.3 link ens4 type vlan id 3
64ip link add dev ens4.4 link ens4 type vlan id 4
65ip addr add 192.168.54.1/24 dev ens4.1
66ip addr add 192.168.55.1/24 dev ens4.2
67ip addr add 192.168.56.1/24 dev ens4.3
68ip addr add 192.168.57.1/24 dev ens4.4
69linkup ens4
6058b06b
HH
70ip link set dev ens4.1 up
71ip link set dev ens4.2 up
72ip link set dev ens4.3 up
73ip link set dev ens4.4 up
4e669086
HH
74ip link set dev eth2 name ens5
75ip addr add 192.168.51.1/24 dev ens5
76linkup ens5
77ip link set dev eth3 name ens6
78linkup ens6
79>/dev/watchdog
80modprobe af_packet
81> /dev/watchdog
82modprobe sunrpc
83>/dev/watchdog
84mount -t rpc_pipefs sunrpc /var/lib/nfs/rpc_pipefs
85>/dev/watchdog
86[ -x /sbin/portmap ] && portmap
87>/dev/watchdog
f3f37f3c 88mkdir -p /run/rpcbind
4e669086
HH
89[ -x /sbin/rpcbind ] && rpcbind
90>/dev/watchdog
91modprobe nfsd
92>/dev/watchdog
93mount -t nfsd nfsd /proc/fs/nfsd
94>/dev/watchdog
95exportfs -r
96>/dev/watchdog
97rpc.nfsd
98>/dev/watchdog
99rpc.mountd
100>/dev/watchdog
101rpc.idmapd
102>/dev/watchdog
103exportfs -r
104>/dev/watchdog
105>/var/lib/dhcpd/dhcpd.leases
106>/dev/watchdog
107chmod 777 /var/lib/dhcpd/dhcpd.leases
108>/dev/watchdog
109dhcpd -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases ens3 ens5
110#echo -n 'V' > /dev/watchdog
111#sh -i
112#tcpdump -i ens3
113# Wait forever for the VM to die
114echo "Serving NFS mounts"
115while :; do
116 sleep 10
117 >/dev/watchdog
118done
119mount -n -o remount,ro /
120poweroff -f