Odpowiedzi:
Nie będziesz mógł korzystać z GParted, ponieważ system plików jest na LVM, a GParted nie obsługuje tego.
Najpierw Zrób kopię zapasową maszyny wirtualnej. Następnie wykonaj następujące czynności jako „root” z wiersza poleceń.
Wygląda na to, że już się zrestartowałeś, ale na wszelki wypadek upewnij się, że jądro rozpoznaje większy dysk
echo 1 > /sys/class/scsi_disk/0:0:0:0/device/rescan
Zmień rozmiar drugiej partycji za pomocą fdisk
fdisk /dev/sda
p # print current
d # delete
- 2
n # create
- p # primary partition
2 # partition number
- default first/last cylinders
t # change partition id
- 2
- 8e (hex code)
p # print the current again to verify it's expanded
w # write changes
Uruchom ponownie maszynę wirtualną
shutdown -r now
Po utworzeniu kopii zapasowej zmień rozmiar woluminu fizycznego LVM
pvresize /dev/sda2
Teraz zmień rozmiar woluminu logicznego LVM ( UWAGA: Nie jestem w stanie odszyfrować nazwy twojego woluminu logicznego na podstawie zrzutów ekranu i dlatego zakładam LogVol00
. Możesz to ustalić, uruchamiając lvdisplay
.)
lvresize -l +100%FREE /dev/VolGroup00/LogVol00
Wreszcie pozwala zmienić rozmiar systemu plików
resize2fs -p /dev/VolGroup00/LogVol00
Sprawdź, czy system plików jest większy
df -h
Gotowy
dmesg
aby potwierdzić, że dysk jest widziany jako nowy rozmiar
Poniższe kroki rozszerzyły moją partycję z 12G do 26GB na VMWare EXSi 5.5 z systemem Centos 6 EXT4 VPS.
1) Zidentyfikuj nazwę urządzenia, która jest domyślnie / dev / sda, i potwierdź nowy rozmiar, uruchamiając polecenie:
# fdisk -l
2) Uzyskaj listę partycji dla urządzenia / dev / sda:
# ls -al /dev/sda*
brw-rw---- 1 root disk 8, 0 Dec 29 15:32 /dev/sda
brw-rw---- 1 root disk 8, 1 Dec 29 15:32 /dev/sda1
brw-rw---- 1 root disk 8, 2 Dec 29 15:32 /dev/sda2
3) Utwórz nową partycję podstawową
# fdisk /dev/sda
Then type:
n (enter) [create new partition]
p (enter) [primary partition]
3 (enter) [next available number from listed /dev/sda partitions in 2)
(enter) [start cylinder]
(enter to use all available physical space) or specify size in +cylinders, +size{K,M,G}
t (enter) [change partition type]
3 (enter) [selecting /dev/sda3 partition]
8e (enter) [this sets partition type to Linux LVM or type L then enter to see list of types]
w (enter)
The partition table has been altered!
4) Uruchom ponownie Centos 6.X, a następnie zaloguj się ponownie z uprawnieniami administratora
# reboot
5) Sprawdź, czy nowa partycja jest gotowa i wpisz „8e”:
# fdisk -l
Device Boot Start End Blocks Id System
/dev/sda1 * 1 64 512000 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 64 2089 16264192 8e Linux LVM
/dev/sda3 2089 3916 14678054 8e Linux LVM
6) Utwórz wolumin fizyczny:
# pvcreate /dev/sda3
Physical volume "/dev/sda3" successfully created
7) Znajdź nazwę grupy woluminów:
# vgdisplay
--- Volume group ---
VG Name vg_app1
...
8) Zwiększ objętość fizyczną:
# vgextend vg_app1 /dev/sda3
Volume group "vg_app1" successfully extended
9) Rozszerz istniejącą grupę woluminów na nowy wolumin fizyczny (+ 100% ZA DARMO można zmienić na pożądany rozmiar). Ponieważ rozszerzamy partycję root, wskazujemy na lv_root w grupie woluminów vg_app1.
# lvextend -l +100%FREE /dev/vg_app1/lv_root
Size of logical volume vg_app1/lv_root changed from 11.63 GiB (2978 extents) to 25.63 GiB (6561 extents).
Logical volume lv_root successfully resized
10) Zmień rozmiar logicznego woluminu głównego:
# resize2fs /dev/vg_app1/lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/vg_app1/lv_root is mounted on /; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/vg_app1/lv_root to 6718464 (4k) blocks.
The filesystem on /dev/vg_app1/lv_root is now 6718464 blocks long.
Uwaga: Użyj ext2online zamiast resize2fs, jeśli jest to maszyna wirtualna Red Hat.
11) Sprawdź dostępne miejsce:
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_app1-lv_root
26G 10G 14G 42% /
tmpfs 9.8G 0 9.8G 0% /dev/shm
/dev/sda1 477M 88M 364M 20% /boot
Łatwo. Przejdź do maszyny wirtualnej jako root. Wpisz „fdisk -l” - jeśli już widzisz nowy rozmiar dysku - dobrze.
Jeśli nie - spróbuj partprobe
- jeśli nadal nie widzisz nowego rozmiaru dysku - uruchom ponownie.
Teraz fdisk /dev/sda
partprobe
pvresize /dev/sda2
Teraz twoja VG VolGroup00 ma o 20 GB więcej miejsca. Rób z tym, co chcesz. Podobnie jak w przypadku systemu fizycznego (na przykład zmień rozmiar LV, a następnie zmień rozmiar FS).
Pobierz ISO CD Gparted na żywo . Następnie podłącz ISO do CentOS i uruchom z live CD (przejdź do ustawień maszyny wirtualnej, wybierz „CD / DVD” i wybierz „Użyj ISO” z panelu po prawej stronie). Następnie wybierz partycję, której rozmiar chcesz zmienić. Kliknij menu partycji (górny pasek menu), a następnie kliknij „Zmień rozmiar”. Następnie wybierz „Zastosuj wszystkie operacje” z menu „Edycja”.
Tutaj biorę przykładową partycję, aby powiększyć dysk z 5 GB do 7 GB bez utraty danych. Możesz zmienić w zależności od dostępnego wolnego miejsca.
Przed powiększeniem dysku wziąłem następujące szczegóły z maszyny wirtualnej z systemem Linux:
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 6.8G 2.1G 4.5G 32% /
/dev/sda1 99M 12M 83M 13% /boot
none 252M 0 252M 0% /dev/shm
/dev/sdb1 5.0G 39M 4.7G 1% /mnt/test
# fdisk -s /dev/sdb
Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 652 5237158+ 83 Linux
Zamknij maszynę wirtualną teraz.
Teraz zamierzam zwiększyć istniejący dysk wirtualny ( /dev/sdb
) z VMware z wiersza polecenia. Uwaga: to zadanie należy wykonać tylko po wyłączeniu maszyny wirtualnej.
Przejdź do lokalizacji lokalizacji dysku wirtualnego.
# vmware-vdiskmanager -x 7Gb RedHatEnterprise_Linux_4-0.vmdk
Teraz zwiększy dysk wirtualny do 7 Gb
Teraz musisz włączyć maszynę wirtualną. Zaloguj się do maszyny wirtualnej przy użyciu PuTTY lub konsoli jako użytkownik root.
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 6.8G 2.1G 4.5G 32% /
/dev/sda1 99M 12M 83M 13% /boot
none 252M 0 252M 0% /dev/shm
/dev/sdb1 5.0G 39M 4.7G 1% /mnt/test
Nadal pokazuje stary rozmiar. Odmontuj partycję, którą zamierzasz zwiększyć.
# umount /dev/sdb1
Uruchom naprawę systemu plików na dysku
# fsck -n /dev/sdb1
Teraz jesteśmy gotowi usunąć dziennik z dysku i przekształcić go w system plików ext2.
# tune2fs -O ^has_journal /dev/sdb1
Teraz rozpocznij partycjonowanie, /dev/sdb
aby przypisać zwiększone miejsce /dev/sdb1
. Uwaga: Nie panikuj, nie stracisz tutaj danych.
Usuwam istniejące /dev/sdb1
i odtwarzam wraz z dostępną wolną przestrzenią.
# fdisk /dev/sdb
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition’s system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): p
Disk /dev/sdb: 7516 MB, 7516192768 bytes
255 heads, 63 sectors/track, 913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 652 5237158+ 83 Linux
Command (m for help): d
Selected partition 1
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-913, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-913, default 913):
Using default value 913
Command (m for help): p
Disk /dev/sdb: 7516 MB, 7516192768 bytes
255 heads, 63 sectors/track, 913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 913 7333641 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
Teraz zrestartuj komputer z Linuksem, aby zastosować partycję (możemy również użyć partprobe
, jest absolutnie zalecane, aby ponownie uruchomić maszynę).
# shutdown now -r
Teraz jeszcze raz sprawdź rozszerzony system plików, jeśli pominiesz ten krok, resize2fs
polecenie zaleci jego uruchomienie.
# e2fsck -f /dev/sdb1
e2fsck 1.35 (28-Feb-2004)
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/sdb1: 13/655360 files (7.7% non-contiguous), 22121/1309289 blocks
Teraz zmień rozmiar systemu plików.
# resize2fs /dev/sdb1
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/sdb1 to 1833410 (4k) blocks.
The filesystem on /dev/sdb1 is now 1833410 blocks long.
Teraz sprawdź system plików.
# fsck -n /dev/sdb1
fsck 1.35 (28-Feb-2004)
e2fsck 1.35 (28-Feb-2004)
/dev/sdb1: clean, 13/917504 files, 30538/1833410 blocks
Teraz ponownie utwórz partycję w formacie ext3.
# tune2fs -j /dev/sdb1
tune2fs 1.35 (28-Feb-2004)
Creating journal inode: done
This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
Ponownie uruchom komputer z systemem Linux, aby skutecznie korzystać z systemu plików ext3.
# shutdown -r now
Jeszcze raz logujesz się do Linux-a przy użyciu wcześniejszych uprawnień roota. Teraz możesz znaleźć partycję powiększoną do 7 GB.
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 6.8G 2.1G 4.5G 32% /
/dev/sda1 99M 12M 83M 13% /boot
none 252M 0 252M 0% /dev/shm
/dev/sdb1 6.9G 39M 6.7G 1% /mnt/test
Właśnie to zrobiłem, w VMware, z CentOS 6.4. Odpowiedź nr 1 jest poprawna, ale brakuje mi jednego kroku, który odkryłem.
W Gparted moja również miała ikonę kłódki.
W wierszu z partycją, który ma ikonę kłódki, kliknij prawym przyciskiem myszy i wybierz „dezaktywuj”. To sprawia, że zamek znika.
Następnie możesz kliknąć prawym przyciskiem myszy i zmienić rozmiar partycji.
Następnie zastosuj zmianę.
Następnie kliknij prawym przyciskiem myszy i wybierz „aktywuj”.
Możesz zrobić kroki 5 i 6, aby być jednym, dodając -r
przełącznik do lvresize
. To lvresize
uruchomi się resize2fs
automatycznie z wymaganymi parametrami:
lvresize -r -l +100%FREE /dev/VolGroup00/LogVol00
W przypadku CentOS 6.6 na VMWare wykonałem następujące czynności, aby zwiększyć z 30 GB do 40 GB (uwaga: nie korzystałem z LVM, tylko zwykłe rodzime partycje linux (Id 83)):
UWAGA: Zrób kopię zapasową maszyny wirtualnej w pierwszej kolejności na wypadek utraty danych. Nie powinieneś tracić danych, jeśli wszystko pójdzie dobrze.
Informacje znalezione z kombinacji odpowiedzi na tej stronie i na http://positon.org/resize-an-ext3-ext4-partition
Innym podejściem jest utworzenie LVM obejmującego cały dysk zamiast partycji.
W takim przypadku możesz dodać dysk na gorąco, stosując następującą metodę
blockscan --rereadpt /dev/<PV disk
pvresize /dev/<PV disk>
# The associated VG is now resized
lvresize /dev/mapper/<LV> -r -l +100%FREE
fdisk
. Użyjpartprobe
tam. SCSI-rescan jest interesujące - czy działa na używanym dysku?