Ich brauchte ein mittelaltes Debian Linux, um mittelalte Software zu starten. Manchmal kommt man um dergleichen nicht herum.
Es gibt aber eine Lösung. Vielmehr wird hier via bhyve eine Debian Jessie Installation beschrieben, in der das gewünschte Produkt läuft. Natürlich sollte man das auf keinen Fall nachahmen, es ist mehr als generelle Vorlage zu sehen, oder bestenfalls als Design-Studie. Es zeigt als experimentelle Fingerübung durchaus die Mächtigkeit von FreeBSD aus, wenn man dann mal die Gelegenheit gefunden hat, sich damit auseinanderzusetzen. Diese hier beschriebenen schändlichen Taten wurden unter FreeBSD-12.1 mit portage tree begannen.
Generell brachucht man vm-bhyve und grub2-bhyve. Deshalb ab in den Portage Tree!
cd /usr/ports/sysutils/vm-bhyve
make all install clean
cd /usr/ports/sysutils/grub2-bhyve
make all install clean
kldload if_bridge if_tap nmdm vmm
echo 'if bridge load="YES"' >> /boot/loader.conf
echo 'if tap load="YES"' >> /boot/loader.conf
echo 'nmdm load="YES"' >> /boot/loader.conf
echo 'vmm load="YES"' >> /boot/loader.conf
Es empfiehlt sich, /boot/loader.conf im Blick zu behalten. Just in case!
sysrc vm enable="YES"
sysrc vm dir="zfs:zroot/vm"
Hier darf sich der unbewandte FreeBSD-Nutzer entsinnen, dass es A”derungen in /etc/rc.conf auf sich hat. Es gilt, das zu kontrollieren.
zfs create zroot/vm
Es geht auch anders, wenn man kein ZFS nutzt, muss man das auslassen und be allen diesen Dingen was konsisstentes angebeh.
cp /usr/local/share/examples/vm-bhyve/* /zroot/vm/.templates/
vm switch create public
vm switch add public igb0
cp /usr/local/share/examples/vm-bhyve/* /zroot/vm/.templates/
vm switch create public
vm switch add public igb0
vm switch create public
vm switch add public igb0
vm create -s 9G -t debian debian-jessie
fetch https://cdimage.debian.org/cdimage/archive/8.11.1/amd64/iso-cd/debian-8.11.1-amd64-CD-1.iso
debian-8.11.1-amd64-CD-1.iso 251 MB 33 MBps 07s
Des Debian-Versprechens nach, sind alle wichtigen Sachen, um ein System ans Laufen zu bringen, immer auf der CD1.
Installieren der vm, jetzt wirds spannend:
vm install debian-jessie debian-8.11.1-amd64-CD-1.iso
Starting debian-jessie
* found guest in /zroot/vm/debian-jessie
* booting...
# vm console debian-jessie
Connected
2x Enter drücken
sysrc vm_list="debian-jessie"
sysrc vm_delay="5"
oder /etc/rc.conf editieren / beobachten (sollte man nach solch einem Installations-Marathon immer tun!)
gateway_enable="yes"
pf_enable="yes"
ext_if="igb0"
ext_ip="136.0.42.1"
net_jessie="10.9.1.0/24"
scrub in all
nat pass on $ext_if from $net_jessie to any -> $ext_ip
danch, um das sofort auszuführen und reboot-stabail zu machen:
# sysctl net.inet.ip.forwarding=1
# service pf start
root@calcit:~ # vm switch list
NAME TYPE IFACE ADDRESS PRIVATE MTU VLAN PORTS
public standard vm-public - no - - igb0
root@calcit:~ # vm switch address public 10.9.1.2/24
root@calcit:~ # vm switch list
NAME TYPE IFACE ADDRESS PRIVATE MTU VLAN PORTS
public standard vm-public 10.9.1.1/24 no - - igb0
# vm configure debian-jessie
network0_type="virtio-net"
network0_switch="public"
root@gliese1:/home/chrissie # vm destroy debian-jessie
Are you sure you want to completely remove this virtual machine (y/n)? y
auto eth0
iface eth0 inet static
address 10.9.1.10
netmask 255.255.255.0
gateway 10.9.1.1
dns-search x-tra-designs.org
dns-nameservers 10.9.1.1
$ uname -a
FreeBSD ASDF 12.1-RELEASE-p3 FreeBSD 12.1-RELEASE-p3 GENERIC amd64
$ ssh 10.9.1.10
chrissie@10.9.1.10's password:
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
chrissie@debian-jessie:~$ uname -a
Linux debian-jessie 3.16.0-6-amd64 #1 SMP Debian 3.16.56-1+deb8u1 (2018-05-08) x86_64 GNU/Linux