Clonzilla PXE Server
Du möchtest dich gerne für unsere Hilfe erkenntlich zeigen . Gerne. Wir bedanken uns bei dir für deine Spende!
Hauseigenes Apt-Repo: https://apt.iteas.at
GITLAB Enterprise:
Clonezilla ist mächter als man meinen würde. Ich möchte euch hier mal kurz zeigen wie man seinen eigenen Clonezilla PXE-Server baut.
Verwendetes System: Ubuntu 16.04, 22.04
Voraussetzungen:
- Fertig installierter Ubuntu Server
- Clonezilla ISO herunter geladen (niemals die Debianversion verwenden, da gibt es so gut wie keine Treiber)
- Funktionierender DHCP Server
Installation und Konfiguration
Für den Betrieb benötigen wir nen NFS und nen TFTP-Server. Über die Konfiguration eines DHCPservers wird hier nicht eingegangen.
apt install tftpd-hpa nfs-kernel-server
Den TFT konfigurieren wir auf /home/tftpboot
. Die schreibgeschützte Freigabe für die Clonezilladaten auf /home/nfsroot/clonezilla_ubuntu
und das Backup selbst beschreibbar auf /home/partimag
. Die Dinge kann natürlich nach belieben aufteilen.
mkdir -p /home/tftpboot/clonezilla_ubuntu mkdir -p /home/nfsroot/clonezilla_ubuntu mkdir /home/tftpboot/pxelinux.cfg mkdir /home/partimag mkdir /exports
cat /etc/exports
/export *(acl,async,no_subtree_check,fsid=0,rw) /home/nfsroot *(ro,no_root_squash,async,no_subtree_check) /home/partimag *(sync,no_subtree_check,no_root_squash,rw) </code>
systemctl restart nfs-kernel-server.service
Daten für den Boot bereitstellen
ISO Downloaden und mounten. Daten verteilen.
mount /home/Downloads/clonezilla-live-20170626-zesty-amd64.iso /mnt/loop cp -a /mnt/loop/* /home/nfsroot/clonezilla_ubuntu/. cp /home/nfsroot/clonezilla_ubuntu/live/filesystem.squashfs /home/tftpboot/clonezilla_ubuntu/. cp /home/nfsroot/clonezilla_ubuntu/live/vmlinuz /home/tftpboot/clonezilla_ubuntu/. umount /mnt/loop
Nun noch das Menü erstellen. In den Ordner tftpboot
müssen die Dateien „vesamenu.c32 und pxelinux.0“ kopiert werden. Wer diese nicht hat, ich habe sie hier angehängt. tftpboot.zip
nano /home/tftpboot/pxelinux.cfg/default
- default
DEFAULT vesamenu.c32 ALLOWOPTIONS 0 PROMPT 0 TIMEOUT 50 MENU TITLE PXE Systeme Supertux menu background tux.png LABEL lokal_System MENU LABEL ^Starte von lokalem Medium (Festplatte, USB, DVD) TEXT HELP Startet lokal nach BIOS Einstellungen ENDTEXT localboot 0x80 MENU SEPARATOR LABEL backup MENU LABEL Backupsysteme TEXT HELP z.b. Clonezilla Images ENDTEXT KERNEL vesamenu.c32 APPEND pxelinux.cfg/backup
Nun noch das Untermenü.
nano /home/tftpboot/pxelinux.cfg/backup
- backup
MENU TITLE Daten sichern/backup LABEL Main Menu MENU LABEL Main Menu KERNEL vesamenu.c32 APPEND pxelinux.cfg/default menu background grey.png MENU SEPARATOR LABEL clonezilla_ubuntu MENU LABEL ^Clonezilla: Backup/Recovery (interaktiv) TEXT HELP Daten werden auf dem Backupserver abgelegt. ENDTEXT KERNEL clonezilla_ubuntu/vmlinuz APPEND initrd=clonezilla_ubuntu/initrd.img boot=live username=user config components edd=on nomodeset nodmraid ocs_prerun="mount 192.168.1.2:/v-machines/partimag /home/partimag" ocs_live_run="screen ocs-live-general" ocs_live_extra_param="" ocs_live_batch="no" union=overlay noswap noprompt vga=788 fetch=tftp://192.168.1.2/clonezilla_ubuntu/filesystem.squashfs ocs_daemonon="ssh" nfsroot=192.168.1.2:/home/nfsroot/clonezilla_ubuntu keyboard-layouts=de locales=de_DE.UTF-8
Ab jetzt kann man bequem per PXE seine Images sichern und recovern.
Screen in der PXE-Session beitreten
Auch ist es sehr hilfreich wenn man sich in die PXEsession verbinden kann. In der Config ist das natürlich schon aufgedreht. Dies ist bei den automatischen Backups und Recoverys sehr wichtig. So kann man mitschauen und eingreifen.
Zu der Funktion: Hierbei wird lediglich ein Screen aktiviert. Diesen kann man dann z.B. mit:
sudo -i screen -ls screen -rx tty1.debian
beitreten. Der Screen wird aktiv sobald der Client per PXE fertig gebootet hat.
Passwort setzen
echo 12345678 | mkpasswd -s 9ybt7XC4Q/JZo
Das ganze nun die Line eintragen. Hier ein Beispiel:
append initrd=initrd1.img boot=live union=aufs noswap noprompt vga=788 fetch=tftp://192.168.120.254/filesystem.squashfs usercrypted=9ybt7XC4Q/JZo ocs_numlk="on" ocs_daemonon="ssh"
Sollte in der Ausgabe des verschlüsselten Passwortes ein $
Zeichen vorhanden sein, muss bei Grub dieses Zeichen durch einfache Anführungszeichen escaped werden. Beispiel:
usercrypted='$fdskjf32478asodfADFewer.e423s'
Noch ein paar Beispiele
Bei jeder Clonezillaconfig die man per Livedisk generiert sieht man am Schluss die Befehle, diese kann man dann nach belieben zusammenstöbseln.
- beispiele.conf
LABEL clonezilla_vdrtux_sichern MENU LABEL ^clonzilla: vdrtux sichern TEXT HELP Daten werden auf dem Backupserver abgelegt. ENDTEXT KERNEL clonezilla_ubuntu/vmlinuz APPEND initrd=clonezilla_ubuntu/initrd.img boot=live username=user config components edd=on nomodeset nodmraid ocs_prerun="mount backup.osit.cc:/v-machines/partimag /home/partimag" ocs_live_run="screen ocs-sr -q2 --batch -j2 -z1p -i 4096 -fsck-src-part-y -p poweroff savedisk vdrtux-img sda" ocs_live_extra_param="" ocs_live_batch="no" union=overlay noswap noprompt vga=788 fetch=tftp://192.168.3.201/clonezilla_ubuntu/filesystem.squashfs ocs_daemonon="ssh" nfsroot=192.168.3.220:/home/nfsroot/clonezilla_ubuntu keyboard-layouts=de locales=de_DE.UTF-8 LABEL clonezilla_ubuntu_recover_hdd MENU LABEL ^Clonezilla - Gesamte Festplatte recovern TEXT HELP Spielt ein ausgewaehltes Festplattenimage zurueck auf den Zieldatentraeger. ENDTEXT KERNEL clonezilla_ubuntu/vmlinuz APPEND initrd=clonezilla_ubuntu/initrd.img boot=live username=user config components edd=on nomodeset nodmraid noprompt ocs_prerun="mount backup.osit.cc:/v-machines/partimag /home/partimag" ocs_live_run="screen ocs-sr -g auto -e1 auto -e2 -c -r -j2 -k -p reboot restoredisk ask_user" ocs_live_extra_param="" ocs_live_batch="no" union=overlay noswap noprompt vga=788 fetch=tftp://192.168.3.201/clonezilla_ubuntu/filesystem.squashfs ocs_daemonon="ssh" nfsroot=192.168.3.220:/home/nfsroot/clonezilla_ubuntu keyboard-layouts=de locales=de_DE.UTF-8 LABEL clonezilla_ubuntu_recover_partition MENU LABEL ^Clonezilla - Eine Partion recovern TEXT HELP Spielt ein ausgewaehltes Partitionsimage zurueck auf den Zieldatentraeger. ENDTEXT KERNEL clonezilla_ubuntu/vmlinuz APPEND initrd=clonezilla_ubuntu/initrd.img boot=live username=user config components edd=on nomodeset nodmraid noprompt ocs_prerun="mount backup.osit.cc:/v-machines/partimag /home/partimag" ocs_live_run="screen ocs-sr -g auto -e1 auto -e2 -c -r -j2 -k -p reboot restoreparts ask_user" ocs_live_extra_param="" ocs_live_batch="no" union=overlay noswap noprompt vga=788 fetch=tftp://192.168.3.201/clonezilla_ubuntu/filesystem.squashfs ocs_daemonon="ssh" nfsroot=192.168.3.220:/home/nfsroot/clonezilla_ubuntu keyboard-layouts=de locales=de_DE.UTF-8