Hej, postawiłem kiedyś virtualbox maszyne z linuxem i stworzyłem dysk dynamiczny do 100GB, był czas że na tej maszynie trzymałem 80GB danych i tak się powiększył ten dysk, teraz dosłownie cała maszyna zajmuję 10GB a widnieje cały czas zajętość 80GB (z pozycji) Windows jak w prosty sposób zaktualizować/pomniejszyć do prawdziwych rozmiarów ten wirtualny dysk :
System gospodarza to Windows 10, system gościa (wirtualka) Linux Ubuntu
Nie pomniejszysz dysku. Dynamiczny dysk zmienia swój rozmiar tylko w jedną stronę.
Jeśli ci to przeszkadza, to pozostaje - albo postawienie nowej maszynki - albo podmontowanie nowego dysku, zmigrowanie Ubuntu i wywalenie starego.
vBoxmanage.exe modifymedium z tego co pamiętam. Pierwsze z google:
@blumberplumber praktycznie w każdym środowisku wirtualizacyjnym jest to do wykonania na offlinowej maszynie (wyłączonej). W vmware jest np. vmkfstools z przełącznikiem -K.
Zawsze jest opcja ‘na około’, czyli V2V, lub klon maszyny.
Też liczyłem na klon ale podczas klonowania w Virtualbox nie mozna zmienić rozmiaru dysku.
O ile dobrze pamiętam gdzieś czytałem, że nie można wprost zmniejszyć wirtualnego dysku w VirtualBox. Co zrobić?
Do tej samej maszyny wirtualnej dodać nowy dysk i utworzyć na nim taki sam układ partycji jak na poprzednim ( “/” i “/home” jeśli miałeś wydzielone). Potem uruchamiasz maszynę z livecd i na przykład przy pomocy rsync kopiujesz zawartość jednego dysku na drugi z zachowaniem partycji, itd. Po skopiowaniu dysku “starego” dysku nie usuwaj a odłącz z maszyny wirtualnej i usuń ze znanych nośników (nie usuwaj fizycznie w razie WU). Następnie przy pomocy livecd pozmieniaj UUID partycji na nowym dysku na dokładnie takie same jak na starym dysku
LUB / ALBO
wykorzystując chroot zaloguj się do “sklonowanego” systemu, uaktualnij UUID w pliku /etc/fstab i uaktualnij program rozruchowy Grub2.
Jeśli maszyna wirtualna była instalowana w trybie UEFI pamiętaj, żeby przed kopiowaniem rsync podmontować /boot/efi i obowiązkowo /sys/firmware/efi/efivars/ z opcją --bind.
Jak wykonać backup systemu przy pomocy rsync?
https://wiki.archlinux.org/index.php/rsync#Full_system_backup .
W tym przypadku trzeba dostosować CEL zapisu dla rsync, czyli /path/to/backup.
Jeśli nie chcesz wchodzić w szczegóły zainstaluj system od nowa na nowym mniejszym dysku
Zastanawiam się, czy nie wystarczy użyć przełącznika --compact
dla wybranego dysku? (vboxmanage)?
Tak jak @anon741072 zauważył, możesz uzyć --compact
ale najpierw musisz wyzerować wolną przestrzeń. Dokładna procedura opisana tutaj (@bachus podał stronę, która opisuje praktycznie to samo. Jedyna różnica to start Linux w trybie recovery, co jest dosyć wygodne a tutaj mamy procedurę w normalnie uruchomionej maszynie z przejściem do single-user mode
i przemontowaniem zerowanej partycji w tryb tylko do odczytu):
Polecają użyć programu
zerofree
zamiast dd
. Program Zerofree
wypełni wolną przestrzeń zerami a dd
zrobi to samo ale przy okazji rozciągnie dysk do maksimum. Z dd
jest taki plus, że można odpalić je od ręki na działającym systemie bez potrzeby przemontowania partycji w tryb ro i single-user mode
. Oczywiście po kompaktowaniu w obu przypadkach rezultat będzie identyczny.
W tym przypadku kompaktowanie można przeprowadzić na uruchomionej maszynie? Nie jestem pewien, ktoś sprawdzi?