-
Notifications
You must be signed in to change notification settings - Fork 3
/
utility-kvm-enable
executable file
·149 lines (104 loc) · 2.79 KB
/
utility-kvm-enable
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
#!/bin/bash
# dependencies /////////////////////////////////////////////////////////////////
if [ -f "${HOME}"/.local/bin/frobulator ]
then
rm -r -f "${HOME}"/.local/bin/frobulator
fi
if [[ -z $(command -v frobulator) ]]
then
if [[ $(id -u -n) = "root" ]]
then
SUDO_HOME=/root
USER="${SUDO_USER}"
HOME=/home/"${USER}"
fi
if [[ -z $(command -v curl) ]]
then
yes | apt-get install curl
fi
if [ ! -d "${HOME}"/.local/bin ]
then
mkdir -p "${HOME}"/.local/bin
fi
curl -s -L get.frbltr.app > "${HOME}"/.local/bin/frobulator
chmod +x "${HOME}"/.local/bin/frobulator
fi
. "${HOME}"/.local/bin/frobulator
# superuser ////////////////////////////////////////////////////////////////////
frobulator.escalate
# script ///////////////////////////////////////////////////////////////////////
script=$(basename -- "${BASH_SOURCE[0]}")
# version //////////////////////////////////////////////////////////////////////
version="11-30-2023"
# usage ////////////////////////////////////////////////////////////////////////
# variables ////////////////////////////////////////////////////////////////////
stamp=$(date +"%m-%d-%Y-%H-%M-%S")
# defaults /////////////////////////////////////////////////////////////////////
list=(
aqemu
guestfs-tools
libosinfo-bin
libvirt-daemon-system
ovmf
qemu-system-x86
qemu-utils
swtpm
tuned
tuned-utils
virt-manager
virt-viewer
virtinst
)
frobulator.install ${list[@]}
list=()
sudo systemctl enable libvirtd.service
sudo virt-host-validate qemu
sudo systemctl enable tuned
sudo tuned-adm active
sudo tuned-adm profile virtual-host
sudo nmcli device status
sudo nmcli \
connection add type bridge \
con-name bridge0 \
ifname bridge0
sudo nmcli \
connection add type ethernet \
slave-type bridge \
con-name 'Bridge Connection' \
ifname enp2s0 \
master bridge0
sudo nmcli \
connection up bridge0
sudo nmcli \
connection modify bridge0 \
connection.autoconnect-slaves 1
sudo nmcli \
connection up bridge0
sudo nmcli \
device status
cat > /tmp/bridge << 'FILE'
<network>
<name>bridge</name>
<forward mode='bridge'/>
<bridge name='bridge0'/>
</network>
FILE
sudo virsh net-define /tmp/bridge
sudo virsh net-start bridge
sudo virsh net-autostart bridge
sudo rm \
--recursive \
--force /tmp/bridge
sudo usermod \
--append \
--groups libvirt \
"${USER}"
echo "export LIBVIRT_DEFAULT_URI='qemu:///system'" >> /home/"${USER}"/.bashrc
sudo setfacl \
--recursive \
--remove-all /var/lib/libvirt/images
sudo setfacl \
--recursive \
--modify u:"${USER}":rwX /var/lib/libvirt/images
sudo setfacl \
--modify d:u:"${USER}":rwx /var/lib/libvirt/images