ทำไม / tmp ไม่ใช้ tmpfs?


17

ฉันมี RAM จำนวนมากและฉันใช้น้อยมาก ฉันยังบันทึก screencasts ด้วยgtk-recordmydesktopซึ่งตามค่าเริ่มต้นจะบันทึก/tmpในขณะที่บันทึก ฉันคิดว่ามันจะหมายถึงการจัดเก็บ RAM มากที่สุดเท่าที่จะเป็นไปได้ แต่จากนั้นฉันตรวจสอบจริงและพบ/tmpว่าไม่ได้ติดตั้งด้วย tmpfs ทำไมถึงเป็นอย่างนั้น?


คำตอบ:


16

ฉันคิดว่าคุณตอบคำถามของคุณเอง มีโปรแกรมจำนวนมากที่ใช้/tmpสำหรับเก็บไฟล์ชั่วคราวและอาจมีขนาดใหญ่มาก

ตัวอย่างเช่นBraseroเริ่มต้นที่ไดเรกทอรีนั้นเพื่อจัดเก็บไฟล์ภาพของ CD / DVD ซึ่งสามารถมีขนาด 4.7 GB มันไม่คุ้มค่าที่จะเสี่ยงกับการชะลอตัวลงอย่างรุนแรง (หรือการล็อคระบบ) ในสถานการณ์ที่หน่วยความจำไม่เพียงพอหาก RAM และ swap ของคุณเต็ม

สำหรับผู้ใช้ขั้นสูงมันเป็นปัญหาที่จะเปลี่ยนค่าเริ่มต้นของบางโปรแกรมและติดตั้งไม่เป็น/tmp tmpfsสำหรับการใช้งานทั่วไปมันไม่คุ้มค่ากับความเสี่ยงที่ฉันเดา


1
และฉันคิดว่าคุณอาจจะโกรธเล็กน้อยและสาปแช่งนักพัฒนาหากคุณบันทึก screencasts ที่ยอดเยี่ยมไม่กี่แห่งจากนั้นหลังจากไฟฟ้าดับหรือระบบขัดข้องทำให้พวกเขาสูญเสียพวกเขาทั้งหมด ;)
จัดการ

และสิ่งต่าง ๆ ใน / tmp อาจอยู่ใน RAM และอย่าแตะดิสก์ถ้าคุณใช้ ext4
LasseValentini

@Fraekkert: คุณหมายถึงอะไร ทำไมต้อง ext4 ทำไมไม่ กรุณาอธิบายเพิ่มเติมหน่อยได้ไหม?
จัด

1
มันไม่ซ้ำกับ ext4 แต่มันเป็นเพราะการจัดสรรล่าช้า โดยพื้นฐานแล้วหมายความว่าไฟล์นั้นไม่จำเป็นต้องเขียนลงดิสก์เพราะโปรแกรมบอกให้ OS ทำเช่นนั้น แต่มันจะถูกเก็บไว้ในหน่วยความจำเพื่อการเข้าถึงที่รวดเร็ว หากไฟล์ถูกลบอย่างรวดเร็วหลังจากนั้นไฟล์จะไม่ถึงดิสก์ ดูวิกิพีเดียถ้าคุณต้องการข้อมูลเพิ่มเติม
LasseValentini

1
สำหรับการอ้างอิงนี่คือความคิดเห็นที่อธิบายหัวข้อ 5/30 วินาทีโดยละเอียด: bugs.launchpad.net/ubuntu/+source/linux/+bug/317781/comments/45
lxgr

10

แล้วการบีบอัด zram ล่ะ?

พื้นที่ว่างที่มีอยู่มากกว่า 256 Mbytes ขึ้นอยู่กับประเภทของไฟล์

modprobe zram num_devices=1 
# max ram usage = 256 Mbytes
echo 262144 > /sys/block/zram0/disksize
mke2fs -q -m 0 -b 4096 -O sparse_super -L zram /dev/zram0
mount -o relatime,noexec,nosuid /dev/zram0 /tmp

นั่นเป็นความคิดที่น่าสนใจจริง ๆ ... จะลองทำดู :)
Piskvor

8

มีความคิดที่จะใช้ tmpfs ในขณะที่มันมีพื้นที่เพียงพอและเขียนลงดิสก์เมื่อคุณไม่มีที่ว่าง: http://www.bigdbahead.com/?p=137 อย่างไรก็ตามมันไม่เคยเอาออกจริงๆ ฉันจัดการเพื่อให้มันใช้งานได้ แต่ค่าใช้จ่ายของ FUSE เอาชนะผลประโยชน์ใด ๆ จากการใช้ tmpfs: http://shnatsel.blogspot.com/2011/11/miniwheatfs-aka-reliable-ramdisks.html

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