Linux.VirtualBox: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(45 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
* Homepage für den Download: http://download.virtualbox.org/virtualbox/
* VirtualBox verwende ich nicht mehr, sondern [[Linux.kvm]]
* Homepage für den Download: https://download.virtualbox.org/virtualbox/
* Infos und Dokumentation: http://www.virtualbox.org/
* Infos und Dokumentation: http://www.virtualbox.org/




== VirtualBox ==
== Installation ==
zypper install kernel-source kernel-devel kernel-default-devel kernel-source-vanilla kernel-vanilla-devel virtualbox-host-source virtualbox-qt virtualbox-guest-tools
#
# minimal
#
zypper install virtualbox-host-source kernel-devel kernel-default-devel
#
# Im Fall dass man Windows virtualisieren will
# "6.0.12" kann auf deinem System natürlich anders lauten
#
wget https://download.virtualbox.org/virtualbox/6.0.12/VBoxGuestAdditions_6.0.12.iso
#
# die kernel module compilieren und einbinden
#
/sbin/vboxconfig
 
== Betrieb ==


OrgaMon Server Dienste lassen sich prima virtualisieren. Am besten eingnet sich dazu VirtualBox unter Linux.  
OrgaMon Server Dienste lassen sich prima virtualisieren. Am besten eingnet sich dazu VirtualBox unter Linux.  


* rpm's für VirtualBox gibts bei Sun.
* rpm's für VirtualBox gibts bei Oracle http://virtualbox.org .
* Ein ISO vom windows XP SP3 und eine Lizenz wird benötigt.  
* Ein ISO von Windows 7 und ein Lizenzkey werden benötigt.
* Standardmäsig läuft die Box im Netzwerk NAT-Mode, für unsere Anwendung einfach auf "Bridged" umstellen, auf die Netzwerkkarte die das normale Netz betreibt. So zieht die Box via DHCP alles wie ein echter Client - und oh wunder, das Ding hat ne eigene interne Adresse ...
* Beim Erstellen der VM im Bereich Netzwerk auf "Bridged" umstellen, auf die Netzwerkkarte die das normale Netz betreibt. So zieht die Box via DHCP alles wie ein realer Client.
 
=== Einrichten eines Gastes ===
 
* Du brauchst eine grafischen Zugang zum Host (z.B. mit "vncserver" eine grafische Sitzung starten)
* Man braucht aber dazu ein Grafisches system (ist in diesem Fall wegen des Wizzards auch echt zu empfehlen!!!)


Der "PC" startet dann von selbst mit Hilfe von
VirtualBox
 
=== Steuerung über die Konsole ===


  #
  #
Zeile 17: Zeile 45:
  #
  #
  VBoxHeadless -s WinXP -v off &
  VBoxHeadless -s WinXP -v off &


  #
  #
  # Box starten mit integriertem VNC
  # Box sanft herunterfahren!
  #
  #
  VBoxHeadless -s XP --vnc --vncport 5900 --vncpass $PWD &
  VBoxManage controlvm PHP7 acpipowerbutton


  #
  #
  # Box herunterfahren!
  # Box jetzt herunterfahren!
  #
  #
  VBoxManage controlvm WinXP poweroff
  VBoxManage controlvm WinXP poweroff
Zeile 33: Zeile 62:
  VBoxManage showvminfo WinXP | grep State
  VBoxManage showvminfo WinXP | grep State


und kann mit Hilfe der Virtuellen Konsole einwandfrei angesprochen und verwaltet werden.
#
 
# Welche Boxen gibt es
#
VBoxManage list vms


=== Admin ===
=== Admin ===


VirtualBox
damit kann man erst mal ein System hochfahren. Man braucht aber dazu ein Grafisches system (ist in diesem Fall wegen des Wizzards auch echt zu empfehlen!!!)
Zur dauerhaften Installation des Kernel-Mode Drivers muss man ev. machen:
Zur dauerhaften Installation des Kernel-Mode Drivers muss man ev. machen:


Zeile 47: Zeile 75:
nach einem Kernel-Update kann es sein dass das VirtualBox Kernel Modul nicht mehr geladen ist. Sei glücklich wenn Du neben dem neuen Kernel auch die neuen Kernel Sourcen erhalten hast! Dann reicht in der Regel:
nach einem Kernel-Update kann es sein dass das VirtualBox Kernel Modul nicht mehr geladen ist. Sei glücklich wenn Du neben dem neuen Kernel auch die neuen Kernel Sourcen erhalten hast! Dann reicht in der Regel:


/sbin/rcvboxdrv setup
#
# veraltete Version des Befehles
#
  /etc/init.d/vboxdrv setup
  /etc/init.d/vboxdrv setup


Zeile 53: Zeile 86:
== Autostart ==
== Autostart ==


* /etc/init.d/boot.local
=== via systemd ===
 
<b>cd /etc/systemd/system</b>
<b>joe VirtualBox\@.service</b>


<code>
#! /bin/sh
#
# Copyright (c) 2002 SuSE Linux AG Nuernberg, Germany.  All rights reserved.
#
# Author: Werner Fink <werner@suse.de>, 1996
#        Burchard Steinbild, 1996
  #
  #
  # /etc/init.d/boot.local
  # (c) OrgaMon.org, Andreas Filsinger
  #
  #
  # script with local commands to be executed from init on system startup
  # VirtualBox Service, One script for ALL of your machines
  #
  #
  # Here you should add things, that should happen directly after booting
  # systemctl enable VirtualBox@~Guest~
  # before we're going to the first run level.
  # systemctl start VirtualBox@~Guest~
# systemctl stop VirtualBox@~Guest~
  #
  #
# Beispiel: Autostart der VM "XP"
  #
  #
   
  # systemctl enable VirtualBox@XP
/etc/v-xp.sh &
  #
  #
</code>
  [Unit]
 
  Description=Virtualbox Machine %i Service
* /etc/v-xp.sh
  Requires=vboxdrv.service
 
  After=multi-user.target
<code>
  #!/bin/bash
   
  sleep 30
  logger "winxp-Startup-Script ausgefuehrt!"
   
   
  VBoxHeadless -s WinXP -v off
  [Service]
ExecStart=/usr/bin/VBoxHeadless -s %i -v off
ExecStop=/usr/bin/VBoxManage controlvm %i acpipowerbutton
   
   
  #
  [Install]
</code>
WantedBy=multi-user.target


== VLAN ==
== VLAN ==
Zeile 95: Zeile 121:


* Nehme den Intel PRO 100 T Server(Bridged adapter, vlan1)
* Nehme den Intel PRO 100 T Server(Bridged adapter, vlan1)
== Umzug / Restore ==
* Fahre auf dem alten System die VM runter
* merke Dir den Namen des Unterverzeichnisses dieser VM in ~\VirtualBox VMs\~Name~
* Erstelle dieses Verzeichnis auch auf dem neuen System
* Kopiere nun 2 Dateien auf das neue System: das ~Name~.vdi und das ~Name~.xbox
* <code>VBoxManage registervm "/root/VirtualBox VMs/~Name~/~Name~.vbox"</code>
* löse nun die Probleme die entstehen weil jetzt doch Details anders sind
** gemountete Guest-Additions haben nun eine andere Version / Ablagestelle ...
** andere IP Adresse ...
** Windows könnte das "neue Netzwerk" zunächst als Gastnetzwerk betrachten, dann würdest Du nicht mehr per VNC draufkommen (->setze es auf Firmennetzwerk)
** Windows sieht nun eine andere CPU (z.B. XEON anstelle von i7)


== Windows 7 ==
== Windows 7 ==
Zeile 100: Zeile 139:
http://proteino.de/blog/index.php/2010/03/03/windows-7-im-windows-2000-look/
http://proteino.de/blog/index.php/2010/03/03/windows-7-im-windows-2000-look/


== DVD ISO Image erstellen ==
=== Vergrössern der Systempartition ===
 
* System runter fahren
 
VBoxManage modifyhd <file.vdi> --resize <Size in MB>
 
* Im Windows dann mit "Festplattenpartitionen erstellen oder verwalten" einfach die zu kleine Partition rechts klicken und "Volume erweitern", weiter, weiter, (ohne weitere Optionen zu ändern)
 
=== "Windows normal starten" als default ===
 
* https://www.windowspro.de/tipp/automatisches-booten-die-starthilfe-von-windows-deaktivieren
 
=== Uhrzeit ===
 
* Deaktiviere die Synchronisation mit "Windows Time" Server auf dem Gast
* Mache 2 Einstellungen für die VM auf dem Host
 
#
# Prüfe alle 3 Sekunden ob die Zeit noch stimmt
#
VBoxManage guestproperty set WIN7 "/VirtualBox/GuestAdd/VBoxService/--timesync-interval" 3000
#
# Mache eine harte Korrektur der Uhrzeit, versuche nicht die Uhr schneller oder langsamer laufen zu lassen wenn mehr als 3 Sekunden Differenz gemessen werden
#
VBoxManage guestproperty set WIN7 "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold" 3000
 
== Router ==
 
Die Router-Funktion eignet sich einwandfrei zur Virtualisierung, dabei können fertige Images bereitgestellt werden:


mit dem kostenlosen Tool Ahead Nero Burning Tool 10 kann ein ISO Image einer DVD erstellt werden:
* http://www.ipfire.org/about

Aktuelle Version vom 17. Oktober 2024, 19:56 Uhr


Installation

zypper install kernel-source kernel-devel kernel-default-devel kernel-source-vanilla kernel-vanilla-devel virtualbox-host-source virtualbox-qt virtualbox-guest-tools

#
# minimal
#
zypper install virtualbox-host-source kernel-devel kernel-default-devel

#
# Im Fall dass man Windows virtualisieren will
# "6.0.12" kann auf deinem System natürlich anders lauten
#
wget https://download.virtualbox.org/virtualbox/6.0.12/VBoxGuestAdditions_6.0.12.iso

#
# die kernel module compilieren und einbinden
#
/sbin/vboxconfig

Betrieb

OrgaMon Server Dienste lassen sich prima virtualisieren. Am besten eingnet sich dazu VirtualBox unter Linux.

  • rpm's für VirtualBox gibts bei Oracle http://virtualbox.org .
  • Ein ISO von Windows 7 und ein Lizenzkey werden benötigt.
  • Beim Erstellen der VM im Bereich Netzwerk auf "Bridged" umstellen, auf die Netzwerkkarte die das normale Netz betreibt. So zieht die Box via DHCP alles wie ein realer Client.

Einrichten eines Gastes

  • Du brauchst eine grafischen Zugang zum Host (z.B. mit "vncserver" eine grafische Sitzung starten)
  • Man braucht aber dazu ein Grafisches system (ist in diesem Fall wegen des Wizzards auch echt zu empfehlen!!!)
VirtualBox 

Steuerung über die Konsole

#
# Box starten
#
VBoxHeadless -s WinXP -v off &


#
# Box sanft herunterfahren!
#
VBoxManage controlvm PHP7 acpipowerbutton
#
# Box jetzt herunterfahren!
#
VBoxManage controlvm WinXP poweroff
# 
# Läuft die Box? 
#
VBoxManage showvminfo WinXP | grep State
# 
# Welche Boxen gibt es 
# 
VBoxManage list vms

Admin

Zur dauerhaften Installation des Kernel-Mode Drivers muss man ev. machen:

insserv vboxdrv

nach einem Kernel-Update kann es sein dass das VirtualBox Kernel Modul nicht mehr geladen ist. Sei glücklich wenn Du neben dem neuen Kernel auch die neuen Kernel Sourcen erhalten hast! Dann reicht in der Regel:

/sbin/rcvboxdrv setup
#
# veraltete Version des Befehles
#
/etc/init.d/vboxdrv setup

wenn die Kernel-Sourcen nicht mit deinem aktuellen kernel zusammenpassen - ist das ganz schlecht!

Autostart

via systemd

cd /etc/systemd/system
joe VirtualBox\@.service
#
# (c) OrgaMon.org, Andreas Filsinger
#
# VirtualBox Service, One script for ALL of your machines
#
# systemctl enable VirtualBox@~Guest~
# systemctl start VirtualBox@~Guest~
# systemctl stop VirtualBox@~Guest~
#
# Beispiel: Autostart der VM "XP"
#
# systemctl enable VirtualBox@XP
#
[Unit]
Description=Virtualbox Machine %i Service
Requires=vboxdrv.service
After=multi-user.target

[Service]
ExecStart=/usr/bin/VBoxHeadless -s %i -v off
ExecStop=/usr/bin/VBoxManage controlvm %i acpipowerbutton

[Install]
WantedBy=multi-user.target

VLAN

erstelle einen VLAN Adapter, der im ifconfig sichtbar sein muss. Bei mir war das "vlan1".

  • Nehme den Intel PRO 100 T Server(Bridged adapter, vlan1)

Umzug / Restore

  • Fahre auf dem alten System die VM runter
  • merke Dir den Namen des Unterverzeichnisses dieser VM in ~\VirtualBox VMs\~Name~
  • Erstelle dieses Verzeichnis auch auf dem neuen System
  • Kopiere nun 2 Dateien auf das neue System: das ~Name~.vdi und das ~Name~.xbox
  • VBoxManage registervm "/root/VirtualBox VMs/~Name~/~Name~.vbox"
  • löse nun die Probleme die entstehen weil jetzt doch Details anders sind
    • gemountete Guest-Additions haben nun eine andere Version / Ablagestelle ...
    • andere IP Adresse ...
    • Windows könnte das "neue Netzwerk" zunächst als Gastnetzwerk betrachten, dann würdest Du nicht mehr per VNC draufkommen (->setze es auf Firmennetzwerk)
    • Windows sieht nun eine andere CPU (z.B. XEON anstelle von i7)

Windows 7

http://proteino.de/blog/index.php/2010/03/03/windows-7-im-windows-2000-look/

Vergrössern der Systempartition

  • System runter fahren
VBoxManage modifyhd <file.vdi> --resize <Size in MB>
  • Im Windows dann mit "Festplattenpartitionen erstellen oder verwalten" einfach die zu kleine Partition rechts klicken und "Volume erweitern", weiter, weiter, (ohne weitere Optionen zu ändern)

"Windows normal starten" als default

Uhrzeit

  • Deaktiviere die Synchronisation mit "Windows Time" Server auf dem Gast
  • Mache 2 Einstellungen für die VM auf dem Host
#
# Prüfe alle 3 Sekunden ob die Zeit noch stimmt
#
VBoxManage guestproperty set WIN7 "/VirtualBox/GuestAdd/VBoxService/--timesync-interval" 3000

#
# Mache eine harte Korrektur der Uhrzeit, versuche nicht die Uhr schneller oder langsamer laufen zu lassen wenn mehr als 3 Sekunden Differenz gemessen werden
#
VBoxManage guestproperty set WIN7 "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold" 3000

Router

Die Router-Funktion eignet sich einwandfrei zur Virtualisierung, dabei können fertige Images bereitgestellt werden: