Ubuntu 16.04 Virtuelle Maschine als OVA von VirtualBox exportieren
Dieser Artikel zeigt, wie Sie eine virtuelle Maschine mit Ubuntu 16.04 LTS von VirtualBox im Open Virtualization Format als OVA Datei exportieren. Im hier gezeigten Beispiel wird eine Ubuntu 16.04 LTS virtuelle Maschine mit TKmon exportiert (für Ubuntu 14.04 siehe Ubuntu 14.04 Virtuelle Maschine als OVA von VirtualBox exportieren und Ubuntu 12.04 siehe Ubuntu 12.04 Virtuelle Maschine als OVA von VirtualBox exportieren).
Vorbereiten der virtuellen Maschine
Bevor Sie die virtuelle Maschine exportieren, bereiten Sie diese mit folgenden Schritten vor:
- Spielen Sie zuerst alle aktuell verfügbaren Sicherheitsupdates ein und führen Sie sofern erforderlich einen Neustart durch:
sudo apt update
sudo apt dist-upgrade
- Entfernen Sie temporäre Daten und sofern gewünscht ältere Kernel-Pakete:
sudo apt clean
- Bereinigen Sie sofern gewünscht die Bash-Historie:
rm .bash_history
- Ergänzen Sie am Ende der Datei /etc/systemd/system/rc-local.service zwei Zeilen. Rufen Sie dazu das folgende Kommando auf und ergänzen Sie dann am Ende die zwei angeführten Zeilen:
sudo systemctl edit --full rc-local
[Install]
WantedBy=multi-user.target
- Passen Sie die Datei /etc/rc.local an, sodass neue SSH Keys und Apache2 SSL Zertifikate beim nächsten Boot-Vorgang erstellt werden. Die entsprechende Konfiguration finden Sie unten im Abschnitt /etc/rc.local.
- Reenable per Systemctl von rc-local, nun wird ein Symlink zu multi-user.target.wants angelegt:
sudo systemctl reenable rc-local
Created symlink from /etc/systemd/system/multi-user.target.wants/rc-local.service to /etc/systemd/system/rc-local.service.
- Fahren Sie abschließend die virtuelle Maschine herunter:
sudo shutdown -h now
/etc/rc.local
Editieren Sie die Datei /etc/rc.local und ergänzen Sie im unteren Bereich (ab dem Hinweis "start tkfirstboot section") den hier angeführten Inhalt:
#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. # start tkfirstboot section # initialize ssh and keys on first bootup of the TKmon virtual appliance FLAGFILE=/var/log/tk-firstboot.log if [ -e $FLAGFILE ]; then exit 0 else echo "Executing tk-firstboot ..." echo "Executing tk-firstboot ..." >> $FLAGFILE echo " removing ssh keys" >> $FLAGFILE rm /etc/ssh/*key* >> $FLAGFILE echo " removing ssl-cert-snakeoil.pem" >> $FLAGFILE rm /etc/ssl/certs/ssl-cert-snakeoil.pem >> $FLAGFILE echo " removing ssl-cert-snakeoil.key" >> $FLAGFILE rm /etc/ssl/private/ssl-cert-snakeoil.key >> $FLAGFILE echo " running dpkg-reconfigure openssh-server" >> $FLAGFILE dpkg-reconfigure openssh-server >> $FLAGFILE echo " running make-ssl-cert generate-default-snakeoil" >> $FLAGFILE make-ssl-cert generate-default-snakeoil --force-overwrite >> $FLAGFILE echo " restarting apache2" >> $FLAGFILE /bin/systemctl restart apache2.service >> $FLAGFILE fi touch $FLAGFILE # end tkfirstboot section exit 0
Exportieren der virtuellen Maschine
Weitere Informationen
- Open Virtualization Format (de.wikipedia.org)
Autor: Thomas Niedermeier Thomas Niedermeier arbeitet im Product Management Team von Thomas-Krenn. Er absolvierte an der Hochschule Deggendorf sein Studium zum Bachelor Wirtschaftsinformatik. Seit 2013 ist Thomas bei Thomas-Krenn beschäftigt und kümmert sich unter anderem um OPNsense Firewalls, das Thomas-Krenn-Wiki und Firmware Sicherheitsupdates. |