|Bernhard Ehlers 5d179151cb||1 day ago|
|patches||1 day ago|
|README.md||6 days ago|
|config.img.zip||2 months ago|
Currently you can't easily transfer data to/from a QEMU VM. Especially transfering configurations would be very helpful. But to share configurations similar to the current Dynamips/IOU solution is very complex. For every device type a special solution must be found.
This extension is much simpler to implement.
It adds a small DOS formatted disk as HD-D to every QEMU VM.
The user can use this storage device to save configurations,
but also any other data.
The GNS3 server converts this disk image to a ZIP archive,
which is accessible in the GUI by import/export configuration.
To access the files in the disk image the server needs the
mtools installed (https://www.gnu.org/software/mtools/).
The config disk uses the disk interface of HD-D, unless that is of type “ide”. If it is, the HD-A disk interface is used. This prevents the use of “ide”, unless HD-A is also using it.
Apply this addition to a GNS3 sources with:
cd <gns3-gui source directory> git am <path to patches>/gns3-gui*.patch cd <gns3-server source directory> git am <path to patches>/gns3-server*.patch
Afterwards do the normal installation from source of GNS3.
Linux: mtools packages are available for most distributions, see https://pkgs.org/download/mtools.
macOS: mtools is available in the Homebrew
package manager, install it with
brew install mtools.
Windows: mtools binaries for Win32 are available at https://github.com/foone/mtools_win32/releases. They will also run on 64-bit Windows. I have not tested my GNS3 extension on Windows, so I have no idea if mtools works in this environment.
This extension needs a DOS formatted disk image
in the QEMU image directory of the GNS3 server.
If this image is missing, a 1 MB image will be created.
If you need a different size, create it as shown below:
disk_size=1024 # disk size in KiByte dd if=/dev/zero bs=1024 count=$disk_size of=config.img status=none printf 'drive x:\n file="config.img"\n partition=1\n' > mtoolsrc MTOOLSRC=mtoolsrc mpartition -I -c -s 8 -h 16 -t $(($disk_size / 64)) x: MTOOLSRC=mtoolsrc mformat x: rm mtoolsrc
Afterwards copy it into the QEMU image directory of the GNS3 server.
config.img.zip contains the 1 MB image together with the build script.