Linux: ไม่มีข้อผิดพลาดของอุปกรณ์เหลือพื้นที่ว่าง 50%


8

หลังจากใช้เวลาหนึ่งวันบดหัวของฉันบนโต๊ะฉันจะขอบคุณความช่วยเหลือ

ฉันกำลังใช้ Squid-Proxy ใน Fedora 14. แม้ว่าฉันจะพยายามtouch /tmp/fooฉันจะได้รับข้อผิดพลาด "ไม่มีพื้นที่เหลือบนอุปกรณ์" ก็ตาม fsckผมเคยขับรถแล้ว หากฉันลบไฟล์ว่า 1MB ฉันจะสามารถจัดเก็บข้อมูล 1MB อีกครั้ง แต่ไม่เกินนั้น ข้อสังเกตคือฉันมีพื้นที่ว่างมากมาย:

df เอาท์พุท:

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda3             16311208   7614872   7867768  50% /
tmpfs                  1028548         0   1028548   0% /dev/shm
/dev/sda1               198337     55345    132752  30% /boot
/dev/sdb1             25803036  19407324   5084996  80% /mnt/squid-cache

ทุกคนมีความคิดว่าฉันสามารถลอง "เรียกคืน" พื้นที่ว่างได้อย่างไร

คำตอบ:


16

คาดเดาว่าคุณมีไอโหนดมากกว่าดิสก์บล็อกนั่นก็หมายความว่าคุณมีข้อ จำกัด เกี่ยวกับจำนวนไฟล์ที่ระบบไฟล์สามารถเก็บได้แทนที่จะ จำกัด จำนวนข้อมูลทั้งหมด

คุณสามารถใช้df -iเพื่อตรวจสอบสิ่งนี้


แปลกที่เขาจะหมด inodes ในพื้นที่ดิสก์รอบ 50% ที่ดีแม้ว่า ... แต่คุ้มค่าที่จะดู Squid สร้างไฟล์จำนวนมาก
LawrenceC

TomH คุณตอกมัน มันเป็นอย่างนั้น ... "iFree = 0" ขอบคุณมากสำหรับคำใบ้นี้!
Layticia

@ultrasawblade squid-cache-dir อยู่บนดิสก์อื่น (sdb) ปัญหาอยู่ที่ system-disk (sda) ฉันกำลังสร้างรายงาน "sarg" และนี่หมายถึงไฟล์จำนวนมากจาก 12 เดือนที่ผ่านมา
Layticia

B / c ดิสก์ของฉันเต็ม .. และต้องการพื้นที่เพิ่มขึ้นดูเหมือนว่าforum.fedoraforum.org/showthread.php?t=246302บอกว่าฉันต้องฟอร์แมตใหม่ เมื่อทำการฟอร์แมตใหม่จะเลือก XFS - ดูเหมือนว่าจะทำให้ฉันขยายขนาด
jedierikb


0

Linux สงวนเปอร์เซ็นต์ของบล็อกสำหรับ superuser ปกติตั้งไว้ที่ 5% 50% สูงผิดปกติ ด้วยtune2fs -mคุณสามารถเปลี่ยนที่


0

สิ่งนี้สามารถเกิดขึ้นได้หากคุณใช้ btrfs และในกรณีนั้นการแก้ไขเหล่านี้จะไม่ทำงาน

หลังจากติดตามเส้นทางเท็จจำนวนมากในที่สุดฉันก็มาถึงเส้นทางที่ถูกต้องหลังจากเริ่มค้นหาด้วย

หมายเลข btrfs

และได้รับ

btrfs ไม่มีพื้นที่เหลือบนอุปกรณ์

เป็นความสำเร็จครั้งแรก สิ่งนี้นำไปสู่ปัญหา BTRFS wiki เห็นได้ชัดว่ามันเป็นปัญหาที่พบบ่อย

แต่ถึงอย่างนั้นมันก็ไม่ง่ายที่จะแก้ปัญหาของฉัน ฉันสามารถเรียกใช้ยูทิลิตี้ที่เหมาะสมโดยการบูตในโหมดการกู้คืนการเลือกที่เมาท์ระบบไฟล์ของฉันและจากนั้นไปที่รูท

บทความ wiki กล่าวว่ารัน btrfs balance แต่นั่นจะไม่ทำงานสำหรับระบบไฟล์ทั้งหมดและในที่สุดฉันก็พบวิธีของฉันที่นี่ (ซึ่งเป็นผลการค้นหาครั้งที่สองด้วย)

หากระบบไฟล์ของคุณเต็มจริง ๆ แล้วความสมดุลจะไม่ทำงาน หรือมันจะทำงานเฉพาะค่าเล็ก ๆ ของ -dusage

สูตรในกรณีนี้มันอยู่ที่ด้านล่างของโพสต์ ฉันพบว่ามันสับสนและปฏิเสธเป็นวิธีแก้ปัญหาในตอนแรกเพราะโปสเตอร์ลบสแนปชอตซึ่งฉันคิดว่าจำเป็นและเนื่องจากฉันไม่ได้ถ่ายรูปสแนปช็อตฉันคิดว่ามันไม่ได้ใช้ แต่มันก็ทำ ขั้นตอนสแนปชอตอาจมีความสำคัญสำหรับบางคน แต่มันก็ไม่ใช่สำหรับฉัน

การแก้ไขในภาพรวมคือ:

  1. สร้างไฟล์ขนาดใหญ่
  2. ทำให้มันเป็นอุปกรณ์ห่วง
  3. แนบอุปกรณ์เข้ากับ fs ที่ไม่สามารถปรับสมดุลได้
  4. เรียกใช้ยอดคงเหลือ
  5. ถอดอุปกรณ์
  6. Nuke ไฟล์เพื่อให้ได้พื้นที่นั้นกลับมา

โพสต์อ้างอิงให้ขั้นตอนบรรทัดคำสั่ง

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