พื้นที่ว่างใน / เรียกใช้ต่ำ


11

ใน Ubuntu ที่แม่นยำฉันมีพื้นที่เหลือน้อยใน / เรียกใช้:

admin@foo:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        19G  6.6G   12G  38% /
udev             10M  8.0K   10M   1% /dev
none             50M   40M   11M  79% /run
none            5.0M     0  5.0M   0% /run/lock
none            249M     0  249M   0% /run/shm

ฉันควรจัดสรรเพิ่มเติมหรือไม่ อย่างไร?

แก้ไข: นี่คือ fstab ของฉัน:

admin@foo:~$ cat /etc/fstab
proc            /proc       proc    defaults    0 0
/dev/sda1       /           ext3    defaults,errors=remount-ro,noatime    0 1
/dev/sda2       none        swap    sw          0 0

คำตอบที่เกี่ยวข้องในออสเตรเลียที่นำเสนอวิธีแก้ปัญหาที่ใช้ในmount /etc/rc.local
lgarzo

@lgarzo: ในขณะที่ดูเหมือนว่าแปลกที่จะกำหนดขนาดในสคริปต์คำถามและคำตอบที่คุณโพสต์เพื่อหารือเกี่ยวกับขนาดที่ค่อนข้างเล็กสำหรับ / run และวิธีหนึ่งของผู้ชายที่จะเพิ่มขนาด คุณเป็นคำตอบที่ดีที่สุด; กรุณาตอบมันด้วยเพื่อที่ฉันจะได้ยอมรับมัน
Brian

คำตอบ:


13

ในโพสต์บน Ask Ubuntu , korridentแนะนำวิธีแก้ปัญหาที่เป็นไปได้:

การเพิ่มmountคำสั่งลงใน/etc/rc.localไฟล์:

mount -t tmpfs tmpfs /run -o remount,size=85M

ตรวจสอบให้แน่ใจว่าสคริปต์จะ " exit 0" สำเร็จหรือค่าผิดพลาดอื่น ๆ (ข้อความที่ตัดตอนมาจากไฟล์)


1
คุณสามารถใช้คำสั่งนี้บน Ubuntu หรือ debian สำหรับขนาดการเปลี่ยนแปลงโดยไม่ต้องรีบูท - mount -o remount, size = 2G, noatime / run
James M

4

ฉันไม่คิดว่าจำเป็นต้องเพิ่มขนาด / เรียกใช้ แต่ในกรณีที่คุณต้องการเพิ่มให้ลองแก้ไขไฟล์ / etc / fstab ของคุณ จุดเมานต์และพาร์ติชันส่วนใหญ่ทั้งหมดจะแสดงรายการไว้ หากพาร์ติชัน / run ของคุณเป็น tmpfs (ซึ่งควรเป็นอย่างน้อยตาม/ubuntu/57297/why-has-var-run-been-migrated-to-runฉันจะยืนยันก่อน ทำตามคำแนะนำเหล่านี้) จากนั้นคุณสามารถเปลี่ยนสาย fstab ของ / รันการเมานต์ของคุณเป็นสิ่งที่คล้ายกับต่อไปนี้:

none /dev/shm tmpfs defaults,size=8G 0 0

มาดูกันว่าขนาดจะถูกประกาศหลังจากdefaults? ลองทำดู คุณสามารถใช้เมกะไบต์เช่นกันโดยใช้ M:

none /dev/shm tmpfs defaults,size=100M 0 0

รีบูทคอมพิวเตอร์หลังจากนี้และการเปลี่ยนแปลงจะเกิดขึ้น

แก้ไข : ขีดข่วนดูเหมือนว่า Ubuntu จะสร้างrunพาร์ติชั่นโดยใช้ไฟล์ใน / etc / init และ /etc/init.d ไม่ใช่ fstab คุณต้องตรวจสอบไฟล์เหล่านั้นและค้นหาคำสั่ง mount ที่ใช้ในการสร้างrunและแก้ไขด้วยตนเอง ฉันไม่มีกล่องเพื่อทดสอบสิ่งนี้ในตอนนี้ แต่ลองใช้สิ่งนี้:

find /etc/init* -type f | xargs grep "mount"

หรือ

find /etc/init* -type f | xargs grep "run"

หากมีการติดตั้งผ่านสคริปต์ทุบตีนี้ควรหาไฟล์และบรรทัดที่ติดตั้ง


2
ไม่จำเป็นต้องรีบูตเครื่อง mount -o remount /runคุณก็สามารถทำ
ไมเคิลแฮมป์ตัน

จะไม่ล้มเหลวมากที่สุดว่า? การพิจารณา / เรียกใช้ยังคงใช้งานโดยกระบวนการในระบบหรือไม่
Marcos Velazquez

อาจเป็นไปได้ แต่ไม่ค่อยมีโอกาส ลองใช้ดูว่าเกิดอะไรขึ้น
Michael Hampton

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

สิ่งนี้ดูเหมือนจะไม่ทำงาน - ลองใช้แล้วมันไม่ได้เปลี่ยนขนาด / เรียกใช้
user9517

2

เพิ่มระบบไฟล์ tmpfs ชั่วคราว

1) เปิด/etc/fstabด้วยviหรือแก้ไขข้อความที่คุณเลือก

2) ค้นหาบรรทัด/dev/shmและใช้ตัวเลือกขนาด tmpfs เพื่อระบุขนาดที่คุณต้องการ

e.g. 512MB:
tmpfs      /dev/shm      tmpfs   defaults,size=512m   0   0

e.g. 2GB:
tmpfs      /dev/shm      tmpfs   defaults,size=2g   0   0

หลังจากนั้น

mount -o remount /dev/shm

0

สิ่งนี้ไม่ได้ตอบคำถามตามที่ถามอย่างเคร่งครัดเพราะคุณสมบัตินี้ไม่ได้อยู่ใน Ubuntu 12.04 แต่ในกรณีที่ช่วยคนที่มีคำถามคล้ายกันเช่น Debian buster หรือ Ubuntu 18.10 คุณสามารถใช้initramfs.runsize=พารามิเตอร์การบูตได้ ค่าเริ่มต้นคือinitramfs.runsize=10%แต่คุณอาจใช้เช่นinitramfs.runsize=20%หรือinitramfs.runsize=128Mแทน

คุณลักษณะนี้ถูกเพิ่มเข้ามาในการตอบสนองต่อDebian ข้อผิดพลาด #

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