Академический Документы
Профессиональный Документы
Культура Документы
CentOS 5.5
This guide explains how to set up an NFS server and an NFS client on CentOS 5.5. NFS stands for
Network File System; through NFS, a client can access (read, write) a remote share on an NFS server as
if it was on the local hard disk.
I do not issue any guarantee that this will work for you!
1 Preliminary Note
I'm using two CentOS systems here:
NFS Server: server.example.com, IP address: 192.168.0.100
NFS Client: client.example.com, IP address: 192.168.0.101
2 Installing NFS
server:
On the NFS server we run:
yum install nfs-utils nfs-utils-lib
Then we create the system startup links for the NFS server and start it:
chkconfig --levels 235 nfs on
/etc/init.d/nfs start
client:
On the client we can install NFS as follows (this is actually the same as on the server):
yum install nfs-utils nfs-utils-lib
directory; writing to /var/nfs from the client worked then, and on the client the files written to /var/nfs
appeared to be owned by the user and group nobody, but on the server they were owned by the
(nonexistant) user and group with the ID 65534; so I changed ownership of /var/nfs to the user/group
65534 on the server and changed permissions of /var/nfs back to 755, and voil, the client was allowed
to write to /var/nfs:
mkdir /var/nfs
chown 65534:65534 /var/nfs
chmod 755 /var/nfs
Now we must modify /etc/exports where we "export" our NFS shares. We specify /home and /var/nfs as
NFS shares and tell NFS to make accesses to /home as root (to learn more about /etc/exports, its format
and available options, take a look at
man 5 exports
)
vi /etc/exports
/home
/var/nfs
192.168.0.101(rw,sync,no_root_squash,no_subtree_check)
192.168.0.101(rw,sync,no_subtree_check)
5 Testing
On the client, you can now try to create test files on the NFS shares:
client:
touch /mnt/nfs/home/test.txt
touch /mnt/nfs/var/nfs/test.txt
Now go to the server and check if you can see both test files:
server:
ls -l /home/
[root@server ~]# ls -l /home/
total 55540
-rw-r--r-- 1 root
root
[root@server ~]#
ls -l /var/nfs
[root@server ~]# ls -l /var/nfs
total 0
-rw-r--r-- 1 65534 65534 0 Sep 16 17:30 test.txt
[root@server ~]#
(Please note the different ownerships of the test files: the /home NFS share gets accessed as root,
therefore /home/test.txt is owned by root; the /var/nfs share gets accessed as nobody/65534, therefore
/var/nfs/test.txt is owned by 65534.)
rw,sync,hard,intr 0
rw,sync,hard,intr
nfs
0
0
Instead of rw,sync,hard,intr you can use different mount options. To learn more about available options,
take a look at
man nfs
To test if your modified /etc/fstab is working, reboot the client:
reboot
After the reboot, you should find the two NFS shares in the outputs of
df -h
[root@client ~]# df -h
Filesystem
Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
28G 2.2G 25G 8% /
/dev/sda1
99M 13M 82M 14% /boot
tmpfs
250M 0 250M 0% /dev/shm
192.168.0.100:/home 28G 2.6G 25G 10% /mnt/nfs/home
192.168.0.100:/var/nfs
28G 2.6G 25G 10% /mnt/nfs/var/nfs
[root@client ~]#
and
mount
[root@client ~]# mount
/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.0.100:/home on /mnt/nfs/home type nfs (rw,sync,hard,intr,addr=192.168.0.100)
192.168.0.100:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,sync,hard,intr,addr=192.168.0.100)
[root@client ~]#
windows mount
mount -t cifs //ntserver/download -o
username=vivek,password=myPassword /mnt/ntserver
windows
mount -t cifs //ipaddress/sharename -o username=username,password='password',domain=domainname
/mnt/mountfolder
/etc/init.d/rpcbind start
or portmap
then
service nfs start