Home Map Index Search News Archives Links About LF
[Top bar]
[Bottom bar]
��� ������� �������� ��: English  Castellano  Deutsch  Francais  Nederlands  Russian  Turkce  


����� Frédéric Raynal

�� ������:

Frédéric Raynal ����� ����������� � ������� ������������ ����� �� ���� picture's tatoo � INRIA. ����� � ��������� ����� �� ������ ��������, �������������� � ����� Th. Roosevelt � ������ ����, ����� �� ��� ����������� ���������. � ������ ������ ����� ��������� ������ �����. � ������������� �������������� ����� ���������� ( ����������, ��������� ������� � �.�.). ���� ��������, ���������� Caleb Carr, L'ange des t�n�bres, ���������� ������������ ������� ����� ������ ����.

����������:

NFS - ������� �������� �������

������:

� ������� NFS ( Network File System ) ����� ��������� ������� � ������ �����������, ����������� � ����, ����� ��� � ����������. ���� ������ - ��� ������������� ����� � ��������������� �����, ����� ������������ ���.



��������

NFS ��������� ����� ������������ ������� ����� ������������. �������� : ����� ������������ ������ � ���� - ��� �� ����������� ������������ � ������ - ���� ������������ ���������� ��� ������� � ������ home directory - �� ��� ������������ � ������� NFS.

�� � �� �� ����� ��� �� ���������� ����������� ��������, �������� ��� �������� ����������. ������ ����� ��� ������� ������� ������������� � ��������� ����.

�� ������ �������������� ������ ����� ������� - ���� �� ������ ������� ����� ��������� �������� ������ � ���� ���� ���� ������;-) ��������� ������� �������� �������� ����������� ������������� ����� ��������.

������� ��������� ��������� ������� - ������� ������ ������ � �������� ��������, ����� ���������� �������� NFS, ����� ( ����� ������������� ����� ) - ����������� NFS - ������� � �������, � ������� ������ �������������� NFS, NIS � autofs.
 

������ � "�������� �������"

����� ����������� � NFS ������������ � �������� "�������� �������". � ������ ��� - ������ ��������, ����������� � ���������� ������� �� ��������. ���������� ��������� �������������� �� - New Technology FileSystem (NTFS), High Performance FileSystem (HPFS), DOS, FAT 12/16/32, VFAT, Macintosh Hierarchical Filesystem (HFS), ISO 9660 (for CD-ROM), extended filesystems (Ext, Ext2, Ext3), ��������� ����� ��������������, ��������� ����� � �.�.

������ - �����������, ��� ����� �������� ���������� ( �������� ������� ����) - ����� ����� ������������� ������� ��� �������� ����������, ��� ���������� ����� ( blocks ). ������ �������� ������� �������� � ����� ������� �� - ������. �� ������� 1 ���������� ������� ���������� ����, ��������� �� 2 ������. �� ������� ������� ���� ����������� �� ��������� ������� ������, �������� ���������� ����� � ������, �� ������ ������� - ���� ���������� � ������ ��������� �����. ���� ������ "������������" ���������� ��� ��� - ������ - ������ �� ������ � ��� ���� ;-)
 
 


�������. 1 : 2 ������ ������������ ������








�������� ���������� �������� ������� ��� �� Linux - ext2fs (extended 2 file system), � ������� ������ ���� ����������� ����� �������� ��� inode1. �������� �������� ������ �������� ������, ������ � ������� �������������� ����������� �������� ������/������.

�������� ������� NFS - ������� - ������� �������� ������������� inodes. ��� �� ����� ����� �� ���������� - ������� �� ����� ����������������� � ��������� inode, ������� NFS - ������ ������������� �������������� ���������� ��� ���������� ������ ��������� ����������� � ����.
 

�������� NFS

�������� NFS - ��� �� ����� ���� ��������� ������� ��������� ����������. ������ ��������������� � Remote Procedure Calls( RPC ) � portmap (����� ������������ �������� rpc.portmap). ��������, ��� ��� ��������� ����������� ������ �������� RPC � ������ ������. ����� RPC - ������ �������� ���� ������, �� �������� ���������� portmap ����� ���� ����� �������������� ����������. ����� ������ �������� RPC - ������ ���������, ������� ���������� �������������� � portmap �� ������� ��������� ������ �����, ������������� ������ ����������. � ������ ����� ����� ������ ������������ �� ��������������� ����.

���������� ������� ������� ��������� :
 
 
��������
��������
�����
nfs ��������, ������/������, ����� ������. ����� ��������� ��������������� � �����������.
nfsd
mountd ������������� �� ������������� ������� ������ ��� ������� ����� nfs. ������ �������� ������� mountumount � ������ ���������� �� �������������� ��������.
mountd
nsm
(Network Status Monitor) 
������ �� ������� ���������� ���������� ( ������� ��� ������� ) ��� �������������� ( �������� � ������������ ).
statd
nlm
(Network Lock Manager) 
��� �������������� �������������� ��������� ������ ������� ��������� ( ������������ ������� ���������� ). � ������� Nsm �������� �������� ���������� � ������ ������ �������, �������������� ��������� ��� ���������� ��� ������������� ������� � ���� �� ���������� - ������ ����� �����������.
lockd

����� knfsd, ��������� � ��������� ������� ���� ������������ ��������� nfsnlm. � ������ ������� - ��������� mountdnsm ������ �� ��������������. ����� NFS ������������� � ������� ����� ����������������� ��� ������ ��������� ������� :
 

>> ps auxwww | egrep "nfs|mount|lock|stat"
root      1370  0.0  0.2  1176  580 ?        S    22:28   0:00 rpc.mountd --no-nfs-version 3
root      1379  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [nfsd]
root      1380  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [nfsd]
root      1381  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [nfsd]
root      1382  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [nfsd]
root      1383  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [nfsd]
root      1384  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [nfsd]
root      1385  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [nfsd]
root      1386  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [nfsd]
root      1399  0.0  0.0     0    0 pts/0    SW   22:28   0:00 [lockd]
root      1409  0.0  0.2  1156  560 ?        S    22:28   0:00 rpc.statd
root      1652  0.0  0.1  1228  484 pts/3    S    22:49   0:00 egrep nfs|mount|lock|stat
� ��������� ����� ���������� ��� ������ NFS - 2 � 3, ������������ NFSv2 � NFSv3 ��������������. NFS - ������� Linux ������������ ������ ������ 2 ( � ������������ � ������ mountd �� ����������� ������� ).

� ��������� � �������� NFS ������������ ������ file handle. �� �������� � ���� inode ����� � ����, �������������� ����������, ��� ��������� ������ ����. ������������� �� ����� �������, ��� NFS �������� �������� �������� ���������� � ������ �������� �������.

�����������

 

������

������, ��� ���������� ������� - ��������� portmap, ��� ��� �� �����, ��� ���������, �������� � NFS ���������� RPCs:
root >>/usr/sbin/rpcinfo -p
rpcinfo: can't contact portmapper: RPC: Remote system error - Connection refused
root >>/sbin/portmap
root >>/usr/sbin/rpcinfo -p
   program vers proto   port
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
����� -p ������� rpcinfo ��������� ����������� ������� RPC, ���������� � ������ ������ �� ����������. ������� �� �����, ��� portmap �� �������, ������������ ��� ( ������ ������������ Linux ������������ ��� ��� ������� ������� ������������ ��������� ) � ��������� ��� ���. ������ �������� ����������� ������� ������� �� ������� rpcinfo �������� ����� /etc/hosts.{allow,deny}, ������� ������� ������ � ��� �� ������� portmapper.

����� �������� NFS ���������� �������� ������������. ���� ������������ ( ������������ ) /etc/exports ������� �� ����� ���������� � ���� ������ � ������ ��������, ������� �������� ������ � ����. ���� ���������� - ����� �������� ����� ����� ����� ������� �������. Man exports �������� ������������ �� ����.

� �������� ����� ������� ����� ������������ :

����� ���������� �������� ������ mount ����� : ������ ���������� ��������� rpc.mountdrpc.nfs ����� �������� ���������� NFS - ������. ��������� ��������� ��� �������� rpcinfo. ����� ����� ��������� ������ �� ������������� ���������� nsmnlm ( �������������� rpc.statdrpc.lockd ). ��� ������� �� ����������� ��� NFS - �������, �� ������������ ������������� �� ������������ �� ������ ������������� �������������� �������� ( �����, ������������ ���������� � �.�.).

��� ��� �� �������� /etc/exports - ���������� ���������� �� ���� daemons. ������� exportfs �������� ��� ���������� �������� : ����� -r - �������������� ���� /etc/mtab 2 c /etc/exports; ����� -v - �������������� ������� �������� ���� ���������.

��������� ������ ���������� � �������� ������ ���������� � ��������� ������ :

��� ������� ������� �������� ������ � �������� ������� ������� ������ ������������ � mountd. ����� ����������� ����������� ������� ����� etab. ����� �������� ���� �� ������ ���� - ����� hosts.allowhosts.deny. ���� ���������� ��� �������� exportfs, �������� ���������� /var/lib/nfs/etab. ��� ������������� �������� ������������� ������� - ������ ����������� � ���� ��������� xtab ��� ������ �������.  

������

� ����� ������ ������ ������ �� ����. ������ � �������� �������, ��������������� NFS, ����������� ��������������� �����, ������� ����� ��� �������� ������ � ������ � ��� ��� ���� �������. � �������� /lib/modules/<kernel'sversion>/fs ��������� ������ �������� ������, �������������� �����. � ����� /proc/filesystems ��������� ������ �������� ������, ��������������� �������������� �����. ���, ��� ��� ����� ������� - �������� ����, ��� �� ������ �������� ������ � ������, ��������������� NFS.

� ������� ������� mount ����� �������� ������ � ������ �������� ��������. ������� �������� ���� ��� �������� �������, ���������� � ����� ������������. ����� -t ��� ����������� ���� �������� ������� - �������� ��� NFS �������� ��������� ������� : -t nfs.

��� NFS ���������� ����������� ����� ������� mount : �������� rsizewsize ������ ������ ������ ��� ������/������, ������� ����� ������������� � ������ �������������, ������ ��� intr, noexec ��� nosuid. Man page mount ������������ � ���� ���������.

������ : �����������, ��� �� ���������� charly �������� NFS - ������ � ������������� � ����������� ���� /usr/local, ��� ������� � �������� � ���������� � ������ jill ���������� ��������� ��������� ������� :

root@jill >> mount -t nfs -o nosuid,hard,intr charly:/usr/local /usr/local
� ������� ������������ ��������� ����� - -t nfs ( ������ � �������� ������� NFS ), nosuid, hard. ���������� ��������� ��������� ��� ��������� : ������������� ���������� "���" ���� ����������� ( �������� �������� �� ��������� - ��� NFS ���������� �� ������ ������������� : ������� ��������� ��� �������, � ����� ������� ( �������� : ������ �������, � �� ���������� )), ��������� - "����". ���������� ������������� �������� /usr/local ������������ charlyjill ������������� ��������� ��������� ��������� ��������. � ����� etc/fstab ����������� ����������, ����������� ��� ��������. � ������ ������ ���� etc/fstab ����� ��������� ��������� ������ :
 
#    device           mount point     file system    options          dump  fsckorder
charly:/usr/local    /usr/local       nfs       nosuid,hard,intr    0      0
 

���������������

������� ��������� ������������� NFS ������� � ���, ��� ����� �������� � �������� ��������������� ������������� ���������. ������������� ��� ������������� ���������� �������� � root account ������� �� �� ����� ���������� � � root account �������. � NFS-HOWTO �������������� �� �������� �����, ������� ���������� ����������� ��� ��������� �����. ������ �� ������ ����� �������� �������, ������� ��������� ������������� ������������� ����������� ����� ������� mount. �� ����� �� ��� ��������� - ��� nosuid, �� ���������� - ������ ������� SUID � SGID. Root ������� ������� �������������� ������������� �� ������� � ������ ����� ���������� root'��. ��������� ����� - noexec, �� ���������� - ������ �� ������������� ��������, ������������� �� �������������� �������.

������ ������� � ��������� ������� - ����� �� �������� root'�, �������������� �������. ����� �� ��� ��������� �� ���� - ���� /etc/exports, ����� root_squash. �������� ������ ��������� : ������������ � UID 0 ( root ) ������� ��� ��������� � ������� � �������� �� ������ � ������ - �������� UID nobody. ��� ����� ������������ � Linux �� ���������, �� ����� ���� �������� � ������� no_root_squash. ����� ����� ���������� ����� UID ��� �������� ������������ �����. ��������, ��� ����� anonuidanongid �������� � ��������� ����������������� UID/GID � nobody �� ����� ������.

��������� �������� ���������� �� �������������� � portmapper. �������� ����� ��������� ������ � ������ ����������, �������� ��������� ������ � ���� /etc/hosts.deny :
 

# hosts.deny : absolute prohibition for every one to
#              use the portmap
portmap: ALL


����� � ����� /etc/hosts.allow ����� ������� ����������, ������� �������� ������.

�� ������� �������� � �� ������������� firewall'��. � ������� ������� �������, ������ ������ � ������������ ��������� :
 

RPC ������ ���� ��������
portmap 111 upd / tcp
nfsd 2049 udp
mountd variable udp / tcp

���������� : NIS, NFS � autofs

��� ����������� ��������� � ����, ������������� ���� � ���������� ������� � NIS. �������, ��� ��� ������� - "charly", ������� �� ���������������� � �������� NIS - �������, � ������ ���������� � ���� - "sabrina", "jill" � "kelly" - ��� ������� ( ������� ���������� ����� ����������� ������, �� � ��������� ������ ����� ���� ����� ������ ������ ).

������� ���������� ������������ ������ ������� charly - ��-������ ��������� ��������� NIS maps, ���������� ��� ����������� ����������.

� ����� /etc/netgroup ����������� ������ ����������� �� ������� ���������������� ( �������� � ���������� ������������ ). ������ NIS map ����� ������� ��� NFS. �� ������� ������ ��� ����������, � ������� ���� ����� �� ������ � ����� � ��� �� �������������� �������� ������� � ����� ��� ������ ����� �������������� � ����� /etc/exports ������ ����������� ������� ���������� � ����������� :

# /etc/netgroup
charlysangels (sabrina,,) (jill,,) (kelly)
 ��� �������� NFS - ���������������� ����������. ��������� �� ���������� ����� /etc/exports �� ������� charly:
# /etc/exports
/usr/local    @charlysangels(ro)
�� ������ ������������ automount ��� �������� /usr/local ������ ������������ ��� ��������, ��� ��������� ����� ��������� ������������� ��� ������� ������������ ������������ ���� �� ����. ����� �������� ���� /etc/auto.map � ��������� ��� ����� ������������ �������� � automount � NIS:
# /etc/auto.map
charly          charly:/usr/local
�����, ���� �� ����� ����� ���������� �� ������ auto.map � netgroup ���� ������������� � ���� ������ NIS - ���������� �������� Makefile. �� ������ ���� �������, ��� netgroup ����� ����������� ��������, ��� �������� auto.map - ���� ���� �� ��������� �� ��������� � ������� ���� ������� �� ��� �����������, ������� ����� ������� � Makefile ( �� ������ ������������, ���� �� � �������� ������ ):
#To be added in the Yellows Pages's Makefile
AUTO_MAP    = $(YPSRCDIR)/auto.map
# ...
#...
auto.map: $(AUTO_MAP) $(YPDIR)/Makefile
            @echo "Updating $@..."
            -@sed -e "/^#/d" -e s/#.*$$// $(AUTO_MAP) | $(DBLOAD) \
            -i $(AUTO_MAP) -o $(YPMAPDIR)/$@ - $@
            -@$(NOPUSH) || $(YPPUSH) -d $(DOMAIN) $@
��� ������� ������� �����������, ��������� ����� ������� � ���������� ���������� ���� ��������.

����� ���������� ��������� make �� �������� /var/yp.

������ � �������� sabrina, jill and kelly. ����� ������ ���������� ������ �� ����:) ������ ����������� autofs �� ���������� ����� ������ �������������� YP. ��������� ������ ������������ � ������ ����� /etc/auto.master � �������� � ��������� �������� ���������� � ������� auto.map �� YP ��������.

#/etc/auto.master
/usr/local    yp auto.map    --intr,nosuid,nodev
������������� autofs.

����� ��������� �������� �� ���������� charly, ��� ������� ����� ������������ ��.

����� ����� ��� ������ � ������� ���� /usr �� ����, ���� /usr/doc �� ����, �� ��� ���������� �������� - ��� �� ������ ������� ����. ��� ������ �� ����� ��������� � �������� /etc � ������. ����� ���������� ��������� �� �������������� ����� �� ����������� � �.�.
   

������

�������� �������


NFS



������

... inode1
���������� ����� ( ������������������ ��� ���������� ����� ���������� ��� ����� ������� � �����, ��������, ������ ������ ���������� ������ � �.�.).
... /etc/mtab2
���� ���������� ������ �������� ������ ����������� �����.

 

�������� �������

� ������ ������� ���� �������� �������. �� ���� �������� �� ������ �������� ���� ����������� ��� ����������� ����������� ������ ���������.
 talkback page 

Webpages maintained by the LinuxFocus Editor team
© Frédéric Raynal, FDL
LinuxFocus.org

Click here to report a fault or send a comment to Linuxfocus
Translation information:
fr -> -- Frédéric Raynal
fr -> en Philippe Trbich
en -> ru Kirill Poukhliakov

2000-12-10, generated by lfparser version 2.1