Wie gebe ich eine Partition unter VMWare wieder frei?

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Plusquamperfekt
Beiträge: 12
Registriert: 05.01.2012 15:44:08

Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von Plusquamperfekt » 21.08.2014 16:31:25

Hallo zusammen,

ich wollte eine nicht mehr benötigte Partition meines Debian Systems freigeben.
Die Partition ist gelöscht, nicht mehr gemounted und frei.

VMWare zeigt aber immer noch die alte Größe der gesamten VM an und ich weiss
nicht, wie ich die VM wieder schrumpfen kann.

Jemand eine Idee?

Danke!

Colttt
Beiträge: 2987
Registriert: 16.10.2008 23:25:34
Wohnort: Brandenburg
Kontaktdaten:

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von Colttt » 21.08.2014 20:55:30

Ist die partition auch eine extra virtuelle platte?
Debian-Nutzer :D

ZABBIX Certified Specialist

Plusquamperfekt
Beiträge: 12
Registriert: 05.01.2012 15:44:08

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von Plusquamperfekt » 21.08.2014 21:23:14

Ja, eine virtuelle Platte (also eine Partition innerhalb der VM).

/dev/sda2 ist leer, wird nicht mehr gebraucht und soll wieder frei gegeben werden, so dass
das Host System wieder gut 20GByte mehr Plattenplatz kriegt.

Läuft nämlich auf einer SSD und da wird der Platz gerade knapp. :|

Code: Alles auswählen

root@kali:/# fdisk /dev/sda

Command (m for help): p

Disk /dev/sda: 53.7 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders, total 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000410da

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    60262399    30130176   83  Linux
/dev/sda2        60262400   102000639    20869120   83  Linux
/dev/sda3       102000640   104857599     1428480    5  Extended
/dev/sda5       102002688   104857599     1427456   82  Linux swap / Solaris


owl102

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von owl102 » 21.08.2014 21:35:17

Plusquamperfekt hat geschrieben:/dev/sda2 ist leer, wird nicht mehr gebraucht und soll wieder frei gegeben werden, so dass
das Host System wieder gut 20GByte mehr Plattenplatz kriegt.
/dev/sda2 aushängen, zerofree darüber jagen [1] und anschließend die VM beenden. Dann kann man mit den in VMware integrierten Tools die virt. Platte aufräumen, frag mich aber bitte nicht, wie der Knopf dafür genau lautet, "Tools" und dann "Compact"? (Du wirst ihn schon finden...)

Ich hoffe der Platz auf deiner SSD ist nicht zu knapp, denn ansonsten wird das "Compact" nicht funktionieren, weil er temporär den Platz sowohl für die alte virt. Platte als auch für die neue braucht, bevor er die alte löscht. (VMware wird sich dann aber schon beschweren, Versuch macht kluch.)

[1] "umount /dev/sda2" und "apt-get install zerofree" und "zerofree /dev/sda2"

P.S.: Leider hast du nicht dazugeschrieben, welches VMware du hast, ich bin jetzt einfach 'mal von "Player" oder "Workstation" ausgegangen, bei einem ESXi (oder auf neuenglisch "vSphere Hypervisor") klappt das natürlich so nicht.
Zuletzt geändert von owl102 am 22.08.2014 08:52:04, insgesamt 1-mal geändert.

Plusquamperfekt
Beiträge: 12
Registriert: 05.01.2012 15:44:08

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von Plusquamperfekt » 21.08.2014 21:52:21

Ach so, tschullijung... ist VMWare Fusion.

owl102

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von owl102 » 22.08.2014 08:50:55

Plusquamperfekt hat geschrieben:Ach so, tschullijung... ist VMWare Fusion.
Dort sollte es auch passende Optionen geben: http://pubs.vmware.com/fusion-6/topic/c ... C8B0D.html ("Bereinigen einer virtuellen Festplatte")

Vielleicht ist in dieser Funktionalität auch das zerofree enthalten, wage ich aber zu bezweifeln. (Zumindest der Player und Workstation können AFAIK nur Windows-Partitionen derart selbsttätig bereinigen.) Das zerofree vorher selber manuell auszuführen kann aber logischerweise auf keinen Fall schaden.

Plusquamperfekt
Beiträge: 12
Registriert: 05.01.2012 15:44:08

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von Plusquamperfekt » 22.08.2014 11:07:12

Danke, werde ich gleich mal testen! :THX:

---> Funktioniert leider nicht. VMWare Fusion erkennt nicht, dass es eine gesamte freie Partition in der VM gibt und ich kann keine Bereinigung wählen.

DeletedUserReAsG

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von DeletedUserReAsG » 22.08.2014 21:22:43

Die Partition ans Ende der virtuellen Platte zu schieben und anschließend zu löschen hast du schon versucht? Ich meine, dass es eine vorhandene, wenn auch leere, Partition nicht als freien Platz interpretiert und von sich aus freigibt, erscheint zumindest mir recht logisch.

owl102

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von owl102 » 23.08.2014 13:37:10

Plusquamperfekt hat geschrieben:VMWare Fusion erkennt nicht, dass es eine gesamte freie Partition in der VM gibt und ich kann keine Bereinigung wählen.
Ich bin nicht ganz up-to-date, was die VMware Produkte angeht, aber vor ein paar Jahren war es zumindest noch so, daß keine Partitionen und gar nichts erkannt wurde, wozu auch. Eine dynamisch wachsende Platte fängt bei 0 an, bei jedem Sektor, der von der virt. Platte gelesen wird, wird entweder der Sektor gelesen (sofern in der Datei=virt. Platte vorhanden) oder ein leerer Sektor voller Nullen zurückgeliefert (sofern in der Datei noch nicht vorhanden). Wird ein Sektor geschrieben, der nicht nur aus Nullen besteht, hat VMware geschaut, ob es den Sektor in der Datei schon gibt. Wenn ja, dann wird er überschrieben, wenn nein, hinten angehängt und damit die Datei größer. Wird ein Sektor geschrieben, der nur aus Nullen besteht, hat VMware geschaut, ob es den Sektor in der Datei schon gibt. Wenn ja, wird er überschrieben bzw. als "leer" markiert, wenn nein, passiert gar nichts.

Und was macht(e) VMware bei "Compact"? Ganz einfach, es hat alle als leer markierten Sektoren aus der Datei entfernt.

Auf genau dieser Strategie bauen Tools wie zerofree (Linux) und sdelete (Windows) auf: Sie beschreiben alle unbenutzten Sektoren mit Nullen, damit das "Compact" von VMware Player/Workstation anschließend greift.

AFAIK hat VMware mittlerweile das "Compact" dahingehend verbessert, daß für Windows-Partitionen kein sdelete mehr notwendig ist, das macht er wohl intern selber.

Wenn sich VMware Fusion gänzlich anders verhält als der VMware Player/Workstation, dann wundert mich das, kann aber gut sein, da ich VMware Fusion überhaupt nicht kenne.

Dabei fällt mir auf, daß ich stillschweigend davon ausgegangen bin, daß du eine dynamisch wachsende virt. Platte verwendest. Ist das der Fall, oder hast du beim Anlegen der virt. Platte die Option gewählt, daß die virt. Platte gleich komplett belegt werden soll?

Colttt
Beiträge: 2987
Registriert: 16.10.2008 23:25:34
Wohnort: Brandenburg
Kontaktdaten:

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von Colttt » 23.08.2014 20:12:32

Ok, wenn du die platte auch in Linux ausgegangen hast(fstab) dann Maschine herunter fahren. Dann in VMware auf die VM gehen dort unter Einstellungen müsstest du auch die platte sehen diese markieren und entfernen. Somit ist die platte der VM nicht mehr zugewiesen. Jetzt nur noch prüfen ob die platte noch existiert, dazu auf den host markieren und rechts Datenspeicher mit der rechten Maustaste auf Datenspeicher öffnen (oder durchsuchen?) gehen dann zu deiner VM durch hangeln und prüfen ob die Datei noch da ist wenn ja löschen.. Aber Achtung nicht die falsche löschen!

PS: das bezieht sich alles auf VMware ESXi vcenter..
Debian-Nutzer :D

ZABBIX Certified Specialist

Plusquamperfekt
Beiträge: 12
Registriert: 05.01.2012 15:44:08

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von Plusquamperfekt » 02.09.2014 09:20:19

Danke für Eure Tipps. Klappten leider alle nicht mit der VMware Fusion Version. :-(

owl102

Re: Wie gebe ich eine Partition unter VMWare wieder frei?

Beitrag von owl102 » 04.09.2014 08:26:57

Dann macht man es eben zur Not so, wie man es bei einem realen Rechner machen würde: Sicherheitshalber ein Backup machen, kleinere Platte einbauen (d.h. unter VMware anlegen), Systemrescuecd oder ähnliches booten, die Partitionen von der großen zur kleinen Platte kopieren (z.B. mit GParted), die große Platte ausbauen (d.h. unter VMware aushängen), das System mit der SuperGrub2Disk booten, Grub2 installieren, fertig. Wenn alles funktioniert, kann die große Platte entgültig gelöscht werden.

Antworten