ไม่มีที่ว่างในระบบไฟล์รูทฉันจะเพิ่มขนาดได้อย่างไร


24

นี่คือระบบไฟล์ของฉัน:

 $ df -h -x tmpfs -x devtmpfs
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/fedora-root  9.8G  7.6G  1.7G  83% /
/dev/mapper/fedora-home   50G   27G   21G  57% /home
/dev/sda9               1022M  8.4M 1014M   1% /boot/efi

และอย่างที่คุณเห็นระบบไฟล์รูทเต็ม

ฉันพยายามลบสิ่งที่ไร้ประโยชน์ทั้งหมดแล้ว แต่ก็ยังมีพื้นที่ไม่เพียงพอ

ฉันจะเพิ่มได้อย่างไร ฉันเหลือ 60 giga ในฮาร์ดไดรฟ์ของฉันมีวิธีใดบ้างที่ฉันจะย้ายระบบไฟล์รูทของฉันไปที่นั่น


3
คุณสามารถแสดงผลลัพธ์ของsudo pvscanได้ไหม
mattdm

1
@mattdm PV /dev/sda10 VG fedora lvm2 [141.56 GiB / 77.56 GiB free] Total: 1 [141.56 GiB] / in use: 1 [141.56 GiB] / in no VG: 0 [0 ]
Dimitri Danilov

15
เอ่อ 1.7G ฟรีปัญหาอยู่ที่ไหน
Simon Richter

3
หากนี่คือคำจำกัดความของคุณ "เต็ม" คุณควรเห็นระบบไฟล์ของฉัน lol
Lightness Races กับ Monica

2
@SimonRichter ฉันมี 1.9 giga เมื่อฉันลบ / var / cache ทั้งหมดของฉัน แต่ไดเรกทอรีนี้เต็มไปอย่างรวดเร็วและฉันมี ~ 100 mo โดยเฉลี่ย
Dimitri Danilov

คำตอบ:


47

ข่าวดี! pvscanแสดงPV /dev/sda10 VG fedora lvm2 [141.56 GiB / 77.56 GiB free]- ดังนั้นคุณควรจะสามารถเพิ่มได้มากถึง 77.56GiB ในระบบไฟล์ใด ๆ ของคุณ ฉันขอแนะนำให้เพิ่มเข้าไปในบล็อกขนาดเล็ก (เช่น 10GiB) ดังนั้นคุณมีเงินสำรองที่จะใส่/homeถ้าคุณตัดสินใจว่าคุณต้องการการเติบโตที่นั่นในภายหลัง

นี่เป็นการดำเนินการที่ค่อนข้างผ่านการทดสอบอย่างดีและปลอดภัย แต่การดำเนินการในระดับรากและระบบไฟล์ทั้งหมดมีความเสี่ยง - ให้แน่ใจว่าคุณมีการสำรองข้อมูลที่ใช้งานได้ก่อน แล้ว ....

คุณสามารถขยายโลrootจิคัลวอลุ่มของคุณเพื่อใช้พื้นที่ว่างด้วยlvextendเช่นนี้:

sudo lvextend --size +10G --resizefs /dev/fedora/root

(หรือ-Lและ-rแทน--sizeและ--resizefsถ้าคุณต้องการตัวเลือกสั้น ๆ )


5
ในขณะที่มันเป็นความคิดที่ดีที่จะมีการสำรองข้อมูล ฉันคิดว่านี่เป็นความเสี่ยงที่ค่อนข้างต่ำเนื่องจากไม่มีการย้ายข้อมูลที่มีอยู่และระบบไฟล์เป็นลินุกซ์ดั้งเดิม (สันนิษฐาน) ลินุกซ์ไม่ใช่วิศวกรรมย้อนกลับ
plugwash

141.56 GiB / 77.56 GiB freeอ่านเช่น X out of Y ฟรี ดังนั้นในตอนแรกฉันคิดว่ามันเป็นเรื่องตลก: P
Insane

1
@Insane ใช่นั่นไม่ใช่รูปแบบที่ดีที่สุด คุณสามารถรับข้อมูลเดียวกันในรูปแบบที่แตกต่างจากpvsหรือpvdisplayถ้าคุณต้องการ
mattdm

10

คำตอบทั่วไปเพิ่มเติมสำหรับ LVM:

ประการแรก - ตรวจสอบให้แน่ใจว่าคุณมีพื้นที่เก็บข้อมูลเพิ่มเติมที่ไม่แบ่งพาร์ติชัน แล้ว:

  1. ใช้fdiskเพื่อสร้างพาร์ติชันใหม่ (ปลอดภัยกว่าการขยายพาร์ติชันที่มีอยู่เดิม)

  2. ใช้pvcreateเพื่อสร้างปริมาณ LVM จริง:

    pvcreate /dev/sdxx
    
  3. ใช้ vgextendเพื่อขยายกลุ่ม LVM ที่มีอยู่โดยใช้ฟิสิคัลวอลุ่มใหม่:

    vgextend groupname /dev/sdxx
    

    คุณสามารถรับชื่อกลุ่มด้วย vgdisplay

  4. ใช้lvextendกับ lvm mapper เพื่อขยายปริมาณ lvm:

    lvextend -l +100%FREE /dev/mapper/xxx
    
  5. ขยายระบบไฟล์:

    xfs_growfs /dev/mapper/xxx
    

    หรือ

    resize2fs /dev/mapper/xxx
    

1

ระบบไฟล์ / อาจเป็นสิ่งที่ท้าทายอย่างยิ่งเนื่องจากต้องได้รับการสนับสนุนจากบูตโหลดเดอร์

คำตอบนี้ไม่ได้ระบุวิธีการทำงานให้สำเร็จตามที่ร้องขอ แต่จะให้วิธีแก้ปัญหา

ตัวเลือกอื่น: ค้นหาไดเรกทอรีย่อย (เช่น / ใหญ่ /) ซึ่งมีข้อมูลจำนวนมาก จากนั้นคัดลอกข้อมูลนั้นไปยังพื้นที่ว่าง 60GB ของคุณ mv ไดเรกทอรีที่มีพื้นที่มากมาย (เช่น mv / big / bigback) และติดตั้ง 60GB ของคุณ (หรือบางส่วน) ลงบน / ใหญ่ หลังจากยืนยันทุกอย่างทำงานตามที่คาดไว้ rm / bigback เพื่อรับพื้นที่บน /


หากคุณทำสิ่งนี้ในภายหลังให้ทำtouch /.autorelabel; rebootเพื่อให้แน่ใจว่าไฟล์ที่ย้ายมีป้ายกำกับ SELinux ที่ถูกต้อง
mattdm

1
นี่เป็นทางออกที่ถูกต้องและมีประโยชน์ (ไม่ต้องการความรู้มาก) เมื่อเราบินโดยไม่มี LVM ด้วยการเปลี่ยนแปลงที่เจ็บปวดน้อยลง
Gombai Sándor

ไม่มีเหตุผลในหลักการที่ / จำเป็นต้องได้รับการสนับสนุนจาก bootloader แต่ในกรณีนี้มันเป็นจริงเพราะไม่มีการแยก / บูต เมื่อลิงด้วย LVM ให้สร้าง / บูตของจริงเสมอ
Joshua

-1

ตัวเลือกอื่นก่อนที่คุณจะพยายามทำอะไรที่รุนแรงกว่านี้ก็คือใช้BleachBitเพื่อลบไฟล์ชั่วคราวและไฟล์ที่ไม่จำเป็นอื่น ๆ

จากวิกิพีเดีย:

BleachBit เป็นโปรแกรมทำความสะอาดพื้นที่ดิสก์โอเพนซอร์ซผู้จัดการความเป็นส่วนตัวและระบบเพิ่มประสิทธิภาพคอมพิวเตอร์ฟรี

ควรอยู่ในตัวจัดการแพคเกจดังนั้นควรทำเช่นนี้

sudo yum install bleachbit

หรือดาวน์โหลดจากหน้าของพวกเขา

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