ปัญหาการปรับขนาดระบบไฟล์รูทด้วย Extended-partition, lvm และ snapshots บนดิสก์ vm


2

ฉันตั้งขนาดดิสก์ของrootไดรฟ์ของฉันต่ำเกินไปและจำเป็นต้องขยาย Ubuntu 16lts serverเริ่มต้นการติดตั้ง

ฉันค้นหาแล้วและคำตอบ / คำตอบที่พบไม่ได้แก้ไขปัญหา (ปัญหาปรากฏเหมือนกัน แต่ขั้นตอนไม่ทำงานหรือไม่มีตัวเลือกในระบบของฉัน)

ฉันกำลังบูท gparted live-cd (ล่าสุด / เพิ่งดาวน์โลด) แต่ฉันก็ลองทำเช่นนี้โดยเสียบดิสก์เข้ากับระบบ ubuntu อื่น (VM อื่น) อย่างที่คุณเห็นในภาพหน้าจอ gparted ด้านล่างฉันมี

  • บูท liveCD (แยกส่วน)
  • หนึ่งดิสก์ ( sda) โดยบังเอิญมันเป็น VDI ใน Virtualbox ฉันได้ขยายดิสก์แล้ว (ดังที่แสดงใน 'พื้นที่ไม่ได้ปันส่วน'
  • ที่น่าสนใจคือ/dev/sda5ปริมาณ lvm ที่มีอยู่ในการ/dev/sda2ขยาย

ฉันได้ลองแล้ว:

  • จาก ISO สด gparted ผมสามารถคลิกขวาเพื่อ/dev/sda5 deactivateนอกจากนี้lvdisplayผลลัพธ์ด้านล่างคือหลังจากยกเลิกการใช้งานนี้
    • อย่างไรก็ตามสิ่งนี้ไม่ได้ลบล็อค (แต่คิดว่าในขณะที่และสแกนดิสก์อีกครั้ง)
    • และการปรับขนาดยังคงเป็นสีเทาอยู่ /dev/sda2
    • lvdisplay ดูเหมือนจะไม่แสดงการเปลี่ยนแปลง
  • จากบรรทัดคำสั่งเรียกใช้lvchange -an,
    • ไม่ดูเหมือนจะเปลี่ยนสถานะที่มีอยู่บน / dev / sda5
    • แต่การปิด / เปิดใหม่ gparted ยังคงแสดงล็อค

ขอบคุณฉันขอขอบคุณความช่วยเหลือของคุณ! สแนปชอต live-iso ของ gparted

mount | grep sd-> ไม่มีอะไร (ไม่แสดง) จากไอโซ is-gparted แบบสดๆfdisk -l เอาต์พุต fdisk -l

และ lvdisplay lvdisply เอาต์พุต

และ vgdisplay ป้อนคำอธิบายรูปภาพที่นี่


กรุณาวางเคอร์เซอร์ของคุณ (ทางด้านซ้ายของภาพอย่างใดที่สำคัญ) บนพื้นที่ที่มีกุญแจและลองที่นั่นใน/dev/sda2ถ้าไม่ทำงานลอง/dev/sda5แต่ให้แน่ใจว่ามันอยู่ภายใต้คอลัมน์พาร์ทิชัน
จอร์จ Udosen

สวัสดี @ George - สำหรับทั้งแถวฉันได้รับเมนูบริบทเดียวกันไม่ว่าฉันจะคลิกแถวใด สำหรับแถว / dev / sda2 ตัวเลือกทั้งหมดจะเป็นสีเทายกเว้น "จัดการธง" สำหรับ / dev / sda5 จะมีการแสดง 'resize' และปิดใช้งานเพิ่มเติม แต่การปิดใช้งานดูเหมือนจะไม่มีผลใด ๆ
ไมค์

1
ผมขอตรวจสอบว่าใน VM ของฉัน ...
จอร์จ Udosen

1
มันควรจะทำงานด้วยการ/dev/sda5คลิกขวาและตรวจสอบ
จอร์จ Udosen

@ George - บน/dev/sda5i DO มีDeactivateตัวเลือก ฉันคลิกที่นั้นจากนั้นในแถบสถานะด้านล่างซ้ายในgparted: สิ่งที่กะพริบอย่างรวดเร็ว (เร็วเกินไปที่จะอ่าน) แล้วมันใช้เวลาประมาณ 20 วินาทีในการ "ค้นหาปริมาตร lvm" เล่นlvdisplayก่อนและหลังทั้งสองเล่มใน/dev/sda5(รากและสลับ) availableยังคงอยู่ ฉันเชื่อว่ามีวัตถุประสงค์เพื่อเปลี่ยนเป็น " not-available" หรือไม่
ไมค์

คำตอบ:


1

หลังจากความตกตะลึงเป็นอย่างมาก :) ฉันค้นพบว่าปัญหาของฉันเกี่ยวข้องกับสแน็ปช็อตเป็นส่วนหนึ่ง (อย่างที่กล่าวไว้ทั้งหมดนี้อยู่ใน VM)

  • ดิสก์ที่ฉันพยายามจะแก้ไขนั้นมาจากเครื่องที่มีสแนปชอต
  • ฉันติดตั้ง / พยายามปรับขนาดฐาน / ต้นฉบับ.vdiไม่ได้ทำอะไรเลยกับสแนปชอต
  • เนื้อหาของการติดตั้งนั้นแท้จริงแล้วดังนั้นจึงไม่ปรากฏแก่ฉันในตอนแรกว่า GUID ที่ฉันเห็นนั้นเป็นดิสก์ที่ถูกต้อง แต่เป็น 'snapshot' แบบเก่า

เพื่อพิสูจน์สิ่งนี้ฉันโคลน VM จาก snapshot ของvirtualbox UI ซึ่งให้ตัวเลือกเพื่อทำให้แบนที่สถานะปัจจุบัน

ดูเหมือนว่าจะใช้งานได้ (รวมถึงไม่พบข้อมูลเสียหาย) ดังนั้นฉันจึงกลับมาบูตใน svr vm ดั้งเดิมด้วยดิสก์ที่ปรับขนาดแล้ว!

  1. ปิดและโคลน vm จากสถานะใด ๆ / สแนปชอต - รวมเฉพาะสถานะปัจจุบัน `(ซึ่งจะทำให้สแนปชอตทั้งหมดราบเรียบ)
    • ฉันแน่ใจว่าทั้งหมดนี้เป็นไปได้ที่ด้านบนของภาพรวม; สำหรับฉันนี้เป็นที่ยอมรับและเอาตัวแปรบางอย่างออกจากการผสมผสาน
    • หมายเหตุฉันมีดิสก์แบบไดนามิก ไม่แน่ใจว่ามีความแตกต่างใด ๆ สำหรับสแตติก (ควรจะไม่ใช่ แต่ฉันยังไม่ได้ทดสอบ)
  2. ปรับขนาดผลลัพธ์ที่ถูกโคลนและ vdi ที่แบน (เช่นไม่มีสแนปชอต)
    • VboxManage.exe modifyhd <vdi> --resize 50000 # ~ 50gb
  3. เชื่อมต่อดิสก์ที่ปรับขนาดไปยัง VM linux แยกต่างหากและบู๊ตเครื่อง
  4. unmount และลบ vg
    • fs รูทที่ฉันพยายามจะย่อขนาดอยู่ที่ /dev/mm-ubuntu16-svr-vg/root
      • เรียกสิ่งนี้/dev/MY_VG/rootด้านล่าง
    • mount | grep 'VG' แล้วsudo umount <mountpoint>ถ้ามันถูกติดตั้ง
    • sudo lvchange -an /dev/MY_VG # ลบโลจิคัลวอลุ่ม
    • sudo vgchange -an MY_VG # ลบกลุ่มวอลุ่ม
  5. ปรับขนาดพาร์ติชัน / volumn / และ fs
    • sudo gparted & # ดำเนินการต่อด้วยการปรับขนาดปกติ
      • ฉันเป็นพาร์ทิชันขยายการเจริญเติบโตแล้วเติบโตบนเลเวล
      • คำแนะนำ 'ปกติ' ทั้งหมดทำงานที่นี่ในภาพคำถามของฉันนี่คือการปรับขนาด (เติบโต) /dev/sda2ตามด้วยการปรับขนาด (เติบโต) บน/dev/sda5
    • lvresize -l +100%FREE /dev/MY_VG/root
    • e2fsk -f /dev/MY_VG/root # resize2fs กระตุ้นให้ฉันเรียกใช้การล้างข้อมูลนี้
    • resize2fs /dev/MY_VG/root

ทำ! ในขณะที่ยังอยู่ใน VM อื่น ๆ เชื่อมต่อและตรวจสอบความจุ:

  • sudo vgchange -ay MY_VG && sudo lvchange -ay /dev/MY_VG # เช่นย้อนกลับของการลบ
  • sudo mkdir <mountpoint> && sudo mount /dev/MY_VG/root <mountpoint>
  • df -h # YAY แสดงให้เห็นถึง ~ 50gb รวม!

จากนั้นก็ปิดตัวลงและทำการบู๊ตเข้าสู่vm ดั้งเดิม (เช่นCloned & flattened ) vm มันบูทและมีพื้นที่ว่างที่คาดไว้ / ไดรฟ์รากและระบบไฟล์ 50GB

หวังว่านี่จะช่วยใครซักคน!


การทำงานที่ยอดเยี่ยมดีใจที่มันได้ผลทั้งหมด ไชโย
George Udosen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.