blob: 1a1fe5acfeba4af54884ec1df75cb3f61e69739c (
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
#!/bin/sh
help() {
cat << EOF
${0}: Qemu Wrapper, very simple script for abriviating \
verbose qemu commands and options
options:
-c create an Image.img with 10G space
-r [input.iso] run input.iso
EOF
}
err() {
for line in "${@}"; do
echo "${line}" >&2
done
exit 1
}
run() {
if ! ${1} > /dev/null 2>&1; then
err "${2}"
fi
[ -n "${3}" ] && echo "${3}"
exit 0
}
if ! command -v qemu-img > /dev/null 2>&1 || \
! command -v qemu-system-x86_64 > /dev/null 2>&1; then
err "${0}: qemu must be properly installed"
fi
if [ $# != 2 ] && [ $# != 1 ]; then
err "${0}: Invalid usage" "Try '${0} -h' for help."
fi
while getopts "cr:h" option ;do
case "${option}" in
c)
run "qemu-img create -f qcow2 Image.img 10G" \
"${0}: Failed to create Image.img"
;;
r)
run "qemu-system-x86_64 -enable-kvm -cdrom ${OPTARG} \
-boot menu=on -drive file=Image.img -m 4G" \
"${0}: Failed to run image"
;;
h) help; exit 0;;
*) err "Try '${0} -h' for help." ;;
esac
done
err "${0}: Invalid usage" "Try '${0} -h' for help."
|