Jak rozszerzyć volume w systemie Linux na NSIS
Istnieje możliwość rozszerzenia volume z poziomu pulpitu nawigacyjnego Horizon.
Inną metodą jest utworzenie nowego volume, dołączenie go do maszyny wirtualnej, skopiowanie wszystkich danych ze starego volume do nowego, sprawdzenie, czy wszystkie dane zostały poprawnie skopiowane, a następnie odłączenie i usunięcie starego volume. Nie wszystkie systemy plików mają możliwość zmiany rozmiaru.
Ostrzeżenie
Zdecydowanie zaleca się wykonanie kopii zapasowej volume poprzez utworzenie volume snapshot przed przystąpieniem do rozszerzania volume.
Ostrzeżenie
Jeśli masz volume < 2 TB i chcesz go rozszerzyć powyżej 2 TB, nie postępuj zgodnie z poniższymi instrukcjami. Zamiast tego utwórz nowy volume i sformatuj go zgodnie z innym artykułem: Jak dołączyć volume do maszyny wirtualnej o rozmiarze większym niż 2 TB w systemie Linux na NSIS, dołącz go do maszyny wirtualnej, skopiuj dane ze starego volume na nowy, sprawdź czy są w pełni skopiowane, odłącz i usuń stary volume.
Aby wykonać kopię zapasową volume, można skorzystać z poniższego przewodnika: /datavolume/How-to-create-volume-Snapshot-and-attach-as-Volume-on-Linux-or-Windows-on-NSIS-Cloud
Rozmiar volume:.
W tym samouczku zmienimy rozmiar volume z 1 GB na 5 GB.
Najpierw musimy rozszerzyć volume w Horizon.
Załóżmy, że mamy volume 1 GB dołączony do naszej instancji jako /dev/vdb:
Mamy go zamontowanego w naszym komputerze z systemem Linux jako /dev/vdb1:
eouser@vm-john-01:~$ df -kh
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 394M 640K 393M 1% /run
/dev/vda1 15G 2.7G 12G 19% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
tmpfs 394M 0 394M 0% /run/user/1001
tmpfs 394M 0 394M 0% /run/user/1000
/dev/vdb1 991M 2.6M 922M 1% /my_volume
Mamy już pewne dane, których nie chcemy stracić.
Najpierw musimy odmontować go w systemie Linux:
eouser@vm-john-01:~$ sudo umount /dev/vdb1
Następnie odłącz go w Horizon, klikając „Manage Attachments” > „Detach Volume”:
Po odłączeniu dostępna będzie opcja „Extend Volume”.
Wprowadzamy nowy rozmiar, na przykład 5 GB i klikamy „Extend Volume”:
Nasz nowy volume ma teraz rozmiar 5 GB. Podłącz go ponownie do swojej maszyny wirtualnej. Następnie musimy rozszerzyć partycję /dev/vdb w systemie Linux.
Rozszerz zmodyfikowaną partycję za pomocą growpart (i zwróć uwagę na nietypową składnię oddzielania nazwy urządzenia od numeru partycji):
eouser@vm-john-01:~$ sudo growpart /dev/vdb 1
CHANGED: partition=1 start=2048 old: size=2095104 end=2097152 new: size=10483679 end=10485727
Następnie użyj resize2fs:
eouser@vm-john-01:~$ sudo resize2fs /dev/vdb1
resize2fs 1.45.5 (07-Jan-2020)
Please run 'e2fsck -f /dev/vdb1' first.
W większości przypadków system zaleci sprawdzenie systemu plików.
eouser@vm-john-01:~$ sudo e2fsck -f /dev/vdb1
e2fsck 1.45.5 (07-Jan-2020)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/vdb1: 11/65536 files (0.0% non-contiguous), 8859/261888 blocks
Po wykonaniu e2fsck kontynuujemy rozszerzanie partycji:
eouser@vm-john-01:~$ sudo resize2fs /dev/vdb1
resize2fs 1.45.5 (07-Jan-2020)
Resizing the filesystem on /dev/vdb1 to 1310459 (4k) blocks.
The filesystem on /dev/vdb1 is now 1310459 (4k) blocks long.
Możemy teraz ponownie zamontować nasz rozszerzony volume.
eouser@vm-john-01:~$ sudo mount /dev/vdb1
eouser@vm-john-01:~$ sudo df -kh
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 394M 640K 393M 1% /run
/dev/vda1 15G 2.7G 12G 19% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
tmpfs 394M 0 394M 0% /run/user/1001
tmpfs 394M 0 394M 0% /run/user/1000
/dev/vdb1 5.0G 4.0M 4.7G 1% /my_volume
Nowy rozmiar wynosi teraz 5 GB, a dane, które były tam wcześniej, są nienaruszone.