mount -t nfs -o nosuid,noexec,nodev,rw 192.168.10.10:/data /mnt
# grep mnt /proc/mounts
192.168.10.10:/data/ /mnt nfs4 rw,nosuid,nodev,noexec,relatime,vers=4,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.10.11,minorversion=0,local_lock=none,addr=192.168.10.10 0 0
noexec 禁止可讀程式運作,僅限執行這個指令本身,不算再加解釋器。
nosuid,noexec 對于shell ,php執行是可以的。。。但是再加解釋器就不行了。 (安全選項)
# ll rm
-rwsr-xr-x 1 root root 57440 3月 28 00:08 rm
# ./rm /tmp/xx
-bash: ./rm: 權限不夠
伺服器端
# cat /var/lib/nfs/etab
/data 192.168.10.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534,sec=sys,rw,root_squash,no_all_squash)
用戶端 # umount -lf /mnt/ 強制解除安裝
192.168.10.10:/data/ /mnt nfs4 rw,nodev,relatime,vers=4,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.10.11,minorversion=0,local_lock=none,addr=192.168.10.10 0 0
# mount -t nfs -o nosuid,noexec,rsize=1024,wsize=1024,rw 192.168.10.10:/data/ /mnt
測試性能
# time dd if=/dev/zero of=/tmp/testfile bs=9k count=2000
記錄了2000+0 的讀入
記錄了2000+0 的寫出
18432000位元組(18 MB)已複制,3.37836 秒,5.5 MB/秒
real 0m3.526s
user 0m0.002s
sys 0m0.257s
去掉rsize=1024,wsize=1024後 去掉讀寫限制
18432000位元組(18 MB)已複制,0.833856 秒,22.1 MB/秒
real 0m0.842s
user 0m0.001s
sys 0m0.065
# mount -t nfs -o nosuid,noexec,noatime,nodiratime,rw 192.168.10.10:/data /mnt/
讀取檔案
# time for ((i=1;i<5000;i++)); do cat /mnt/test.sh > /dev/null ;done
real 0m6.804s
user 0m0.920s
sys 0m2.325s
6.4 X86_64 推薦
mount -t nfs -o noatime,nodiratime,nosuid,noexec,nodev,rw,bg,hard,intr,rsize=131072,wsize=131072 192.168.10.10:/data /mnt
簡單性能優化
mount -t nfs -o noatime,nodiratime,rsize=131072,wsize=131072 192.168.10.10:/data /mnt
檢視# grep /mnt /proc/mounts
官方優化
# cat /proc/sys/net/core/rmem_default 接收套接字緩沖器大小
124928
# cat /proc/sys/net/core/rmem_max
指令行
# echo 8388608 > /proc/sys/net/core/rmem_default
# echo 16777216 > /proc/sys/net/core/rmem_max
NFS 生産環境 核心優化
cat >> /etc/sysctl.conf <<EOF
net.core.wmem_default = 8388608 w發送
net.core.rmem_default = 8388608 r接收
net.core.rmem_max = 16777216
net.core.wmem_max = 1677216
EOF
sysctl -p
mount -lf /mnt 強制取消挂載
伺服器端挂載:/data 192.168.10.10/24(rw,async,all_squah,anonuid=555,anongid=555)
用戶端:rsize,wsize,noatime,nodirtime,nosuid,noexec,soft(hard,intr)
showmount -e
exprtfs -o rw
rpcinfo -p
防火牆指令
iptables -A INPUT -s 192.168.10.10/24 -j ACCEPT
# man exports
C6用戶端:
autofs 自動挂載
autofs.x86_64 : A tool for automatically mounting and unmounting
: filesystems
# yum -y install autofs
禁止用yum remove 可能會出現很多問題
# /etc/init.d/autofs start
# cat /etc/auto.master 配置檔案
/mnt /etc/auto.misc --timeout 10(退出後10秒取消)
#vi /etc/auto.misc 動作
nfsdata -fstype=nfs 192.168.10.10:/data
最後挂載詳情: 隐藏的
192.168.10.10:/data 18G 2.5G 14G 15% /mnt/nfsdata
# cat /etc/sysconfig/autofs 配置參數
其他指令
uname -r /-m
grep -E / -v "#|^$"
資料和7*24
本文轉自 295631788 51CTO部落格,原文連結:http://blog.51cto.com/hequan/1760940,如需轉載請自行聯系原作者