ฉันจะแคชการแบ่งปัน NFS บนดิสก์ภายในเครื่องได้อย่างไร


37

ฉันใช้ NFS เพื่อแบ่งปันสื่อกับคอมพิวเตอร์รอบ ๆ บ้านของฉัน น่าเสียดายที่หนึ่งในเครื่องอยู่บนลิงค์ไร้สายที่ช้ามีวิธีการแคชเครือข่ายบนดิสก์ภายในเครื่องเพื่อประสิทธิภาพหรือไม่?

คำตอบ:


43

สเตฟานพาฉันไปสู่เส้นทางที่ถูกต้อง สิ่งนี้จะทำงานบนระบบ 12.04 และใหม่กว่า

ระบบไฟล์ของคุณจะต้องมีการรองรับคุณสมบัติเพิ่มเติม หากคุณใช้ EXT4 คุณก็ไม่เป็นไรถ้าคุณใช้ EXT3 คุณจะต้องตรวจสอบให้แน่ใจว่าระบบไฟล์ของคุณติดตั้งอยู่กับuser_xattrแอตทริบิวต์

นี่คือวิธีที่ฉันติดตั้งบนเครื่องไคลเอนต์คุณไม่จำเป็นต้องทำอะไรบนฝั่งเซิร์ฟเวอร์

  1. ก่อนอื่นให้ติดตั้งภูตพื้นที่ผู้ใช้: sudo apt-get install cachefilesd

  2. จากนั้นเปิดใช้งานโดยแก้ไข/etc/default/cachefilesdและเปลี่ยนสายการทำงานเป็นRUN=yes

  3. ตรวจสอบให้แน่ใจว่าการเมานต์ NFS ของคุณ/etc/fstabมีfscตัวเลือก อย่าลืมที่จะนับใหม่หลังจากที่คุณทำการเปลี่ยนแปลง นี่คือข้อความที่ตัดตอนมาของฉัน (แก้ไขตามความต้องการของคุณ):

    192.168.1.115:/home/jorge /home/jorge/Backup nfs fsc

  4. เริ่มบริการ: sudo /etc/init.d/cachefilesd start

การกำหนดค่าแคชเสร็จสิ้นแล้ว/etc/cachefilesd.confให้ดูการอ้างอิงสำหรับตัวเลือกการตั้งค่าที่มี

อ้างอิง:


มันเกิดขึ้นรู้วิธีการใช้ในเดียวกัน/etc/auto.master?
โซริน

โปรดทราบว่ามีข้อผิดพลาดซึ่งอาจทำให้cachefilesddaemon ทำงานที่ CPU 100%: redhat.com/archives/linux-cachefs/2014-Fenberg/msg00001.html bugzilla.redhat.com/show_bug.cgi?id=485314
akaihola

2
อย่างน้อยที่สุดของ Ubuntu 14.04, rw, hard เป็นค่าเริ่มต้นและ intr ถูกคัดค้าน ดังนั้นตัวเลือกเดียวที่คุณใช้ซึ่งมีผลในวันนี้คือ fsc
Andrew Wagner

@AndrewWagner โปรดส่งการแก้ไขไปยังบทความ!
Jorge Castro

10

ฉันไม่แน่ใจว่ามีวิธีการใดที่จะทำสิ่งนี้กับ Ubuntu 10.04 LTS หรือไม่

อย่างไรก็ตามเคอร์เนลรุ่นใหม่กว่าของ Linux มีคุณสมบัติที่เรียกว่าFS-Cache & CacheFSซึ่งฟังดูคล้ายกับที่คุณต้องการ (และฉัน)

ยังเห็นท้องถิ่นแคชสำหรับระบบแฟ้มเครือข่าย


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