Guten Tag,
Ich nutze VMWare 5.5.1. Darin läuft ein Debian Sarge 3.1. Die vmdk ist independent-persistent und mittlerweile 46GB groß obwohl sich nur noch ~15GB Daten darin befinden.
Zu Backupzwecken wollte ich nun folgendermassen vorgehen. vmdk an einen anderen Ort kopiert und unter XP-ProSP2 folgendes machen:
1. vmware-vdiskmanager -d zum defragmentieren -- ist erfolgreich durchgelaufen
2. vmware-vdiskmanager -k zum shrinken -- ist durchgelaufen aber Ergebnis ist wieder 46GB ????
3. vmware-vdiskmanager -r disk.vmdk -t 1 new.vmdk um in 2GB Häppchen zu teilen -- geht auch.
Mein Problem ist nun Schritt 2. Warum wird die vmdk nicht kleiner? Partitionierung im Debian Gast sieht so aus:
Dateisystem Größe Benut Verf Ben% Eingehängt auf
/dev/sda1 4,6G 1,3G 3,2G 29% /
tmpfs 227M 0 227M 0% /dev/shm
/dev/mapper/daten 92G 13G 75G 15% /daten
daten ist mit dmcrypt verschlüsselt, also dachte ich das es daran liegt und habe auf dem Gast xserver usw installiert um die vmware-tools nutzen zu können während das cryptofs eingehängt ist, aber auch das brachte keine verkleinerung der vmdk.
Mache ich da irgendeinen Denkfehler oder warum bleibt die vmdk immer bei 46GB?
Die Foren-SW läuft ohne erkennbare Probleme. Sollte doch etwas nicht funktionieren, bitte gerne hier jederzeit melden und wir kümmern uns zeitnah darum. Danke!
Shrink verkleinert vmdk nicht?!
Mal wieder kann ich nichts genaues sagen sondern nur vermuten.
Was tut denn "Shrink"? Um alle "leeren Bereiche" entfernen zu können, muss VMWare diese auch erkennen. Ein verschlüsseltes Dateisystem hat in der Regel die Eigenschaft, über den kompletten Bereich "sehr zufällig" auszusehen. Einer der Schutzeigenschaften ist eben, dass ein Angreifer nicht einmal sieht, wo auf der Platte sich Daten befinden, die sich evtl zu entschlüsseln lohnen. So wird auch VMWare nicht sehen können, welche Bereiche nun belegt (sinnvoll beschrieben) und welche leer (im Fall eines verschlüsselten Dateisystems eben "sinnlos beschrieben") sind.
Ich denke, dass ein verschlüsseltes Dateisystem nicht verkleinert werden kann. Auch kann aufgrund der Natur von "annähernd zufälligen Daten" ein Kompressionsalgorithmus vermutlich nicht all zu viel reißen.
Was tut denn "Shrink"? Um alle "leeren Bereiche" entfernen zu können, muss VMWare diese auch erkennen. Ein verschlüsseltes Dateisystem hat in der Regel die Eigenschaft, über den kompletten Bereich "sehr zufällig" auszusehen. Einer der Schutzeigenschaften ist eben, dass ein Angreifer nicht einmal sieht, wo auf der Platte sich Daten befinden, die sich evtl zu entschlüsseln lohnen. So wird auch VMWare nicht sehen können, welche Bereiche nun belegt (sinnvoll beschrieben) und welche leer (im Fall eines verschlüsselten Dateisystems eben "sinnlos beschrieben") sind.
Ich denke, dass ein verschlüsseltes Dateisystem nicht verkleinert werden kann. Auch kann aufgrund der Natur von "annähernd zufälligen Daten" ein Kompressionsalgorithmus vermutlich nicht all zu viel reißen.
- continuum
- UNSTERBLICH(R.I.P.)
- Beiträge: 14759
- Registriert: 09.08.2003, 05:41
- Wohnort: sauerland
- Kontaktdaten:
wie soll shrink in der suppe zwischen sinnvollen daten und dem salt unterscheiden?
Genau fuer diesen Zweck schreibt man eine wiper-file - dass macht man im Gast selber (oder vom Host aus - wenn dieser das Dateisystem des Gasts beherrscht)
Mit der wiperfile wird dann das unrefernzierte Datengehacksel ueberschrieben - uebrig bleiben dann grosse Inseln mit Nullen - diese koennen dann von Shrink erkannt werden.
Es gibt verschiedene Varianten zur Erstellung der Wiperfile - beim vdiskmanager nimmt man "-p"
Ulli
@continuum
Wie bewerkstellige ich das den auf dem Gast wenn dieser wie in meinem Fall Debian ist? Selbst wenn ich xserver installiere und die vmware-tools für linux installiere habe ich ja dann lediglich dieses eine Tool aber keinen vdiskmanager.
Und unter meinem XP host kann ich die cryptet partition nicht mounten.
Also wie soll ich dieses wiperfile unter der vmware erstellen während die cryptet part. eingehängt ist?
Wie bewerkstellige ich das den auf dem Gast wenn dieser wie in meinem Fall Debian ist? Selbst wenn ich xserver installiere und die vmware-tools für linux installiere habe ich ja dann lediglich dieses eine Tool aber keinen vdiskmanager.
Und unter meinem XP host kann ich die cryptet partition nicht mounten.
Also wie soll ich dieses wiperfile unter der vmware erstellen während die cryptet part. eingehängt ist?
als root
dd if=/dev/zero of=/wiperfile bs=1024 count=X
rm /wiperfile
wobei X die Anzahl der freien Blöcke auf der Platte / ist. Für andere Partitionen ist das dann zu wiederholen und danach ist ein "defrag" oder "shrinkt" mit dem vdiskmanager zu machen, was Du oben bereits getan hattest.
Link: http://vmware-forum.de/viewtopic.php?t= ... =wiperfile
dd if=/dev/zero of=/wiperfile bs=1024 count=X
rm /wiperfile
wobei X die Anzahl der freien Blöcke auf der Platte / ist. Für andere Partitionen ist das dann zu wiederholen und danach ist ein "defrag" oder "shrinkt" mit dem vdiskmanager zu machen, was Du oben bereits getan hattest.
Link: http://vmware-forum.de/viewtopic.php?t= ... =wiperfile
Vielen Dank für eure Tips, aber es geht nicht, warum auch immer.
Zuerst habe ich auf dem gast das mit dem wiperfile gemacht auf der root Partition und dann auf der gecrypteten. Danach startx die vmare-toolbox gestartet und shrink angeklickt......46GB also keine Veränderung.
Dann habe ich die cryptet Partition gelöscht und eine neue leere unverschlüsselte erstellt, aber auch dann wurde die vmdk beim shrinken nicht kleiner....also ich verstehe wirklich nicht was ich falsch mache??
Zuerst habe ich auf dem gast das mit dem wiperfile gemacht auf der root Partition und dann auf der gecrypteten. Danach startx die vmare-toolbox gestartet und shrink angeklickt......46GB also keine Veränderung.
Dann habe ich die cryptet Partition gelöscht und eine neue leere unverschlüsselte erstellt, aber auch dann wurde die vmdk beim shrinken nicht kleiner....also ich verstehe wirklich nicht was ich falsch mache??
auch das habe ich probiert, funktioniert aber leider auch nicht.
Was mich eben stutzig macht das auch nichts geshrinkt wird wenn die cryptet Partition gelöscht und eine neue formatierte leere nicht gecryptete Partition angelegt wird und ich dann unter dem wxp host vdiskmanager -k disk.vmdk ausführe bereits nach wenigen minuten die temp vmdk >5GB ist obwohl nur noch effektiv 1,3GB auf der originalen vmdk vorhanden sind.
Was mich eben stutzig macht das auch nichts geshrinkt wird wenn die cryptet Partition gelöscht und eine neue formatierte leere nicht gecryptete Partition angelegt wird und ich dann unter dem wxp host vdiskmanager -k disk.vmdk ausführe bereits nach wenigen minuten die temp vmdk >5GB ist obwohl nur noch effektiv 1,3GB auf der originalen vmdk vorhanden sind.
Hallo,
Du hast also alle Partitionen genullt? Ja? Das Vorgehen muß für alle Mount-Points durchgeführt werden.
Bei trustix und Solaris funktioniert das prima. Es hängt natürlich dennoch davon ab, das vdiskmanager die genullten Blöcke auch als solche erkennt. Eine "verschlüsselte" Partition ist natürlich so nicht zu überlisten.
Wenn Du die verschl. Part. zunächst löscht, dann das Wiperfile erstellt, das wieder löscht und dann schrumpfst, könnte es gehen.
Ich bin aber inzwischen von dyn. wachsenden Part. abgekommen und nutze lieber kleine vorallokierte Partitionen in der Größe, wie man sie später braucht. Die verschlüsselte Part. würde sich an Deiner Stelle auf eine 2. Platte mit ca. 16GB vorallokiertem Platz legen.
Grüße, Martin
Du hast also alle Partitionen genullt? Ja? Das Vorgehen muß für alle Mount-Points durchgeführt werden.
Bei trustix und Solaris funktioniert das prima. Es hängt natürlich dennoch davon ab, das vdiskmanager die genullten Blöcke auch als solche erkennt. Eine "verschlüsselte" Partition ist natürlich so nicht zu überlisten.
Wenn Du die verschl. Part. zunächst löscht, dann das Wiperfile erstellt, das wieder löscht und dann schrumpfst, könnte es gehen.
Ich bin aber inzwischen von dyn. wachsenden Part. abgekommen und nutze lieber kleine vorallokierte Partitionen in der Größe, wie man sie später braucht. Die verschlüsselte Part. würde sich an Deiner Stelle auf eine 2. Platte mit ca. 16GB vorallokiertem Platz legen.
Grüße, Martin
So ich besorge mir gerade ein neues Backup der vmdk, dauert ein bissi übers netzwerk bei 46GB wenn einem nur 100mBit zur Verfügung stehen
Ich werde dann nochmal folgendermassen vorgehen:
1. Die cryptet Partition komplett löschen
2. Eine neue nicht gecryptete partition anlegen
3. Diese wird dann ext3 formatiert und eingehängt
4. root partition nullen
5. neue leere partition nullen (zur sicherheit)
6. vm runterfahren und per vdiskmanager das shrinken starten
Wenn ich das so mache MUSS es doch formatieren?
Vielen Dank übrigends nochmal für deine Zeit und deine Ausführungen.
Ich glaube ich habe da damals wohl in der Tat einen Fehler begangen mit der wachsenden vmdk und nun muss ich dafür bezahlen *g*
Ich werde dann nochmal folgendermassen vorgehen:
1. Die cryptet Partition komplett löschen
2. Eine neue nicht gecryptete partition anlegen
3. Diese wird dann ext3 formatiert und eingehängt
4. root partition nullen
5. neue leere partition nullen (zur sicherheit)
6. vm runterfahren und per vdiskmanager das shrinken starten
Wenn ich das so mache MUSS es doch formatieren?
Vielen Dank übrigends nochmal für deine Zeit und deine Ausführungen.
Ich glaube ich habe da damals wohl in der Tat einen Fehler begangen mit der wachsenden vmdk und nun muss ich dafür bezahlen *g*
So ich wollte nochmal einen Bericht abgeben wie ich das nun alles gelöst habe.
Ich habe mir eine neue vmdk erstellt (jetzt auch in 2GB Happen) und darauf meine root Partition geklont.
Dann eine weitere welche nun mein cryptet fs enthält und auch dorthin den Inhalt geklont.
Nun wird es mir zwar immer noch passieren das die cryptet vmdk anschwillt im laufe der zeit, aber dann kann ich sie nach einem Backup problemlos löschen schnell neu erstellen und daten wieder drauf.
Ich denke das ist die komfortabelste Lösung wenn man ein cryptet fs unter Vmware nutzt!
Ich habe mir eine neue vmdk erstellt (jetzt auch in 2GB Happen) und darauf meine root Partition geklont.
Dann eine weitere welche nun mein cryptet fs enthält und auch dorthin den Inhalt geklont.
Nun wird es mir zwar immer noch passieren das die cryptet vmdk anschwillt im laufe der zeit, aber dann kann ich sie nach einem Backup problemlos löschen schnell neu erstellen und daten wieder drauf.
Ich denke das ist die komfortabelste Lösung wenn man ein cryptet fs unter Vmware nutzt!
Zurück zu „VMware Workstation und VMware Workstation Pro“
Wer ist online?
Mitglieder in diesem Forum: Google [Bot] und 17 Gäste