通常状况下重启服务器上nfs服务时,需把客户端上的挂载先卸载掉,以避免进程后面杀不掉。当客户端服务器不少时,操做起来就比较麻烦。此时可使用exportfs命令从新加载下。linux
exportfs命令:数据库
是随nfs-utils 一块儿安装的vim
exportfs 命令用来管理当前NFS共享的文件系统列表。windows
经常使用选项:centos
-a 所有挂载或者所有卸载浏览器
-r 从新挂载安全
-u 卸载某一个目录服务器
-v 显示共享目录session
当改变/etc/exports配置文件后,使用exportfs命令挂载不须要重启nfs服务。dom
如下操做在服务端上
vim /etc/exports //增长
/tmp/ 172.20.6.240(rw,sync,no_root_squash) //把/tmp目录单独共享给172.20.6.240这个主机ip
exportfs -arv //不用重启nfs服务,配置文件就会生效
172.20.6.240客户端机器上操做:
showmount -e 192.168.89.51 //查看有权限的共享目录
mount -t nfs 192.168.89.51:/tmp /mnt //把tmp目录挂载到/mnt下
客户端文件属主属组nobody:
NFS 4版本会有该问题
客户端挂载共享目录后,不论是root用户仍是普通用户,建立新文件时属主、属组为nobody
1. 客户端挂载时加上 -o nfsvers=3
mount -t nfs -oremount,nfsvers=3 192.168.89.51:/home/nfstestdir /mnt //已经挂载不想卸载时能够-oremount 从新挂载。
2. 客户端和服务端都须要
vim /etc/idmapd.conf //
把“#Domain = local.domain.edu” 改成 “Domain = xxx.com” (这里的xxx.com,随意定义吧),而后再重启rpcidmapd服务(CentOS 6以上系统重启rpcbind服务)
ftp应用环境:
ftp介绍:
centos上自带的vsftpd服务:
yum install -y vsftpd
安装vsftpd软件包;
useradd -s /sbin/nologin virftp
建立一个ftp映射的帐户;
建立虚拟用户密码文件:
vim /etc/vsftpd/vsftpd_login
新建一个ftp虚拟用户文件,内容以下,奇数行为用户名,偶数行为密码,多个用户就写多行
user1
1%6eEHPu9
chmod 600 /etc/vsftpd/vsftpd_login
设置权限600;
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
保存虚拟账号和密码的文件没法被系统账号直接调用。咱们须要使用db_load 命令生成db库文件
-T容许应用程序可以将文本文件转译载入进数据库。
-t hash使用hash码加密
-f 指定包含用户名和密码文本文件。此文件格式要示:奇数行用户名、偶数行密码
建立和用户对应的配置文件:
mkdir /etc/vsftpd/vsftpd_user_conf
建立与虚拟帐号相关的目录以及配置文件
用户的配置文件是单独存在的,每个用户都有一个本身的配置文件,文件名和用户名一致
cd /etc/vsftpd/vsftpd_user_conf
vim user1 //加入以下内容
local_root=/home/virftp/user1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
其中local_root:为user1帐号的家目录;anonymous_enable:用来限制是否容许匿名帐户登陆(若为NO,表示不容许匿名帐号登陆);write_enable=YES:表示可写;local_umask:指定umask值;anon_upload_enable:表示是否容许匿名帐号上传文件;anon_mkdir_write_enable:表示是否容许匿名帐号可写;idle_session_timeout:表示空闲多长时间超时;data_connection_timeout=120若是服务器与客户端的数据联机已经成功创建 (不论主动仍是被动联机),可是可能因为线路问题致使 120 秒内仍是没法顺利的完成数据的传送,那客户端的联机就会被咱们的 vsftpd 强制剔除;max_clients:有多少 client 能够同时连上 vsftpd;
在virftp家目录下建立以用户名命名的家目录:
mkdir /home/virftp/user1
touch /home/virftp/user1/gavin.txt
chown -R virftp:virftp /home/virftp
vim /etc/pam.d/vsftpd //在最前面加上
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
CentOS7为64位系统,因此库文件路径为/lib64/security/pam_userdb.so(32位系统的库文件路径为/lib/security/pam_userdb.so)
修改全局配置文件/etc/vsftpd/fsftpd.conf:
修改用户配置文件后还不可用,还须要修改vsftpd的一些全局配置文件;
vim /etc/vsftpd/vsftpd.conf
将anonymous_enable=YES 改成 anonymous_enable=NO
将#anon_upload_enable=YES 改成 anon_upload_enable=NO
将#anon_mkdir_write_enable=YES 改成 anon_mkdir_write_enable=NO
再增长以下内容:
chroot_local_user=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES
systemctl start vsftpd //启动vsftpd服务
ftp监听21端口
测试ftp:
linux中ftp客户端为lftp;
yum install -y lftp
lftp user1@127.0.0.1
执行命令ls,看是否正常输出
? 能够查看支持的命令,通常put和get用的比较多
get会把文件下载到当前目录
若不正常查看日志/var/log/messages和/var/log/secure
windows下安装filezilla客户端软件,进行测试
ftp://192.168.89.51 经过浏览器访问