05.09 NFS文件目录共享服务
来源:互联网 发布:白鲨淘宝店 编辑:程序博客网 时间:2024/06/06 01:52
第一章 如何查看Linux系统支持的文件系统类型
[root@CentOS7-111 ~]# ll /lib/modules/3.10.0-514.el7.x86_64/kernel/fs/total 48-rw-r--r--. 1 root root 21853 Nov 23 2016 binfmt_misc.kodrwxr-xr-x. 2 root root 22 Jul 12 12:04 btrfsdrwxr-xr-x. 2 root root 27 Jul 12 12:04 cachefilesdrwxr-xr-x. 2 root root 21 Jul 12 12:04 cephdrwxr-xr-x. 2 root root 21 Jul 12 12:04 cifsdrwxr-xr-x. 2 root root 23 Jul 12 12:04 cramfsdrwxr-xr-x. 2 root root 20 Jul 12 12:04 dlmdrwxr-xr-x. 2 root root 23 Jul 12 12:04 exofsdrwxr-xr-x. 2 root root 21 Jul 12 12:04 ext4drwxr-xr-x. 2 root root 51 Jul 12 12:04 fatdrwxr-xr-x. 2 root root 24 Jul 12 12:04 fscachedrwxr-xr-x. 2 root root 36 Jul 12 12:04 fusedrwxr-xr-x. 2 root root 21 Jul 12 12:04 gfs2drwxr-xr-x. 2 root root 22 Jul 12 12:04 isofsdrwxr-xr-x. 2 root root 21 Jul 12 12:04 jbd2drwxr-xr-x. 2 root root 22 Jul 12 12:04 lockd-rw-r--r--. 1 root root 19597 Nov 23 2016 mbcache.kodrwxr-xr-x. 6 root root 128 Jul 12 12:04 nfsdrwxr-xr-x. 2 root root 40 Jul 12 12:04 nfs_commondrwxr-xr-x. 2 root root 21 Jul 12 12:04 nfsddrwxr-xr-x. 2 root root 4096 Jul 12 12:04 nlsdrwxr-xr-x. 2 root root 24 Jul 12 12:04 overlayfsdrwxr-xr-x. 2 root root 24 Jul 12 12:04 pstoredrwxr-xr-x. 2 root root 25 Jul 12 12:04 squashfsdrwxr-xr-x. 2 root root 20 Jul 12 12:04 udfdrwxr-xr-x. 2 root root 20 Jul 12 12:04 xfs
第二章 NFS服务简介
1. NFS概念描述
什么是NFS?NFS是Network File Syestem的缩写,它的主要功能是通过网络让不同主机系统之间可以彼此共享文件和目录。NFS客户端(一般为应用服务器,如web)可以通过挂载(mount)的方式将NFS客户端的机器本地上看,NFS服务器的机器本地上看,NFS服务器端共享的目录就好像是客户端自己的磁盘分区或者目录一样,而实际上确实远端的服务器目录。
2. NFS在企业中的应用场景
在企业集群架构的工作中,NFS网络文件系统一般都被用来存储共享视频、图片附件等静态资源文件(一般把网站用户上传的文件都放到NFS共享里,例如BBS产品图片、附件、头像,注意网站BBS程序不要放NFS共享里),NFS是当前互联网系统架构中最常用的数据存储服务之一,特别是中小型网站公司应用频率很高。大公司或门户除了使用NFS外,还可能会使用MFS,GFS,FASTFS,TFS等分布式文件系统。
3. NFS共享文件系统作用
实现数据信息的共享,数据信息的统一管理
共享文件系统软件实现方式
共享文件系统硬件实现方式
4. NFS共享文件服务工作原理
第三章 NFS共享服务系统部署过程
1. NFS软件列表 需要安装下面软件包
nfs-utils:NFS服务的主恤,包括rpc.nfsd、rpc.mountd这两个daemon和相关文档说明,以及执行命令文件等。
rpcbind: CentOS 6.X下面的RPC主程序。NFS可以视为一个RPC程序,在启动任何一个RPC程序之前,需要做好端口和功能的对应映射工作,这个映射工作就是由rpccbind服务来完成的,因此,在提供NFS服务之前必须启动rpcbind服务才行。centos 5.x里面称为portmap
2. 检查NFSRPC软件是否安装
rpm -qa 查看文件版本信息/是否安装[root@nfs01 ~]# rpm -qa nfs-utils rpcbindrpm -ql查看包内内容[root@web02 ~]# rpm -ql nfs-utils/etc/nfsmount.conf/etc/rc.d/init.d/nfs/etc/rc.d/init.d/nfslock/etc/rc.d/init.d/rpcgssd/etc/rc.d/init.d/rpcidmapd/etc/rc.d/init.d/rpcsvcgssd/etc/request-key.d/id_resolver.conf/etc/sysconfig/nfs/sbin/mount.nfs/sbin/mount.nfs4/sbin/nfs_cache_getentrpm -qf 查看文件/服务属于的打包[root@nfs01 ~]# which rpcinfo/usr/sbin/rpcinfo[root@nfs01 ~]# rpm -qf /usr/sbin/rpcinforpcbind-0.2.0-13.el6.x86_64
3. 启动rpcbind服务
[root@nfs01 ~]# /etc/init.d/rpcbind startStarting rpcbind: [ OK ]systemctl status rpcbind.service
4. rpcinfo主要服务NFS
[root@nfs01 ~]# rpcinfo -p localhost program vers proto port service 100005 3 udp 31956 mountd 100005 3 tcp 29651 mountd 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 2 tcp 2049 nfs_acl 100227 3 tcp 2049 nfs_acl 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 2 udp 2049 nfs_acl 100227 3 udp 2049 nfs_acl 100021 1 udp 13362 nlockmgr
5. 启动NFS服务
[root@nfs01 ~]# /etc/init.d/nfs startStarting NFS services: [ OK ]Starting NFS quotas: [ OK ]Starting NFS mountd: [ OK ]Starting NFS daemon: [ OK ]Starting RPC idmapd: [ OK ]systemctl start nfs-utils.service
6. NFS服务设置开机启动
[root@nfs01 ~]# chkconfig rpcbind on[root@nfs01 ~]# chkconfig nfs on[root@nfs01 ~]# chkconfig |egrep "rpcbind|nfs"nfs 0:off 1:off 2:on 3:on 4:on 5:on 6:offnfs-rdma 0:off 1:off 2:off 3:off 4:off 5:off 6:offnfslock 0:off 1:off 2:off 3:on 4:on 5:on 6:offrpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off[root@nfs01 ~]# head /etc/init.d/rpcbind #! /bin/sh## rpcbind Start/Stop RPCbind## chkconfig: 2345 13 87# description: The rpcbind utility is a server that converts RPC program \# numbers into universal addresses. It must be running on the \# host to be able to make RPC calls on a server on that machine.## processname: rpcbind[root@nfs01 ~]# head /etc/init.d/nfs#!/bin/sh## nfs This shell script takes care of starting and stopping# the NFS services.## chkconfig: - 30 60# description: NFS is a popular protocol for file sharing across networks.# This service provides NFS server functionality, which is \# configured via the /etc/exports file.# probe: true
systemctl enable rpcbind && systemctl enable nfs-utils
7. NFS软件进程详解说明
8. NFS配置文件信息编写
[root@nfs01 ~]# vim /etc/exports /data 172.16.1.0/24(rw,sync)/data 10.0.0.0/24(rw,sync)[root@nfs01 scripts]# mkdir -p /datareload重新读取配置文件 可以不影响正常使用 却别与restart
9. 修改共享目录权限
[root@nfs01 ~]# useradd -s /sbin/nologin -M nfsnobody[root@nfs01 ~]# chown -R nfsnobody.nfsnobody /data
10. NFS软件服务平滑重启
[root@nfs01 ~]# /etc/init.d/nfs reload
11. NFS服务挂载列表查看
[root@nfs01 ~]# showmount -e 172.16.1.31Export list for 172.16.1.31:/data 10.0.0.0/24,172.16.1.0/24
12. NFS服务本地测试挂载
[root@nfs01 ~]# mount -t nfs 172.16.1.31:/data/ /tmp/[root@nfs01 ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/sda3 8.8G 1.5G 6.9G 18% /tmpfs 931M 0 931M 0% /dev/shm/dev/sda1 190M 38M 142M 22% /boot172.16.1.31:/data/ 8.8G 1.5G 6.9G 18% /mnt172.16.1.31:/data/ 8.8G 1.5G 6.9G 18% /tmp[root@nfs01 ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/sda3 8.8G 1.5G 6.9G 18% /tmpfs 931M 0 931M 0% /dev/shm/dev/sda1 190M 38M 142M 22% /boot172.16.1.31:/data/ 8.8G 1.5G 6.9G 18% /mnt
13. 卸载NFS挂载目录
[root@nfs01 ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/sda3 8.8G 1.5G 6.9G 18% /tmpfs 931M 0 931M 0% /dev/shm/dev/sda1 190M 38M 142M 22% /boot172.16.1.31:/data/ 8.8G 1.5G 6.9G 18% /mnt[root@nfs01 ~]# umount /mnt/[root@nfs01 ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/sda3 8.8G 1.5G 6.9G 18% /tmpfs 931M 0 931M 0% /dev/shm/dev/sda1 190M 38M 142M 22% /boot
14. NFS客户端进行共享目录挂载
[root@web02 ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/sda3 8.8G 1.5G 6.9G 18% /tmpfs 931M 0 931M 0% /dev/shm/dev/sda1 190M 38M 142M 22% /boot[root@web02 ~]# mount -t nfs 172.16.1.31:/data/ /data/[root@web02 ~]# ll /data/total 0-rw-r--r-- 1 nfsnobody nfsnobody 0 May 9 11:46 1.txt-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 a-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 b-rw-r--r-- 1 nfsnobody nfsnobody 0 May 9 14:57 b.txt-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 c-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 d-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 e-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 f
15. 测试读写删除等权限
[root@web02 ~]# cd /data/[root@web02 data]# lltotal 0-rw-r--r-- 1 nfsnobody nfsnobody 0 May 9 11:46 1.txt-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 a-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 b-rw-r--r-- 1 nfsnobody nfsnobody 0 May 9 14:57 b.txt-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 c-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 d-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 e-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 f[root@web02 data]# rm -f 1.txt a b[root@web02 data]# lltotal 0-rw-r--r-- 1 nfsnobody nfsnobody 0 May 9 14:57 b.txt-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 c-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 d-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 e-rw-r--r-- 1 nfsnobody nfsnobody 0 May 4 21:46 f
第四章 前端服务器开机自启动共享NFS
1. 加入到/etc/rc,local
[root@web02 data]# tail -1 /etc/rc.local /bin/mount -t nfs 172.16.1.31:/data /mnt
2. 利用/etc/fstab 进行自动挂载,需要结合netd
客户端挂载参数信息查看:/proc/mounts
服务端挂载信息查看:/var/lib/nfs/etab
为什么在/etc/rc.local里面挂载就可以呢?[root@web02 data]# ll /etc/rc.d/rc3.d/| egrep "rc.local"lrwxrwxrwx. 1 root root 11 Mar 9 18:12 S99local -> ../rc.local[root@web02 data]# head /etc/init.d/network #! /bin/bash## network Bring up/down networking## chkconfig: 2345 10 90# description: Activates/Deactivates all network interfaces configured to \# start at boot time.#### BEGIN INIT INFO# Provides: $networkNFS共享服务需要建立在网络服务之上,网络的启动顺序为10,而rc.local为99,网络已经启动,故可以使用。[root@web02 data]# /etc/init.d/netfs startMounting filesystems: [ OK ][root@web02 data]# vim /etc/fstab ## /etc/fstab# Created by anaconda on Thu Mar 9 18:10:24 2017## Accessible filesystems, by reference, are maintained under '/dev/disk'# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#UUID=6d4bdd81-a1ce-449a-b0fb-f544eb78bd21 / ext4 defaults 1 1UUID=af7c3c1a-71f7-4a82-ad4f-ce2e3435d0a7 /boot ext4 defaults 1 2UUID=67843c7f-86a2-478f-a615-630c61ba208e swap swap defaults 0 0tmpfs /dev/shm tmpfs defaults 0 0devpts /dev/pts devpts gid=5,mode=620 0 0sysfs /sys sysfs defaults 0 0proc /proc proc defaults 0 0172.16.1.31:/data /mnt nfs defaults 0 0
3. 服务器关机顺序
服务器关机顺序:前端nfs客户端先关机、后端nfs服务器后关机服务器开机顺序:后端nfs服务器先开机,前端nfs客户端后开机
第五章 NFS配置文件详解
第六章 mount挂载及fstab文件参数
第七章 showmount命令说明
第八章 NFS共享服务排错思路
1. 排查是否网络连通性有问题
PING 172.16.1.31 (172.16.1.31) 56(84) bytes of data.64 bytes from 172.16.1.31: icmp_seq=1 ttl=64 time=0.015 ms64 bytes from 172.16.1.31: icmp_seq=2 ttl=64 time=0.020 ms
2. 共享目录挂载很卡
mount -t nfs 172.16.1.31:/data /mnt
3. 原因分析:
NFS服务端重启之后。立刻进行挂载会出现此问题,因为NFS自身重启的时候,拥有无敌的时间,默认是90秒;
在无敌时间内,是不能对共享目录进行更改的操作;
在系统配置中/etc/sysconfig/nfs中指定了无敌时间的配置参数
[root@nfs01 ~]# vim /etc/sysconfig/nfs48 #NFSD_V4_GRACE=90 49 #NFSD_V4_LEASE=90 50 #NLM_GRACE_PERIOD=90
第九章 企业生产场景NFS配置案例
第十章 NFS共享系统服务的优缺点
- 05.09 NFS文件目录共享服务
- nfs 文件共享 服务
- 网络文件共享服务NFS
- 文件共享服务nfs-samba
- 02-NFS文件共享服务
- NFS服务挂接根文件系统和共享文件
- 文件共享服务 NFS SAMBA FTP
- linux文件共享之NFS服务
- CentOS7基于NFS服务的文件共享
- 访问网络文件共享服务-NFS
- linux中的NFS文件共享服务
- 详解linux之NFS文件共享服务
- Ubuntu16.10添加NFS服务及配置共享目录
- NFS共享目录配置
- 通过nfs共享目录
- nfs目录共享
- 使用NFS在linux之间共享目录与文件
- ubuntu下如何安装NFS服务用于文件共享
- C++ 标准库概览
- 复位IC的功能描述
- java 单例模式与多线程
- C primer plus(编程练习)file-3.11-5
- 8行代码求解非线性方程
- 05.09 NFS文件目录共享服务
- C primer plus(编程练习)file-3.11-6
- jQuery学习笔记
- 实验 3.1.5 查看代码中各数据存储位置 示例程序: mem_add.c 1. 在自己的机器上运行示例程序。 2. 分析实验结果,图示程序运行时各数据位置。
- 剑指offer--实现一个Add函数,让两数相加,不能使用+、-、*、/、++、--等四则运算符
- 【51Nod】1058 N的阶乘的长度
- C primer plus(编程练习)file-3.11-7
- ssm框架搭建
- 类初始化相关