Browse Source

scripts: add start_libvirt.sh

master
cinnaboot 3 years ago
parent
commit
09f193648c
  1. 49
      bin/start_libvirt.sh
  2. 1
      sync.sh

49
bin/start_libvirt.sh

@ -0,0 +1,49 @@
#!/usr/bin/sh
# start libvirtd systemd service, and cleanup on exit
VIRSH_CMD="virsh -c qemu:///system"
NET_NAME="default"
LIBVIRT_CIDR=192.168.122.0/24
if [ $UID -ne 0 ]; then
echo "must run as root"
exit 1
fi
start_libvirt() {
systemctl start libvirtd
if [ "$($VIRSH_CMD net-list --inactive --name)" = $NET_NAME ]; then
$VIRSH_CMD net-start $NET_NAME
fi
# allow DNS for libvirt
iptables -A INPUT -d $LIBVIRT_CIDR -p udp -m udp --dport 53 -j ACCEPT
iptables -A OUTPUT -s $LIBVIRT_CIDR -p udp -m udp --sport 53 -j ACCEPT
# allow SSH for libvirt
iptables -A INPUT -d $LIBVIRT_CIDR -p tcp -m tcp --sport 22 -j ACCEPT
iptables -A OUTPUT -s $LIBVIRT_CIDR -p tcp -m tcp --dport 22 -j ACCEPT
}
cleanup () {
echo "exiting"
$VIRSH_CMD net-destroy $NET_NAME
systemctl stop libvirtd.socket
systemctl stop libvirtd
# reset default nftables
nft -f /etc/nftables.conf
}
# call cleanup function on exit signal
trap cleanup EXIT
start_libvirt
echo "waiting for ctrl-c to cleanup"
while true
do
sleep 1
done

1
sync.sh

@ -39,6 +39,7 @@ SCRIPTS="
$HOME/bin/kill_at_spi2.sh \ $HOME/bin/kill_at_spi2.sh \
$HOME/bin/monitors_off.sh \ $HOME/bin/monitors_off.sh \
$HOME/bin/pacman_notify.sh \ $HOME/bin/pacman_notify.sh \
$HOME/bin/start_libvirt.sh \
$HOME/bin/wmresize.sh \ $HOME/bin/wmresize.sh \
" "

Loading…
Cancel
Save