Live rescue image für VM?

ClusterX

Member
Apr 12, 2018
49
3
13
53
ich habe vorhin ein LinuxMint iso hochgeladen um es als rescue System für die VM verwenden zu können, die ISO booted problemlos aber hier erscheinen dann Medlungen keine Rechte oder wird heruntergefahren etc.

Wir macht ihr das bzw. welche CD ist am besten geeignet und wie richtet man das rescue System am besten ein?
 
Also grafisch nehm ich immer ein selbst gebautes Xubuntu. Da dieser Destkop keine grafisch großen Anforderungen hat. Ansonsten Clonezilla ist ganz nett, und auch SytemRescueCD.
 
  • Like
Reactions: ClusterX
Man kann auch - je nach verwendetem Storage (RAW,LVM,ZVOL,RBD) - gleich das PVE-System als Rescue nutzen und die Partitionen direkt mittels kpartx sichtbar machen und mounten. Dann kann man alles fixen was will und sogar mittels chroot oder besser gleich unshare in das System reinwechseln.
 
  • Like
Reactions: ClusterX and fireon
Man kann auch - je nach verwendetem Storage (RAW,LVM,ZVOL,RBD) - gleich das PVE-System als Rescue nutzen und die Partitionen direkt mittels kpartx sichtbar machen und mounten. Dann kann man alles fixen was will und sogar mittels chroot oder besser gleich unshare in das System reinwechseln.
Sag, könntest das event. anhand von Beispielen per die Formate beschreiben? Hab das gerade mal hier ZFS probiert. Scheint wohl nicht so einfach zu sein.
Code:
zfs mount ssd-pool/SSD-vmdata-KVM/vm-107-disk-1
cannot open 'ssd-pool/SSD-vmdata-KVM/vm-107-disk-1': operation not applicable to datasets of this type
Mit qcow2 ist's ja kein Problem. Aber meist haben wir ja LVM-Thin oder ZFS.
 
Gerne, hier ein etwas anderes Beispiel zum Mounten und Reinwechseln in ein RPi-Image, dass im ZFS liegt (also keinen direkten PVE-Bezug, außer, dass es auf einem PVE stattfindet), aber sollte klar sein was "drumherum" abgeht.

Code:
#!/bin/bash

set -x

NAME=raspbian-stretch
SUBPOOL=raspberry-pi
ZVOL=/dev/zvol/zpool/$SUBPOOL/$NAME
MNT=/zpool/$SUBPOOL/$NAME/mnt/
QEMU_BIN=qemu-arm-static

mkdir -p $MNT

kpartx -a -v $ZVOL
sleep 2

mount /dev/mapper/${NAME}2 $MNT
mkdir -p $MNT/boot
mount /dev/mapper/${NAME}1 $MNT/boot

cp /usr/bin/$QEMU_BIN $MNT/usr/bin/
unshare-chroot $MNT

rm $MNT/usr/bin/$QEMU_BIN

umount -f $MNT/boot
umount -f $MNT

kpartx -d $ZVOL

Das unshare-chroot-Programm ist ein eigenes, dass neben viel Fehlerbehandlung folgendes macht:
  • Backup /etc/resolv.conf und ersetzen durch die von Host
  • Erstellen /etc/ld.so.preload für PI-Emulator (für dich wahrscheinlich nicht zutreffend)
  • /etc/mtab entfernen und Link zu /proc/mounts anlegen
  • Verwendete SHELL rausfinden und in Umgebung speichern
und folgendes Absetzen:

Code:
mount -t sysfs -o ro sys ${CHROOT}/sys
mount -o bind /dev ${CHROOT}/dev
mount -o remount,ro,bind /dev ${CHROOT}/dev
unshare --fork --uts --pid chroot $CHROOT $SHELL -c "mount -t proc proc /proc && hostname -F /etc/hostname && exec $SHELL"

und beim Beenden der Shell wird die vorher umgebaute Umgebung wieder zurückggebaut.
 
  • Like
Reactions: fireon

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!