123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- #!/bin/sh
- #
- # chkconfig: 345 90 90
- # description: Executes Qubes core scripts at NetVM boot
- #
- # Source function library.
- . /etc/rc.d/init.d/functions
- start()
- {
- if ! [ -x /usr/bin/xenstore-read ] ; then
- echo "ERROR: /usr/bin/xenstore-read not found!"
- exit 1
- fi
- type=$(/usr/bin/xenstore-read qubes_vm_type)
- if [ "$type" == "NetVM" ]; then
- /usr/lib/qubes/network-manager-prepare-conf-dir
- /sbin/service NetworkManager start
- fi
- echo -n $"Executing Qubes Core scripts NetVM:"
- # Setup gateway for all the VMs this netVM is serviceing...
- network=$(/usr/bin/xenstore-read qubes_netvm_network 2>/dev/null)
- if [ "x$network" != "x" ]; then
- gateway=$(/usr/bin/xenstore-read qubes_netvm_gateway)
- netmask=$(/usr/bin/xenstore-read qubes_netvm_netmask)
- secondary_dns=$(/usr/bin/xenstore-read qubes_netvm_secondary_dns)
- modprobe netbk 2> /dev/null || modprobe xen-netback
- echo "NS1=$gateway" > /var/run/qubes/qubes_ns
- echo "NS2=$secondary_dns" >> /var/run/qubes/qubes_ns
- /usr/lib/qubes/qubes_setup_dnat_to_ns
- echo "1" > /proc/sys/net/ipv4/ip_forward
- fi
-
- success
- echo ""
- return 0
- }
- stop()
- {
- return 0
- }
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- *)
- echo $"Usage: $0 {start|stop}"
- exit 3
- ;;
- esac
- exit $RETVAL
|