² NFS A]w
wA@As峹аѦB
̪sG2003/09/10
@
NFS Network FileSystem ²١A̦eO Sun oaqҵoiXӪALتNOQPBP@~tΥiHɭӧOɮװաIثeb Unix Like ΨӰ file server O۷@Ӥ׳I򥻤WA Unix Like Dst@ Unix Like DӤɩɮ׮ɡAϥ NFS n SAMBA ֳtBKhFI~A NFS ]wu²AXGunOoҰ Remote Procedure Call oөNN ( NO portmap oӮMաI ) N@wiH[]_ӡIuOڡILApGnF Windows P Linux qA٬OH SAMBA eڡILצpA NFS ٬OiHpqξǮճ줺 Unix Like @ file @ Server I
@
NFS ѨӻP\G
@@GO NFS ( Network FileSystem )
@@GO RPC ( Remote Procedure Call )
@@GNFS Ұʪ RPC daemons
ݭnMG
Server ݪ]wG
@@GNFS M󵲺c
@@GDWޥij
@@G]wy{(/etc/exports)
@@GRPC server O
Client ݪ]wG
εɪ`NƶG
w]w(QױF)G
ںtmG
I^U
P LPI Y
ѦҸ귽G
Dm

NFS ѨӻP\
ݭnM
Server ݪ]wG
Client ݪ]wG
OKաIҥHڭ̱oD@Uڭ̪ḒH]ڪDW٬O test.linux.org AڭnDYǤǥ NFS ɥXӪؿANL showmount @UoI
@
[root@test root]# showmount -e test.linux.org
Export list for localhost:
/tmp         *
/home/linux  *.linux.org
/home/public (everyone)
/home/test   192.168.0.100
@
MOH]ڭnN /home/public bڪ /home/nfs/public UAڴNooӥؿ~rIMAQ mount oӫOӱ /home/public oӥؿIIoˡG
@
[root@test root]# mkdir -p /home/nfs/public <==إ public oӥؿA[ -p iHW[ؿ
[root@test root]# mount -t nfs test.linux.org:/home/public /home/nfs/public
榡G
[root@test root]# mount -t nfs hostname(orIP):/directory /mount/point
[root@test root]# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda1              1904920   1235380    572776  69% /
/dev/hdb1               976344    115212    810736  13% /backup
test.linux.org:/home/public
                       1904920   1235376    572776  69% /home/nfs/public <==oӬOݥDeq
@
`N@U NFS ɮת榡dҳIIo˴NiHNƱiӰաIЪ`NIHAunziJzؿ /home/nfs/public NF test.linux.org ݥD /home/public ӥؿoIܤaIpN NFS ؿOHNϥ umount ڡI
@
[root@test root]# umount /home/nfs/public
@
ioͪDG
q`Lk]UoXӡG
  1. ϥΪ̪vGHWҤlӻAڪ /home/test uണ 192.168.0.0/24 oӺAҥHApGڦb test.linux.org oAH localhost ӱɡAN|LkWAovSDaIziHոլݡG
  2. [root @test root]# mount -t nfs localhost:/home/test /home/nfs
    mount: localhost:/home/test failed, reason given by server: Permission denied
    ҥHoIpGzo{WܪTɡANܱzDviJӥؿoIpGTwz IP S~AЦ^ /etc/exports oɮפAwzۤv IP ӶiץaI
    @
  3. ѰOҰ portmap G

  4. oӳ̮eQѰOFINOѰOFҰ portmap oӪAȰաIpGzo{z mount TOoˡG
    [root@test root]# mount -t nfs localhost:/home/test /home/nfs
    mount: RPC: Port mapper failure - RPC: Unable to receive
    Ϊ̬OG
    [root@test root]# mount -t nfs localhost:/home/test /home/nfs
    mount: RPC: Program not registered
    NN portmap ҰʧaIIåB]ݭnN nfs sҰʳI
    [root@test root]# /etc/rc.d/init.d/portmap start
    [root@test root]# /etc/rc.d/init.d/nfs restart
    @
  5. QױFG

  6. oӤ]ܮeѰOFINOs]w@UzAo]tFⳡA]A iptables P TCP_Wrappers I]ڭ̱ҰʤF portmap AoӪF観ӸƻݭnɥXӡA@ӬO port 111 ݭnѥXhA]z iptables WhAݭn}o port IIo˪Xrn[Jz iptables rules G
    iptables -A INPUT -p TCP --dport 111 -j ACCEPT
    iptables -A INPUT -p UDP --dport 111 -j ACCEPT
    pGzwg}Fo port svAo٬OLks\AӴNO TCP_Wrappers DFIˬd@Uz /etc/hosts.deny YO_oG
    [root@test root]# vi /etc/hosts.deny
    ALL: ALL
    GupܡAѩ portmap O portmap o daemon ұҰʪAҥHzNnb /etc/hosts.allow ̭[Jo@G
    [root@test root]# vi /etc/hosts.allow
    portmap: ALL 
    Ϊ̬ON ALL 令zҷQnLϥ NFS YiIo˻iHAѤFܡHYQi@BAѤ@UAаѦҫe`LG²ظmC

εɪ`NƶG
ݭn`NOAѩ NFS ϥΪo RPC b client ݳsWDɡAzDQnAiN|yi઺ȡzIpGz Server W٦ Client bsuAznAionƭY~`\IӡIuI۫HܡHMzۭӨոլݡI ^_^IҥHoAijz NFS Server QneAy portmap P nfs zoӪFIpGLkTNo daemons AH netstat -utlp X PID AMH kill NLIoˤ~k`\IoӽЯSOSO`NOI

w]w(QױF)G
nFI@Ǫ`NƶFAAөOHFISO̭nw]w譱DFI NFS iH]wwa観̩OH٤֩OHѥ~ӤiHoˬݡG
  1. iptables ]wF
  2. TCP_Wrappers ]wF
  3. /etc/exports v]wC
𪺰򥻷аѦҡy²ظmz@A̦nNӽg峹LݧA_hٯuAѩUbFI]zwgݧӽguFAۤUӧڭ̴Non@B@B۫إߨoI q`ڭ̳|ijAnҰ NFS Server AYϭnҰʡA̦n]OwYӽdӶiؿɡIåBAynϥΪ̼hŨӺ޲zz|n@dzIUڭ̴NӹڪbzWd@²檺 NFS server aI

ںtmG
]ҡG
  1. ]ڪ Linux D 192.168.0.100 o@F
  2. wpN /tmp HiŪgAåBϥΪ̨觋ɵҦ 192.168.0.0/24 oӺ줤Ҧ Linux u@F
  3. wp} /home/nfs oӥؿAϥΪݩʬŪAiѰF줺u@~AV~紣ѸƤeF
  4. wp} /home/upload 192.168.0.0/24 oӺ쪺ƤWǥؿA𫟺Ao /home/upload ϥΪ̤Ωݸsլ nfs-upload oӦWrAL UID P GID 210F
  5. wpN /home/andy oӥؿȤɵ 192.168.0.50 o Linux DAHѸӥDW andy oӨϥΪ̨ӨϥΡA]NOA andy b 192.168.0.50 192.168.0.100 bABb andy AҥHwp} /home/andy andy ϥΥLaؿաI
atmG
nFAбznݩUסAۤvʵΪ̪bۤvWʤ@@ݡAoznפAbݩUaI ӨBJjPWNOo˧oI[oI

I^U
P LPI Y
b LPI http://www.lpi.org ̭쪺A NFS ҸDwaAub LPI level 1 102 A̭ topic 113 Networking Services Aĥ|IA² NFS ]wCjժOyժ̻A NFS ]wBҰʻPYzܩ|Ҫɮ׻POi঳oǡG

ѦҸ귽G
Dm
² NFS A]w

2002/11/17GĤ@
2003/03/09GקﳡeAåBsW LPI ʻPIzI
2003/09/10GSsק睊AHηsWDWC