NFS简介
NFS是Network File System的缩写NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本NFS数据传输基于RPC协议,RPC为Remote Procedure Call的简写。
NFS应用场景是:A,B,C三台机器上需要保证被访问到的文件是一样的,A共享数据出来,B和C分别去挂载A共享的数据目录,从而B和C访问到的数据和A上的一致,可以进行读写操作。
NFS安装配置
安装NFS及RPC服务:
#在nfs-server上安装nfs-utils、rpcbind两个包
[root@nfs-server ~]> yum install -y nfs-utils rpcbind
#验证是否安装[root@nfs-server ~]> rpm -qa nfs-utils rpcbind
nfs-utils-1.3.0-0.54.el7.x86_64rpcbind-0.2.0-44.el7.x86_64
服务配置:
vi /etc/exports #编辑配置文件,加入以下内容:
[root@nfs-server ~]> cat /etc/exports/data/shared 10.1.1.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
# 其中 /data/shared 就是要共享出来的目录
# 10.1.1.0/24 是可以访问这个共享目录的网段,也可以指定某一个IP
创建共享目录,设置权限:
[root@nfs-server ~]> mkdir -p /data/shared
#为了方便实验,先将共享目录设置为777的权限[root@nfs-server ~]> ll -d /data/shareddrwxrwxrwx. 2 root root 6 Jul 14 14:55 /data/shared
启动服务:
启动nfs和rpcbind服务并设置开机自启动:
systemctl enable rpcbind
systemctl enable nfs
systemctl start rpcbind
systemctl start nfs
查看一下系统监听的端口:
查看一下nfs和rpc进程:
# rpc相关进程。一般启动nfs服务的时候会自动启动rpc相关的服务,使用/sbin/rpcbind -w进行查看。
配置选项解释:
客户端的配置和挂载:
首先客户端也需要安装nfs-utils包:
yum install nfs-utils -y
使用showmount查看服务端共享的目录:
客户端使用mount命令挂载共享的目录:
测试:
挂载完成后,在客户端的/mnt目录创建一个文件test.txt:在服务端上查看/data/shared目录下是否有test.txt:
exportfs命令
exportfs命令是安装nfs包的时候自动安装的一个命令, 他的作用是在修改了nfs配置文件时不需要重启nfs和rpcbind, 就可以让新的配置生效。exportfs命令常用选项:
-a 全部挂载或者全部卸载
-r 重新挂载
-u 卸载某一个目录
-v 显示共享目录
然后在nfs服务端使用exportfs命令使配置生效:
NFS客户端小问题
NFS 4版本会有该问题 , 客户端挂载共享目录后,不管是root用户还是普通用户,创建新文件时属主、属组为nfsnobody一种解决办法是:客户端挂载时加上 -o nfsvers=3
第二种办法是:客户端和服务端都需要修改 /etc/idmapd.conf 这个配置文件
把“#Domain = local.domain.edu” 改为 “Domain = xxx.com” (这里的xxx.com可以随意定义)
然后再重启rpcidmapd服务
FTP简介:
FTP是 File Transfer Protocol(文件传输协议,简称文传协议)的英文简称,用于在Internet上控制文件的双向传输。FTP的主要作用就是让用户连接一个远程计算机(这些计算机上运行着FTP服务器程序),并查看远程计算机中的文件,然后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机。小公司用的多,大企业不用FTP,因为不安全使用Vsftpd搭建FTP服务器:
CentOS是自带vsftpd服务的,但是最小化安装的系统没有安装vsftpd服务,所以需要先安装vsftpd包:
yum install -y vsftpd
创建FTP虚拟的用户和密码文件:
vsftp,是可以使用系统用户来登录ftp服务的,但是这样很不安全。所以可以采用虚拟用户的形式来登录ftp服务器,可以将一个或多个虚拟用户映射给一个普通的系统用户。
创建虚拟用户配置文件:
参数解释:
创建虚拟用户的local_root目录:
编辑vsftpd用户认证配置文件,指定前面自定义的用户密码文件路径
编辑vsftpd主配置文件 /etc/vsftpd/vsftpd.conf
修改好的 /etc/vsftpd/vsftpd.conf 配置文件内容 :
启动vsftpd服务:
测试
在nfs-client上安装 lftp 包进行测试:
XFTP工具连接
pure-ftpd搭建ftp服务器