Ubuntu: Ubah ukuran partisi root LVM (2?)

10

Saya memiliki mesin virtual Ubuntu yang berjalan di VirtualBox 2.2.4, dan saya membuatnya di disk virtual 8GB yang terlalu kecil.

Jadi, saya mencoba menambah ukuran disk. Sejauh ini, saya telah melakukan ini:

  1. Membuat disk virtual baru yang lebih besar
  2. Menambahkan disk ke-2 ke mesin
  3. Digunakan CloneZilla untuk mengkloning disk pertama ke disk ke-2
  4. Menghapus disk pertama
  5. Boot ke-2 (disk yang lebih besar)

Tapi sekarang saya masih terjebak dengan partisi 8GB pada disk virtual 100GB baru saya.

Whats jalur termudah dari sini untuk memiliki partisi 100GB? :) Saya kumpulkan GPart dapat mengubah ukuran partisi, tetapi sepertinya tidak mendukung partisi LVM2, yang sepertinya milik saya.

Terima kasih

  • Alex
pengguna12259
sumber

Jawaban:

5

Secara umum, inilah cara mengubah ukuran volume LVM:

Katakanlah /mountpointaktif /dev/VolGroup00/mountpoint. Anda dapat menemukannya dengan memeriksa /etc/fstabatau berlari mount -l.

Anda mungkin juga perlu mengubah ukuran Volume Fisik yang sebenarnya, tergantung pada pengaturan Anda. Gunakan pvdisplayuntuk mencari tahu apakah itu cukup besar, dan gunakan pvresize(seperti di lvresizebawah) jika perlu.

umount /mountpoint
lvresize -L +<HOW MUCH BIGGER> /dev/VolGroup00/mountpoint
e2fsck -f /dev/VolGroup00/mountpoint
resize2fs /dev/VolGroup00/mountpoint <TOTAL SIZE>
mount /mountpoint

Ini sama dengan umounting, mengubah ukuran LVM yang mendasarinya, kemudian mengubah ukuran partisi ext3 yang sebenarnya.

Beberapa hal yang harus diperhatikan:

  1. Jelas bermain dengan /akan berbeda dari partisi data. Anda mungkin memerlukan boot disk seperti Sysrescuecd daripada Doing It Live. Lihat juga komentar Kristof di bawah ini - Anda mungkin benar-benar dapat melakukan ini tanpa melepas /.
  2. lvresize memiliki beberapa opsi sintaks yang berbeda, dan mengurangi volume logis mungkin akan merusak partisi overlay. Konsultasikan halaman manual lokal Anda untuk informasi lebih lanjut.
Mat
sumber
Terima kasih, itu terlihat menjanjikan, dapatkah Anda menyarankan LiveCD yang mungkin saya gunakan yang memiliki alat LVM?
user12259
Sysrescuecd baik ( sysresccd.org )
Zoredache
5
ext2 / 3/4 mendukung pertumbuhan langsung sistem file Anda. Anda tidak perlu meng-unmount atau e2fsck partisi Anda. resize2fs juga cukup pintar untuk mengetahui ukuran partisi (atau volume logis) yang dihidupkan. Jika Anda tidak menentukan ukuran, itu hanya akan tumbuh untuk mengisi semua ruang yang tersedia.
Kristof Provost
Saya mencoba "sudo resize2fs / dev / sda1" dan ia menjawab: "resize2fs: Perangkat atau sumber daya sibuk ketika mencoba untuk menulis / dev / sda1 Tidak dapat menemukan superblock filesystem yang valid"
user12259
1
Lvresize tidak mengubah ukuran volume fisik, jadi tidak perlu saya lakukan itu dulu?
user12259
2

Ada satu (dan hanya satu) cara yang saya temukan untuk melakukan ini dan saya mencoba segudang.

Pertama, klon VM guest ubuntu di virtualbox dengan mengklik kanan dan pergi ke "clone". Setelah klon selesai maka perluas klon vdi dengan menggunakan (Pada OS host)

VBoxManage memodifikasihd "name_of_cloned_vdi" --resize "size_of_new_root_partition_in_MB"

Lalu - ikuti langkah-langkah dalam posting ini ke surat (ia merujuk ke VMware sebagai platform tetapi abaikan itu)

http://blog.campodoro.org/?p=36

Ini akan membuat lvm lain yang persis sama ukurannya dengan ruang ekstra yang telah Anda tambahkan dan tempelkan ke ujung yang sudah ada.

Setelah Anda memeriksa semua sudah baik, maka Anda dapat menghapus VM asli dan mempromosikan klon Anda!

Tidak perlu dipusingkan dengan fdisk dan khawatir menghapus atau mengacaukan partisi yang salah.

Saya pasti telah merusak sekitar 4 OS hasil kloning sampai saya menemukan solusi ini!

Ben
sumber
2

Saya baru saja melakukan ini dan memiliki pertanyaan yang sama dengan yang Anda miliki, tetapi alih-alih membuat LVM baru dan menambahkannya ke grup volume, sisi OCD saya ingin mengubah ukuran LVM saya saat ini dan dengan demikian menyimpan satu partisi atas nama kesederhanaan. Catatan: Saya tidak percaya ini dimungkinkan jika ruang kosong tidak segera mengikuti partisi yang Anda ubah ukurannya!

Untuk melakukannya, Anda akan memerlukan alat yang dapat menghapus dan membuat tabel partisi. Karena saya menggunakan GPT ini berarti saya membutuhkan gdisk . Anda juga harus melakukan ini dengan partisi yang tidak di-mount, jadi Anda mungkin ingin mem-boot ke Ubuntu LiveCD dan menjalankannya dari sana.

Langkah- langkah berikut dalam huruf tebal adalah sebagai contoh LVM / dev / mms / root pada perangkat / dev / sda , di mana saya ingin memperluas partisi / dev / sda3 untuk menempati ruang kosong yang baru saya temukan.

CATATAN : Ini berpotensi sangat merusak, jadi pastikan input Anda benar!

  1. gdisk / dev / sda (pastikan untuk memasukkan perangkat yang benar!) Ini membawa Anda ke gdisk di mana Anda kemudian dapat melakukan langkah-langkah berikut secara berurutan
    1. p - mencetak informasi partisi Anda saat ini (untuk referensi)
    2. d - untuk menghapus tabel partisi
    3. 3 - nomor perangkat yang mewakili tabel partisi yang ingin Anda hapus (penting!)
    4. n - untuk membuat tabel partisi
    5. 3 - nomor perangkat yang mewakili tabel partisi yang ingin Anda buat (Anda mungkin ingin menggunakan yang sama seperti yang Anda hapus pada langkah 3)
    6. p - mencetak info partisi Anda saat ini (lagi untuk referensi, bandingkan dengan apa yang Anda mulai!)
    7. w - menyimpan perubahan Anda ke disk (Anda yakin ?!)
  2. pvresize / dev / sda3 - Anda mungkin harus reboot sebelum melakukan ini agar OS Anda mengenali ukuran partisi baru
  3. pvdisplay - mencetak info Anda saat ini (ini akan menunjukkan bahwa ia menggunakan ruang penuh sekarang!)
  4. lvresize -l + 100% GRATIS / dev / mms / root - mengubah ukuran LVM saya untuk menempati 100% dari ruang yang baru saya temukan
  5. e2fsck -f / dev / mms / root - melakukan pemeriksaan integritas
  6. resize2fs -p / dev / mms / root - mengubah ukuran sistem file untuk menempati LVM lengkap Anda

Setelah melakukan hal di atas dan memulai kembali ke OS yang diubah ukurannya, semuanya bekerja seperti yang diharapkan dan saya memiliki semua freespace tambahan yang saya miliki!

Referensi tambahan yang saya gunakan untuk mencari tahu semua ini:

http://www.jethrocarr.com/2012/08/10/gdisk-oh-glorious-gdisk/ http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html

James
sumber
1

Lihat jawaban terkait di sini.

(kutipan)

Mengubah ukuran volume fisik:

pvresize --verbose --test /dev/md0

Mengubah ukuran volume logis:

lvresize --verbose -L <SIZE> --test /dev/VG1/LV1

Dan akhirnya, mengubah ukuran ext3 FS:

resize2fs /dev/VG1/LV1
Sakit kepala
sumber
Ketika saya melakukan lvresize, saya mendapatkan kesalahan "Gagal untuk menangguhkan root"
user12259
Saya mencoba: "sudo lvresize --verbose -L 40G / dev / ubuntu / root"
user12259
ok, saya memperbaikinya dengan "sudo modprobe dm-mod", sekarang saya dapat berhasil lvresize
user12259
fdisk -lmenunjukkan saya memiliki 54GB tersedia, tetapi setelah menjalankan pvresize /dev/sda2; lvresize -L 50G /dev/mapper/VolGroup-lv_rootsaya mendapatkan kesalahan "Ruang kosong tidak cukup: 588 diperlukan, tetapi hanya 0 tersedia". pvdisplaymenunjukkan volume fisik saya tidak diubah ukurannya.
Cerin
Anda benar-benar harus mengajukan pertanyaan baru. Komentar dari pertanyaan lama bukanlah cara terbaik untuk mendapatkan bantuan.
Zoredache
1

Perhatikan bahwa Anda sebenarnya tidak perlu menggunakan alat klon seperti CloneZilla di sini, Anda dapat meletakkan partisi pada disk virtual baru (opsional) kemudian menginisialisasi itu (atau disk virtual itu sendiri) ke LVM menggunakan pvcreateperintah. Kemudian gunakan vgextenduntuk menambahkan itu ke grup volume yang mendukung volume logis Anda, lalu gunakan vgreduceuntuk menghapus disk virtual asli dari grup volume. Ini akan melakukan migrasi, dan itu bisa dilakukan secara langsung ketika volume logis sedang digunakan, ini adalah keindahan virtualisasi penyimpanan. Setelah selesai, Anda hanya perlu memperluas volume logis seperti di atas, yang juga bisa dilakukan secara langsung dengan sistem file yang lebih modern daripada ext3.

Bracken
sumber
1

I. Jika HDD virtual Anda memiliki ukuran tetap, Anda tidak dapat membuatnya lebih besar. Dalam hal ini Anda harus mengkloningnya terlebih dahulu.

(1) Mengkloning HDD melalui VB GUI: File -> Virtual Media Manager... -> [tab] Hard Drives -> select your HDD -> [button] Next -> [button] Next -> select "Dynamically allocated" on the step "Storage on physical hard drive"-> ...

atau di baris perintah:

# VBoxManage clonehd "/path/to/the/HDD.vdi" "/path/to/the/HDD_NEW.vdi"

(2) Tambahkan HDD baru ke daftar HDD yang dikenal.

(3) Dalam pengaturan mesin VB, lepaskan HDD lama dari daftar VDI di bawah Pengontrol dan tambahkan yang baru sebagai gantinya.

II Ubah ukuran HDD

(1) Ubah ukuran HDD baru.

# VBoxManage modifyhd 463c7bd4-9b9c-4cf8-bee4-e14e10c0d462 --resize 25600

Anda mendapatkan kunci dengan VBoxManage list hddsperintah.

AKU AKU AKU. Tambahkan ruang yang dialokasikan baru.

(1) Tambahkan ISO yang Diubah menjadi media baru di bawah Machine Settings -> Storage -> [rightclick] Controller IDE -> Add CD / DVD Device -> ...dan pilih Live CD/DVDkotak centang.

(2) Mulai VM dan tambahkan ruang kosong tidak dialokasikan ke partisi kerja Anda.

(3) Hentikan VM.

(4) Lepaskan ISO yang diatur GP.

Nikmati! :)

automatix
sumber
0

Saat mengubah ukuran partisi LV2, referensi ini banyak membantu saya:

http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html

Perhatikan, bahwa Anda tidak perlu menggunakan live cd, Anda dapat melakukan pengubahan ukuran pada sistem yang terpasang, live, mengubah ukuran dengan cepat.

takeshin
sumber