change readme, add network_control usage, improve vm-start init command
This commit is contained in:
parent
18280dd605
commit
dff23e4d30
3 changed files with 50 additions and 35 deletions
38
README.md
38
README.md
|
@ -14,7 +14,7 @@ script which permit to launch easily some virtual machines via qemu
|
|||
|
||||
## Functionnality:
|
||||
|
||||
- use of config files [not fully ok]
|
||||
- use of config files [~ok]
|
||||
- start,create vm reading the config file [ok]
|
||||
- delete all data related to a vm [ok]
|
||||
- create a backup or being able to recall the bacup [ok - have to be improved]
|
||||
|
@ -22,18 +22,16 @@ script which permit to launch easily some virtual machines via qemu
|
|||
- list all vm already configured [ok]
|
||||
- print help of version number [ok]
|
||||
- support options to overrides the config file [ok]
|
||||
- can support launching vm in uefi mode [ok] (doesn't support automatic add of uefi in conf file.)
|
||||
- can support launching vm in uefi mode [ok]
|
||||
- take option create_disk to know what disk to use when creating a vm. [ok]
|
||||
- compatible to an extensive network configuration [~ok] (don't work with conf file, and no possibility to bridge over an existing interface.)
|
||||
- compatible to an extensive network configuration [ok, just need the script to create the network. ethernet_restraint/no_restreint can be used while waiting for this script to appear.]
|
||||
|
||||
### Next changes to come
|
||||
- put the path of the creation disk on the config file
|
||||
- add vnc support
|
||||
- add an option -ng, --nographic with it's parametters assiciated.
|
||||
- majors changes in setup_bridges.sh, it will be from this point called
|
||||
- Do again the readme
|
||||
- read from $XDG_CONFIG_DIR/vm_start/conf, or if it not exist, from ~/.config/vm_start/conf.
|
||||
- improve the create_disk mecanism, and the init_cdrom in a load command.
|
||||
|
||||
```setup_bridges 'bridge_name' add|rm [--ip=<ip> | --imaster=<interface_master>] ```
|
||||
|
||||
|
||||
|
||||
|
@ -55,29 +53,3 @@ you can of course add options like --uefi to tun in uefi mode, or --nproc=<nb_pr
|
|||
|
||||
If you go to the conf folder created the first time you launch the script, you will find all configured variables for each of your vm.
|
||||
|
||||
### to connect two vm on different networks at a gateway nat.
|
||||
|
||||
first, run the script set-tap.sh to create two bridges.
|
||||
```
|
||||
setup_bridge.sh --addbridge=br0
|
||||
setup_bridge.sh --addbridge=br1
|
||||
```
|
||||
|
||||
after that change the mac address of all vm in conf folder.
|
||||
|
||||
```
|
||||
vm-1 from 00:00:00:00:00:00 to 00:00:00:00:00:01
|
||||
vm-2 from 00:00:00:00:00:00 to 00:00:00:00:00:02
|
||||
```
|
||||
and start the gateway and the vms after.
|
||||
|
||||
```
|
||||
vm-start.sh gateway start --net=br:br0 --net=br:br1 --net=nat:id01
|
||||
vm-start.sh vm-1 start --net=br:br0
|
||||
vm-start.sh vm-2 start --net=br:br1
|
||||
```
|
||||
|
||||
And that's it, your three vm are now connected. You just have now to do some configurations on thoses vms.
|
||||
|
||||
|
||||
|
||||
|
|
33
network_control.sh
Executable file
33
network_control.sh
Executable file
|
@ -0,0 +1,33 @@
|
|||
|
||||
# Script which control the network. Make the bridge, veth, dummy, brx alone without any help.
|
||||
|
||||
version="0.0.1"
|
||||
usage="USAGE
|
||||
$(basename $0) [PARAMETTER] [COMMAND NAME]
|
||||
|
||||
DESCRIPTION
|
||||
Setup the bridge interfaces for a vm.
|
||||
|
||||
Take it's config files from:
|
||||
- \$XDG_CONFIG_HOME/vm_start/conf
|
||||
|
||||
In case \$XDG_CONFIG_HOME doesn't exists
|
||||
- ~/.config/vm_start/conf
|
||||
|
||||
PARAMETTER
|
||||
-h, --help Print this help message and quit
|
||||
-v, --version Print the installed version of $(basename $0) and quit
|
||||
|
||||
NAME
|
||||
Is the name of the vm to open
|
||||
|
||||
COMMAND
|
||||
active Active the internet network of the vm
|
||||
desactive desactive the internet network of the vm
|
||||
desactive-all desactive all vms previously loaded
|
||||
|
||||
"
|
||||
|
||||
echo "$usage"
|
||||
|
||||
|
14
vm-start.sh
14
vm-start.sh
|
@ -4,7 +4,7 @@
|
|||
#RESULT_POSSIBLE=("init","list","start","start_backup","create","backup","restore","suppr")
|
||||
|
||||
# Constante d'éxecutions.
|
||||
Version="0.7.0"
|
||||
Version="0.7.1"
|
||||
USAGE="vm-start [PARAMETTER] [ NAME COMMAND [OPTION] ]
|
||||
|
||||
Script to manage virtual machine easily.
|
||||
|
@ -55,6 +55,12 @@ OPTION="-display gtk,gl=on,show-cursor=on,show-menubar=off \
|
|||
-usbdevice tablet \
|
||||
-daemonize"
|
||||
|
||||
|
||||
option_graphical="-display sdl,gl=on,show-cursor=on \
|
||||
-device virtio-vga-gl \
|
||||
-usbdevice tablet \
|
||||
-daemonize"
|
||||
|
||||
# other options choices
|
||||
#
|
||||
#-display gtk,show-menubar=off,gl=on,show-cursor=on,zoom-to-fit=on \
|
||||
|
@ -93,14 +99,18 @@ INIT() {
|
|||
|
||||
mkdir -p conf
|
||||
cat << EOF > "conf/$NAME-vm_var.sh"
|
||||
init_version=${Version}
|
||||
NAME="${NAME}"
|
||||
VMHOSTNAME="\${NAME}-vm"
|
||||
VMDRIVE="\${VMHOSTNAME}.cow"
|
||||
NPROC="${NPROC}"
|
||||
MEMORY="${MEMORY}"
|
||||
FORWARD="${FORWARD}"
|
||||
LOCATION="\${NAME}-sandbox"
|
||||
UEFI="no"
|
||||
FORWARD="${FORWARD}"
|
||||
mac="00:00:00:00:00:00"
|
||||
net=""
|
||||
driver="virtio-net"
|
||||
EOF
|
||||
chmod +x "conf/$NAME-vm_var.sh"
|
||||
|
||||
|
|
Loading…
Reference in a new issue