问题描述
我使用NFS将媒体分享到我家附近的计算机上。不幸的是,其中一台机器处于慢速无线链路上,有没有办法缓存本地磁盘上的网络共享以提高性能?
最佳解决方案
Stefan led me down正确的轨道。这适用于任何12.04及更高版本的系统。
您的文件系统还需要扩展属性支持。如果您使用的是EXT4,那么如果您使用的是EXT3,则需要确保使用user_xattr
属性安装文件系统。
以下是我在客户端计算机上进行设置的方法,您无需在服务器端执行任何操作。
-
首先,安装用户空间守护程序:
sudo apt-get install cachefilesd
-
然后通过编辑
/etc/default/cachefilesd
并将运行线更改为RUN=yes
将其打开 -
确保您在
/etc/fstab
中的NFS安装具有fsc
选项。在进行更改后,不要忘记重新安装它。这是我的摘录(根据您的需要修改):192.168.1.115:/home/jorge /home/jorge/Backup nfs fsc
-
启动服务:
sudo /etc/init.d/cachefilesd start
缓存的配置在/etc/cachefilesd.conf
中完成,请参阅参考资料以了解设置选项。
参考文献:
-
/usr/share/doc/cachefilesd/howto.txt.gz
-
/usr/share/doc/cachefilesd/README.gz
次佳解决方案
我不确定目前是否有任何方法可以使用Ubuntu 10.04 LTS。
但是,较新版本的Linux内核包含一个名为FS-Cache & CacheFS的功能,它听起来与您(和我)想要的完全一样。
另见Local Caching For Network Filesystems。