Habt Ihr folgende Schritte abgearbeitet, könnt ihr mit einem Rechner ohne Festplatte mit aktiviertem PXE-Boot mit Ubuntu als normale Desktop-Version arbeiten. Das komplette System befindet sich auf dem Server. Installieren könnt ihr von der Live-Version, die vorher als PXE gestartet wird. Leider habe ich noch nicht herausgefunden, warum das Ganze nur von dem Rechner aus funktioniert, von dem installiert wurde. Aus diesem Grunde verwende ich das auch nicht. Für Schulen oder Einrichtungen vielleicht ein ganz nettes Feature, aber dafür wieder umständlich einzurichten, wenn man bedenkt, dass man das für jeden einzelnen Rechner erstellen müsste 🤔.
Debian Stretch, iSCSI-Zielserverlaufwerk mit 20Gb erstellen
sudo mkdir /sharedfolders/tftpboot/iscsi
sudo dd if=/dev/zero of=/sharedfolders/tftpboot/iscsi/ubuntu-mate.img count=0 bs=1 seek=20G
Als Nächstes installieren und aktivieren Sie die iSCSI-Zielsoftware:
apt-get install tgt dkms
sudo nano /etc/tgt/conf.d/ubuntu-mate.conf
Folgendes erstellen
- # create new
- # naming rule : [ iqn.yaer-month.domain:any name ]
- <target iqn.2019-03.openmediavault:ubuntu-mate>
- # provided devicce as a iSCSI target
- backing-store /sharedfolders/tftpboot/iscsi/ubuntu-mate.img
- # iSCSI Initiator’s IP address you allow to connect
- #initiator-address 192.168.252.75
- # authentication info ( set anyone you like for „username“, „password“ )
- incominguser user1 PASSWORT
- </target>
! Bitte den incominguser unbedingt ausfüllen! Freilassen geht nicht mehr!
Der incomminguser ist der Benutzername, den ihr später erstellt.
systemctl restart tgt
den Status anzeigen lassen
tgtadm --mode target --op show
Ubuntu
Ubuntu wird nicht mit einem iSCSI-Intiator geliefert. Aus diesem Grund müssen einige zusätzliche Schritte installiert und ein Ubuntu-iSCSI-Laufwerk von PXE gestartet werden. Trotzdem ist es möglich.
Installation
Starten Sie zuerst eine Ubuntu LiveCD. Ich verwende Ubuntu 18.04, das ich für den PXE-Start eingerichtet habe. Nach dem Booten des Desktops müssen wir open-iscsi installieren und die oben erstellte iSCSI-Zieldiskette ermitteln.
Installiere und starte open-iscsi im gestartetem Ubuntu Live System
sudo su
apt-get install open-iscsi
/etc/init.d/open-iscsi start
Erkennen und verbinden Sie sich mit Ihrem iSCSI-Ziel
iscsiadm -m discovery -t st -p 192.168.252.49
Folgender Befehl hat nicht funktioniert. Praktisch, dass es auch ohne geht.
iscsiadm -m node –ubuntu-mate "iqn.2019-03.openmediavault:ubuntu-mate" --portal "192.168.252.49:3260" --login
Führen Sie fdisk aus, um zu bestätigen, dass Ihre Festplatte angeschlossen ist
fdisk -l
(das ist ein kleines L – keine eins)
Nun, da Ubuntu unsere iSCSI-Zieldiskette sehen kann, können wir mit der Installation wie gewohnt fortfahren. Wenn die Installation beendet ist, NICHT NEU STARTEN.
Als nächstes müssen wir einige Pakete in unserer neuen Installation installieren. Wie machen wir das, ohne unsere neue Installation zu booten? Einfach, indem Sie „chroot“ verwenden. chroot ändert grundsätzlich unser Arbeitsverzeichnis (/). Durch die Verwendung von chroot haben wir direkten Zugriff auf das Dateisystem unserer neuen Installation, und alle Änderungen wirken sich so aus, als ob wir direkt mit dem System booten würden.
Also wieder ins Terminal unseres Gastsystems
sudo su
mkdir /mnt/temp
mount /dev/sda1 /mnt/temp
chroot /mnt/temp
mount -t proc none /proc
echo "nameserver 192.168.252.1" >> /etc/resolv.conf
hostname ubuntu-mate
apt-get install systemd-sysv
echo "iscsi" >> /etc/initramfs-tools/modules
echo "InitiatorName=iqn.2019-03.openmnediavault:ubuntu-mate-client1" > /etc/iscsi/initiatorname.iscsi
touch /etc/iscsi/iscsi.initramfs
update-initramfs -u
Bearbeiten Sie die Datei / etc / fstab so, dass / dev / sda1 anstelle von UUID für root verwendet wird
nano /etc/fstab
Suchen Sie nach einer Zeile, die der folgenden ähnelt:
UUID=5c0bd3d6-b43b-48d4-ac82-cc9b364f4544 / ext4 errors=remount-ro 0 1
Ersetzen mit:
/dev/sda1 / ext4 errors=remount-ro 0 1
Stellen Sie sicher, dass /etc/network/interfaces die folgenden Zeilen enthält
sudo nano /etc/network/interfaces
- auto eth0
- iface eth0 inet manual
Kopieren Sie die Dateien vmlinuz und initrd.img auf Ihren PXE-Server
scp /boot/initrd.img-3.8.0-19-generic /boot/vmlinuz-3.8.0-19-generic root@192.168.252.49:/sharedfolders/tftpboot/iscsi/
PXE-Setup
An diesem Punkt sollten wir alles haben, um unseren PXE-Server einrichten zu können. Fügen Sie einfach einen Eintrag wie den folgenden zu Ihrer pxelinux.cfg / default-Datei hinzu
- LABEL Ubuntu
- KERNEL iscsi/vmlinuz-3.8.0-19-generic
- APPEND initrd=iscsi/initrd.img-3.8.0-19-generic ip=dhcp ISCSI_INITIATOR=iqn.2014-06.com.it-joe:ubuntu-client1 ISCSI_TARGET_NAME=iqn.2014-06.com.it-joe:ubuntu-desktop ISCSI_TARGET_IP=192.168.0.50 ISCSI_TARGET_PORT=3260 root=/dev/sda1 rw
Fertig
Das LABEL kann individuell gestaltet werden. Die KERNEL-Zeile muss nur der Pfad zur vmlinuz-Datei sein (relativ zum TFTP-Server /). Die APPEND-Zeile muss initrd = „der Pfad zur initrd.img“ sein, und der Rest wird direkt aus der Kernel-Zeile in der zuvor übertragenen Datei grub.conf kopiert