Bagaimana cara mengecilkan volume logis dan fisik LVM Ubuntu?

26

Saya telah menginstal Ubuntu 12.10 sebagai satu-satunya OS di sistem saya.

Saya mengatakan kepada Ubuntu untuk menimpa semuanya karena saya sedang terburu-buru, maka saya hanya memiliki dua partisi yang dibuat oleh Ubuntu, Partisi Boot beberapa ratus MB, dan kemudian semua yang lain.

Partisi utama adalah sekitar 600GB,

Saya ingin mengubah ukuran ini menjadi 450GB, jadi saya dapat menginstal Windows 8 sebagai dual boot.

Masalahnya adalah bahwa saya tidak dapat menemukan cara untuk mengecilkan partisi, biasanya tidak masalah dari Gparted (gparted-live-0.14.1-6-i486.iso) live iso, Cukup mengubah ukuran dan Anda dapat melakukannya.

Tetapi kali ini Ubuntu telah diinstal dengan LVM.

Jadi, partisi Ubuntu memiliki ikon kunci di sebelahnya. Ini mencegah saya dari melakukan apa pun, saya dapat memilih partisi, dan ada opsi untuk "menonaktifkan" yang Jika saya benar saya yakin menonaktifkan swap? Jika saya melakukannya saya dapat memanipulasi partisi.

Saya bertanya di sini apakah ini hal yang benar untuk dilakukan sebelum saya merusak sistem saya.

  1. Boot dari iso live gparted.
  2. Pilih partisi Ubuntu.
  3. "Nonaktifkan" partisi.
  4. Ubah ukuran partisi.
  5. "Aktifkan" partisi.
  6. Menerapkan.
  7. Keuntungan???

Apakah pemikiran saya benar?

Edit # 1

Jadi, setelah beberapa obrolan panjang saya datang ke perintah ini

sudo lvresize --verbose --resizefs -L -150G /dev/ubuntu/root

Yang berhasil menyusut partisi logis.

Gparted New Shot

Tetapi sekarang saya memiliki bagian yang sulit.

Sekarang saya perlu mengecilkan Partisi Fisik ke bawah sehingga saya dapat membuat partisi Fisik baru dengan ruang untuk menginstal Windows 8.

Jadi saya pikir saya bisa lari

pvresize --setphysicalvolumesize {any size here} /dev/sda5

Tapi saya kembali:

/ dev / sda5: tidak dapat mengubah ukuran menjadi xxxxx sejauh yang nanti dialokasikan.

Yang saya percaya adalah karena swap karena gambar ini:

Sial Swap!, jadi apa langkah saya selanjutnya?

$: lvdisplay
  --- Logical volume ---
  LV Path                /dev/ubuntu/root
  LV Name                root
  VG Name                ubuntu
  LV UUID                G7Z3dA-xska-8QpO-Y5oD-aIVO-D8l1-22s6dO
  LV Write Access        read/write
  LV Creation host, time ubuntu, 2013-01-29 22:06:02 +1300
  LV Status              available
  # open                 1
  LV Size                540.42 GiB
  Current LE             138348
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Path                /dev/ubuntu/swap_1
  LV Name                swap_1
  VG Name                ubuntu
  LV UUID                14qpRy-H5jl-dTAq-CVle-k7Bz-95Rm-Y46zOs
  LV Write Access        read/write
  LV Creation host, time ubuntu, 2013-01-29 22:06:04 +1300
  LV Status              available
  # open                 2
  LV Size                7.97 GiB
  Current LE             2041
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

Informasi Tambahan Sebelum Mengedit # 1

Tangkapan Layar Gparted
Perhatikan bahwa foto di atas diambil dari versi Gparted di Repositori Ubuntu, bukan versi terbaru

matthew @ play: ~ $ sudo fdisk -l

Disk /dev/sda: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000c5bec

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      499711      248832   83  Linux
/dev/sda2          501758  1465147391   732322817    5  Extended
/dev/sda5          501760  1465147391   732322816   8e  Linux LVM

Disk /dev/mapper/ubuntu-root: 741.3 GB, 741334843392 bytes
255 heads, 63 sectors/track, 90128 cylinders, total 1447919616 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/mapper/ubuntu-root doesn't contain a valid partition table

Disk /dev/mapper/ubuntu-swap_1: 8560 MB, 8560574464 bytes
255 heads, 63 sectors/track, 1040 cylinders, total 16719872 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/mapper/ubuntu-swap_1 doesn't contain a valid partition table

matthew @ play: ~ $ sudo lvs

  LV     VG     Attr     LSize   Pool Origin Data%  Move Log Copy%  Convert
  root   ubuntu -wi-ao-- 690.42g                                           
  swap_1 ubuntu -wi-ao--   7.97g  

matthew @ play: ~ $ sudo vgs

  VG     #PV #LV #SN Attr   VSize   VFree
  ubuntu   1   2   0 wz--n- 698.39g    0 

matthew @ play: ~ $ sudo pvs

  PV         VG     Fmt  Attr PSize   PFree
  /dev/sda5  ubuntu lvm2 a--  698.39g    0 
Hailwood
sumber
Pastikan Anda menjalankan versi GParted baru-baru ini (hanya baru-baru ini mendapatkan dukungan LVM - ya, jadi sekadar catatan untuk pembaca lain). Dan menonaktifkan, saya pikir, menonaktifkan grup volume ( vgchange -an myvgname) yang mungkin diperlukan jika Anda akan mengubah volume fisik. :) Oh, hampir jawabannya.
gertvdijk
Rincian lebih lanjut disediakan.
Hailwood
@gertvdijk Ping saya dalam obrolan jika Anda memerlukan info cepat.
Hailwood
Apakah ini diselesaikan? Saya mencari untuk mengurangi partisi fisik untuk menginstal versi lain OS berdampingan.
Jamess

Jawaban:

17

Ini semua adalah langkah yang diperlukan untuk mengubah ukuran partisi LVM atau LVM2 -

sudo lvresize --verbose --resizefs -L -150G /dev/ubuntu/root

sudo pvresize --setphysicalvolumesize {any size here} /dev/sda5

/dev/sda5: cannot resize to xxxxx extents as later ones are allocated.

Anda harus mengatur ulang ruang yang tidak terisi di akhir LVM. Itu berarti setelah partisi root dan swap_1. Jadi, Anda perlu memindahkan ruang kosong itu menggunakan perintah di bawah ini

pvs -v --segments /dev/sda5

This will show the output like below
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g 0 xxx root 0 linear /dev/sda:0-xxx
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g xxx nnn 0 free                          
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g yyy zzz swap 0 linear /dev/sda5:yyy-zzz

Sekarang gunakan perintah di bawah ini untuk menghapus fragmentasi eksternal -

sudo pvmove --alloc anywhere /dev/sda5:yyy-zzz

Sekarang mari kita lihat bagaimana kelanjutannya -

pvs -v --segments /dev/sda5

This will show the output like below
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g 0 xxx root 0 linear /dev/sda:0-xxx
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g xxx nnn swap 0 linear /dev/sda5:xxx-yyy(-1)
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g yyy zzz 0 free

Setelah itu gunakan gparted dan ubah ukuran LVM ke area yang digunakan maksimum dan sisanya akan berada di ruang yang tidak terisi. Nikmati...

UJJAL
sumber
7

Saya akan, sekarang Anda sudah mendapatkan root LV yang lebih kecil, lvremoveswap LV dan membuatnya kembali. Ini harus memaksanya untuk ditambahkan langsung ke root LV dalam hal posisi. Setelah selesai, Anda harus dapat pvresizevolume fisik. Maka itu adalah bagian yang menakutkan dalam mengedit tabel partisi ( fdisk) untuk memperkecil ukuran partisi ke ukuran baru PV, dengan demikian membebaskan ruang bagi installer Windows untuk digunakan.

Untuk perampingan partisi saya akan merekomendasikan untuk pergi sedikit lebih besar, dengan beberapa MB, daripada PV melaporkan ukurannya dan upsize PV dan root LV untuk mengisi luasan bebas. Dengan begitu Anda dapat memastikan Anda A) menggunakan semua ukuran partisi untuk LVM dan tidak kehilangan ruang dengan membuatnya tidak dapat diakses, dan B) tidak memotong data penting dari PV dengan salah mengartikan biner KiB / MiB / GiB untuk desimal KB / MB / GB atau sebaliknya selama operasi fdisk.

Swap baru, jika Anda membuat yang baru untuk memastikan itu ditambahkan ke root LV seperti yang saya sarankan di atas, akan memiliki UUID yang berbeda dan karenanya / etc / fstab Anda tidak akan cocok. Setelah pengubahan ukuran selesai, Anda harus mount /dev/ubuntu/root /mntmengedit / mnt ** / etc / fstab **.

Dalam file fstab Anda perlu menemukan entri swap yang mirip dengan di bawah ini dan memperbarui hexidecimal setelah UUID = dengan nilai yang dilaporkan oleh blkid.

Langkah-langkah untuk blkiddi sistem saya adalah sebagai berikut:

  1. menjalankan

    blkid /dev/ubuntu/swap_1
    

    output yang mana

    /dev/ubuntu/swap_1: UUID="9e99b37a-38af-4987-85eb-92048abd9825" TYPE="swap"
    
  2. salin nilai UUID

    9e99b37a-38af-4987-85eb-92048abd9825

  3. edit / etc / fstab dari root LV Anda dan masukkan nilai UUID sebagai ganti UUID lama.

    menemukan

    UUID=**old-uuid** none swap sw 0 0
    

    ganti UUID baru Anda di tempat yang lama-uuid

    UUID=9e99b37a-38af-4987-85eb-92048abd9825 none swap sw 0 0
    

    sebagai alternatif, Anda dapat mengganti mekanisme dan penggunaan UUID /dev/ubuntu/swap_1, misalnya

    /dev/ubuntu/swap_1 none swap sw 0 0
    
Daniel Llewellyn
sumber
Prosedur ini bersama dengan edit yang dimaksud membantu saya untuk mengubah ukuran partisi. Saya tidak dapat menemukan perintah lvdelete (12.04) dan menggunakan lvremove untuk menghapus partisi swap. Pvresize bekerja seperti pesona. Kemudian saya menggunakan live CD gparted untuk mengubah ukuran partion ke ukuran yang lebih rendah. menyelesaikan operasi dan ukuran yang tidak dialokasikan dibuat. Saya sarankan penanya harus membuat jawaban yang lengkap.
Jamess
Saya kebetulan tidak menggunakan UUID (apakah saya mengubahnya, saya tidak ingat), semoga systyem tidak pernah menggunakan UUID untuk swap. Jadi saya bisa melewati langkah penyuntingan UUID.
Jamess
Cara membuat ulang swap lv 1. lvcreate -L 5G -n / dev / vg0 / swap_1 2. mkswap / dev / vg0 / swap_1, swapon -s / dev / vg0 / swap_1, kemudian validasi entri / etc / fstab dan jika diperlukan perubahan UUID.
Jamess
Terima kasih telah menyebutkan lvdeletejawaban saya yang salah. Saya sekarang telah memperbaiki teks untuk mengutip lvremovenama yang tepat .
Daniel Llewellyn
6

Gunakan KVPM dari Pusat Perangkat Lunak. Saya menginstal Ubuntu 14.10 LTS menggunakan seluruh disk satu LVM besar (saya tahu apa gunanya satu LVM besar) tetapi ingin menambahkan dua LVM lain untuk OS lain dan drive data. Saya menggunakan KVPM, ia mengatakan manajer partisi KDE dalam deskripsi tetapi bekerja dengan baik pada 14,04. Inilah langkah-langkahnya.

  1. Unduh 14.04LTS dan buat USB yang bisa di-boot.
  2. Boot dari USB, gunakan opsi TRY UBUNTU sehingga Anda menjalankan di USB stick.
  3. Instal KVPM dari Pusat Perangkat Lunak.
  4. Jalankan KVPM dari terminal pilihan Anda,

    sudo kvpm- jika Anda hanya menjalankan kvpm, live CD akan memberi Anda kesalahan dan hang.

  5. Setelah, kvpm telah membuka GUI, buka tab berlabel some_drive-vg

  6. Sorot volume yang akan diubah ukurannya dan klik kanan untuk opsi, pilih kurangi volume.
  7. Anda dapat menandai kembali LVM pada saat yang sama Anda memasukkan ukuran baru.
  8. Ikuti petunjuknya untuk OK perubahan dan voila, Anda akan memiliki ruang kosong yang tidak terisi.
  9. Anda dapat membuat LVM baru sebanyak yang Anda butuhkan dengan ruang yang tersedia. Tampilan saya menunjukkan ruang tidak terisi hijau terang, cukup klik kanan ruang hijau, Anda hanya opsi akan "Buat volume logis baru".

Butuh waktu lebih lama bagi saya untuk menulis ini daripada melakukan seluruh proses.

By the way, partisi / root saya mengubah ukuran fungsi dengan sempurna setelah semua perubahan. Cukup reboot ke HDD Anda di OS yang Anda pilih dan nikmati volume yang baru Anda temukan.

RCF
sumber
0

KVPM adalah cara untuk pergi, tidak perlu reboot.

  1. Klik kanan Unmount partisi
  2. mengurangi ukuran
  3. klik kanan ukuran partisi lain
  4. remount partisi asli

DIBUAT!

Cparello
sumber