PXE-SAN-Boot

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

Erstelle deine Website mit WordPress.com
Jetzt starten