linux nfs网络文件共享

第一,首先在服务器上装 nfs-utils 和libs 两个rpm文件包可以 yum源进行yum -y install nfs-utils*   

第二, 建立要共享的文件夹 如在 mkdir  /it  设置改文件共享 。

第三, 设置配置文件 /etc/exports   打开文件里面是空的 设置格式 /it   192.168.0.0(网段或者ip地址都可以)(权限)

�抵� �热菡f明
rw
ro
�目�分享的�嘞奘强勺x�� (read-write) 或唯�x (read-only),但最�K能不能�x��,�是�c�n案系�y的 rwx及身份有�P。
sync
async
sync 代表�Y料��同步��入到����w�c硬碟中,async �t代表�Y料��先�捍骒队����w��中,而非直接��入硬碟!
no_root_squash
root_squash
用�舳耸褂� NFS �n案系�y的�ぬ�若�� root �r,系�y�如何判�噙@���ぬ�的身份?�A�O的情�r下,用�舳� root 的身份��由 root_squash 的�O定�嚎s成 nfsnobody,如此�λ欧�器的系�y���^有保障。但如果你想要�_放用�舳耸褂� root 身份�聿僮魉欧�器的�n案系�y,那�N�@�e就得要�_ no_root_squash 才行!
all_squash 不�登入 NFS 的使用者身份�楹危� 他的身份都��被�嚎s成�槟涿�使用者,通常也就是 nobody(nfsnobody) 啦!
anonuid
anongid
anon 意指 anonymous (匿名者) 前面�P於 *_squash 提到的匿名使用者的 UID �O定值,通常�� nobody(nfsnobody),但是你可以自行�O定�@�� UID 的值!��然,�@�� UID 必需要存在於你的 /etc/passwd ��中!anonuid 指的是 UID 而 anongid �t是群�M的 GID �印�

�@是���比�^常�的�嘞��担�如果你有�d趣玩其他的���r,�自行 man exports 可以�l�F很多有趣的�Y料。接下�砦��利用上述的���������H思考一下���有趣的小��}:

例�}一:� root 保有 root 的�嘞�

我想�� /tmp 分享出去�o大家使用,由於�@��目�本�砭褪谴蠹叶伎梢宰x��的,因此想�所有的人都可以存取。此外,我要� root ��入的�n案�是具有 root 的�嘞蓿�那如何�O��O定�n?

答:
[root@www ~]# vim /etc/exports# 任何人都可以用我的 /tmp ,用�f用字元�硖�理主�C名�Q,重�c在 no_root_squash/tmp  *(rw,no_root_squash)

主�C名�Q可以使用�f用字元,上�^表示�o��碜阅难e都可以使用我的 /tmp �@��目�。再次提醒,『 *(rw,no_root_squash) 』�@一串�O定值中�g是�]有空白字元的喔!而 /tmp �c *(rw,no_root_squash) �t是有空白字元�砀糸_的!特�e注意到那�� no_root_squash 的功能!在�@��例子中,如果你是用�舳耍�而且你是以 root 的身份登入你的 Linux 主�C,那�N��你 mount 上我�@部主�C的 /tmp 之後,你在� mount 的目���中,�⒕哂小�root 的�嘞蓿 �


例�}二:同一目���Σ煌�����_放不同�嘞�

我要�⒁��公共的目� /home/public 公�_出去,但是只有限定我的�^域�W路 192.168.100.0/24 �@���W域且加入vbirdgroup (第一章的例�}建立的群�M) 的用�舨拍�蜃x��,其他�碓�t只能�x取。

答:
[root@www ~]# mkdir /home/public[root@www ~]# setfacl -m g:vbirdgroup:rwx /home/public[root@www ~]# vim /etc/exports/tmp          *(rw,no_root_squash)/home/public  192.168.100.0/24(rw)    *(ro)# �^�m累加在後面,注意,我有�⒅�C�c�W域分��啥� (用空白隔�_) 喔!

上面的例子�f的是,��我的 IP 是在 192.168.100.0/24 �@���W段的�r候,那�N��我在 Client 端�燧d了 Server 端的 /home/public 後,����@��被我�燧d的目�我就具有可以�x��的�嘞蕖�至於如果我不是在�@���W段之�龋�那�N�@��目�的�Y料我就�H能�x取而已,亦即�槲ㄗx的�傩岳玻�

需要注意的是,�f用字元�H能用在主�C名�Q的分辨上面,IP 或�W段就只能用 192.168.100.0/24 的��r,不可以使用 192.168.100.* 喔!


例�}三:�H�o某���我恢�C使用的目��O定

我要�⒁��私人的目� /home/test �_放�o 192.168.100.10 �@�� Client 端的�C器�硎褂�r,�如何�O定?假�O使用者的身份是 dmtsai 才具有完整的�嘞�r。

答:
[root@www ~]# mkdir /home/test[root@www ~]# setfacl -m u:dmtsai:rwx /home/test[root@www ~]# vim /etc/exports/tmp          *(rw,no_root_squash)
/home/public  192.168.100.0/24(rw)    *(ro)/home/test    192.168.100.10(rw)# 只要�O定 IP 正�_即可!

�@�泳驮O定完成了!而且,只有 192.168.100.10 �@部�C器才能�� /home/test �@��目��M行存取喔!


例�}四:�_放匿名登入的情�r

我要� *.centos.vbird �W域的主�C,登入我的 NFS 主�C�r,可以存取 /home/linux ,但是他��存�Y料的�r候,我希望他��的 UID �c GID 都�成 45 �@��身份的使用者,假�O我 NFS 伺服器上的 UID 45 �c GID 45 的用��/群�M名�Q�� nfsanon。

答:

[root@www ~]# groupadd -g 45 nfsanon[root@www ~]# useradd -u 45 -g nfsanon nfsanon[root@www ~]# mkdir /home/linux[root@www ~]# setfacl -m u:nfsanon:rwx /home/linux[root@www ~]# vim /etc/exports/tmp          *(rw,no_root_squash)
/home/public  192.168.100.0/24(rw)    *(ro)
/home/test    192.168.100.10(rw)/home/linux   *.centos.vbird(rw,all_squash,anonuid=45,anongid=45)# 如果要�_放匿名,那�N重�c是 all_squash,�K且要配合 anonuid 喔!

特�e注意到那�� all_squash �c anonuid, anongid 的功能!如此一�恚��� clientlinux.centos.vbird 登入�@部 NFS 主�C,�K且在 /home/linux ��入�n案�r,��n案的所有人�c所有群�M,就���成 /etc/passwd �e面���的 UID �� 45 的那��身份的使用者了!

第四 ,启动服务service nfs start  再次之前要启动service rpcbind  start
 可以再服务器端查看是否共享 exportfs -v

第五 ,安装客户端 rpm -q nfs-utils    没有安装的可以用yum源进行安装yum -y install  nfs-utils

第六 ,客户端进行挂载 mount -t nfs  192.168.0.132:/it    /mnt (挂载目录)

可以用df -h 进行查看是否挂载成功。


你可能感兴趣的:(linux,服务器,nfs共享)