Bagaimana cara memperpanjang partisi CentOS 5 di VMware?


15

Saya memiliki mesin virtual CentOS 5 dan saya menambahkan 20GB lebih banyak ke ukuran disk. Bagaimana cara menginisialisasi dan memperluas ruang yang tersedia?

Saya mencoba memuat GParted juga, tetapi drive terkunci; bagaimana cara membukanya?

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

Jawaban:


25

Anda tidak akan dapat menggunakan GParted karena sistem file pada LVM dan GParted tidak mendukungnya.

Pertama, BACKUP OF THE VM. Kemudian lakukan hal berikut sebagai "root" dari baris perintah.

  1. Sepertinya Anda sudah memulai ulang tetapi untuk berjaga-jaga, pastikan kernel mengenali disk yang lebih besar

    echo 1 > /sys/class/scsi_disk/0:0:0:0/device/rescan
    
  2. Ubah ukuran partisi kedua dengan 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
    
  3. Mulai ulang mesin virtual

    shutdown -r now
    
  4. Setelah kembali, ubah ukuran volume fisik LVM

    pvresize /dev/sda2
    
  5. Sekarang ubah ukuran volume logis LVM ( CATATAN: Saya tidak dapat menguraikan apa nama volume logis Anda didasarkan pada tangkapan layar dan dengan demikian saya berasumsi LogVol00. Anda dapat menentukan ini dengan menjalankan lvdisplay.)

    lvresize -l +100%FREE /dev/VolGroup00/LogVol00
    
  6. Akhirnya, mari kita mengubah ukuran sistem file

    resize2fs -p /dev/VolGroup00/LogVol00
    
  7. Pastikan sistem file lebih besar

    df -h
    
  8. Selesai


Tidak perlu boot ulang setelahnya fdisk. Gunakan partprobedisana. SCSI-scan ulang menarik - apakah itu bekerja pada disk yang digunakan?
Nils

1
Terlambat ke pesta: p Saya punya masalah dengan partprobe tidak membaca ulang partisi yang sedang digunakan jadi saya akhirnya mem-boot ulang di hampir semua kasus. Pemindaian ulang SCSI bekerja dengan baik dengan disk yang digunakan. Anda dapat menjalankan dmesguntuk mengonfirmasi bahwa disk tersebut terlihat sebagai ukuran baru
TheDude

sedih bahwa tidak ada lika a scsi-rescan untuk xen-pv-disk. Tapi itu topik lain ...
Nils

1
Terima kasih banyak, instruksi Anda bekerja dengan sempurna!
Chris Haas

Apa yang harus saya cari setelah langkah 1 (gema & pindai ulang)? Bagaimana saya bisa tahu apakah kernel mengenali ruang ekstra atau tidak?
Jeff

4

Langkah-langkah di bawah ini memperpanjang partisi saya dari 12G ke 26GB pada VMWare EXSi 5.5 menjalankan Centos 6 EXT4 VPS.

1) Identifikasi nama perangkat, yang secara default / dev / sda, dan konfirmasikan ukuran baru dengan menjalankan perintah:

# fdisk -l

2) Dapatkan daftar partisi untuk perangkat / 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) Buat partisi primer baru

# 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) Reboot Centos 6.X kemudian masuk kembali dengan hak akses root

# reboot

5) Periksa apakah partisi baru sudah siap dan ketik '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) Buat volume fisik:

# pvcreate /dev/sda3

Physical volume "/dev/sda3" successfully created

7) Cari tahu nama grup volume:

# vgdisplay

--- Volume group ---
VG Name               vg_app1
...

8) Perpanjang volume fisik:

# vgextend vg_app1 /dev/sda3

Volume group "vg_app1" successfully extended

9) Perpanjang grup volume yang ada ke volume fisik baru (+ 100% GRATIS dapat diubah ke ukuran yang diinginkan). Karena kita memperluas partisi root maka menunjuk ke lv_root di grup volume 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) Mengubah ukuran volume root logis:

# 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.

Catatan: Gunakan ext2online, bukan resize2fs jika itu adalah mesin virtual Red Hat.

11) Periksa ruang yang tersedia:

# 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

2

Mudah. Pergilah ke VM Anda sebagai root. Ketik "fdisk -l" - jika Anda sudah melihat ukuran disk baru - bagus.

Jika tidak - coba partprobe- jika Anda masih tidak melihat ukuran disk baru - reboot.

Sekarang fdisk /dev/sda

  1. Tuliskan Anda mulai silinder untuk partisi kedua.
  2. "Hapus" partisi kedua
  3. Buat partiton kedua, silinder awal yang sama, silinder terakhir untuk ujung
  4. atur jenis partisi yang dibuat ke 8e (LVM)
  5. tulis perubahannya dan keluar dari fdisk
  6. partprobe
  7. pvresize /dev/sda2

Sekarang VG VolGroup00 Anda memiliki ruang 20 GB lebih. Lakukan apa pun yang Anda suka dengannya. Seperti yang akan Anda lakukan pada sistem fisik (mengubah ukuran LV, lalu mengubah ukuran FS misalnya).


echo 1> / sys / class / scsi_disk / 0 \: 0 \: 0 \: 0 / device / rescan melakukan sihir pemindaian ulang tanpa reboot
andrej

@ andrej Sekalipun disk sedang digunakan?
Nils

Ya, ini adalah sihir tingkat rendah di sisi pengontrol, sehingga itu akan bekerja pada cakram yang dipasang juga. Anda hanya perlu memastikan bahwa Anda memperbesar drive, bukan untuk mengurangi ruang dari itu.
andrej

2

Unduh live ISO Gparted CD . Kemudian pasang ISO ke CentOS dan boot dari live cd (pergi ke pengaturan mesin virtual, pilih "CD / DVD" dan pilih "Gunakan ISO" dari panel sisi kanan). Kemudian pilih partisi yang ingin Anda ubah ukurannya. Klik pada menu partisi (bilah menu atas) kemudian klik "Ubah ukuran". Kemudian pilih "Terapkan semua operasi" dari menu "Edit".


Saya memuat, tetapi drive memiliki ikon kunci .. Saya melampirkan gambar
Andrew


Terima kasih! +1 untuk saran aplikasi seperti Particion Magic ini.
jstuardo

0

Di sini saya mengambil sampel partisi untuk memperluas disk dari 5GB ke 7GB tanpa kehilangan data. Anda dapat mengubah sesuai dengan ruang kosong yang tersedia.

Sebelum menambah disk, saya telah mengambil perincian berikut dari Linux VM:

# 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

Matikan VM sekarang.

Sekarang saya akan meningkatkan disk virtual yang ada ( /dev/sdb) dari VMware command prompt. Catatan: tugas ini harus dilakukan hanya ketika VM dimatikan.

Pergi ke lokasi lokasi disk virtual.

# vmware-vdiskmanager -x  7Gb RedHatEnterprise_Linux_4-0.vmdk

Sekarang akan menumbuhkan disk virtual menjadi 7Gb

Sekarang Anda perlu menyalakan VM. Masuk ke VM menggunakan Putty atau konsol sebagai pengguna 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

Itu masih menunjukkan ukuran yang lama. Lepaskan partisi yang akan Anda tambahkan.

# umount /dev/sdb1

Jalankan perbaikan sistem file pada disk

# fsck -n /dev/sdb1

Sekarang adalah goig untuk menghapus jurnal dari disk untuk membuatnya menjadi sistem file ext2.

# tune2fs -O ^has_journal /dev/sdb1

Sekarang mulai mempartisi /dev/sdbuntuk menetapkan ruang yang bertambah /dev/sdb1. Catatan: Jangan Panik, Anda tidak akan kehilangan data di sini.

Saya menghapus yang ada /dev/sdb1dan menciptakan kembali bersama dengan ruang kosong yang tersedia.

# 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.

Sekarang restart mesin Linux untuk mengambil efek dari partisi (kita juga dapat menggunakan partprobe, sangat disarankan untuk me-restart mesin).

# shutdown now -r

Sekarang sekali lagi periksa sistem file yang diperluas, jika Anda melewati langkah ini, resize2fsperintah akan merekomendasikan untuk menjalankannya.

# 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

Sekarang ubah ukuran sistem file.

# 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.

Sekarang periksa sistem file.

# 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

Sekarang buat ulang partisi dengan format 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.

Mulai ulang mesin Linux sekali untuk secara efektif menggunakan sistem file ext3.

# shutdown -r now

Sekali lagi Anda masuk ke kotak Linux menggunakan root previleges. Sekarang Anda dapat menemukan partisi meningkat menjadi 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

Mengapa Anda menghapus lalu mengembalikan jurnal? Ini tidak perlu, sistem file ext3 dapat diperluas juga sistem file ext2. Selain itu, Anda melewatkan satu bagian besar dari teka-teki: partisi untuk memperpanjang ada di LVM.
Gilles 'SANGAT berhenti menjadi jahat'

0

Saya baru saja melakukan ini, di VMware, dengan CentOS 6.4. Jawaban nomor 1 benar, tetapi saya kehilangan satu langkah, yang saya temukan.

Di Gparted, saya juga memiliki ikon kunci.

Pada baris dengan partisi, yang memiliki ikon kunci, klik kanan dan pilih "nonaktifkan". Itu membuat kunci itu pergi.

Kemudian Anda dapat mengklik kanan dan mengubah ukuran partisi.

Kemudian terapkan perubahan itu.

Kemudian klik kanan dan pilih "aktifkan".


0

Anda dapat membuat langkah 5 dan 6 menjadi satu dengan menambahkan -rsakelar ke lvresize. Itu akan lvresizeberjalan resize2fssecara otomatis dengan params yang diperlukan:

lvresize -r -l +100%FREE /dev/VolGroup00/LogVol00

Selamat datang di * nix StackExchange!

0

Untuk CentOS 6.6 di VMWare, saya melakukan yang berikut untuk meningkatkan dari 30 GB menjadi 40 GB (perhatikan saya tidak menggunakan LVM, hanya partisi linux asli biasa (Id 83)):

CATATAN: Ambil cadangan VM Anda terlebih dahulu jika Anda kehilangan data. Anda seharusnya tidak kehilangan data jika semuanya berjalan dengan baik.

  1. VMWare memberi saya GUI ketika saya mengedit VM saya sebelum memulai untuk mengubah ukuran jumlah yang tersedia untuk VM. Saya menggunakan ini dan memperpanjangnya hingga 40 GB.
  2. Saya kemudian mem-boot CentOS dan menjalankan 'fdisk-l' sebagai root. Saya bisa melihat ruang baru. Saya kemudian menjalankan 'df -h' untuk memverifikasi bahwa partisi lama saya masih ada.
  3. Saya kemudian menjalankan 'cfdisk / dev / sda' dan mendapatkan GUI tekstual yang menunjukkan partisi saya. Dalam kasus saya, partisi yang ingin saya ubah ukurannya adalah / dev / sda3 dan merupakan partisi terakhir.
  4. Saya kemudian menggunakan cfdisk untuk menghapus partisi, kemudian membuat yang baru dengan semua ruang yang tersedia. Saya menulis perubahan saya dan berhenti.
  5. Saya kemudian reboot VM (shutdown sekarang -r).
  6. Setelah reboot, saya menggunakan 'resize2fs / dev / sda3', di mana / dev / sda3 adalah partisi yang saya buat ulang. Ini secara otomatis menyelesaikan ukuran untuk saya.
  7. Sekarang dengan 'df -h' saya melihat ukuran penuh baru.

Info ditemukan dari kombinasi jawaban di halaman ini dan di http://positon.org/resize-an-ext3-ext4-partition


0

Pendekatan lain adalah membuat LVM yang dibentangkan pada disk penuh alih-alih partisi.

Dalam hal ini Anda dapat memanaskan add disk menggunakan metode berikut

blockscan --rereadpt /dev/<PV disk
pvresize /dev/<PV disk>
# The associated VG is now resized
lvresize /dev/mapper/<LV> -r -l +100%FREE

0

Terkadang Anda perlu melakukannya

echo "- - -" >  /sys/class/scsi_host/host<n>/scan

Itu tergantung pada apakah Anda membuat disk baru atau memperluas yang sudah ada untuk jenis scan ulang yang diperlukan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.