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
124928
命令行
# echo 8388608 > /proc/sys/net/core/rmem_default
# echo 16777216 > /proc/sys/net/core/rmem_max
NFS 生产环境 内核优化
cat >> /etc/sysctl.conf <
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
# cat /var/lib/nfs/etab
# 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