14.4 exportfs命令
传统的更改方式是:先卸载挂载目录,再重启nfs
umount /mnt
如果提示:umount.nfs4:/mnt:device is busy
则需要先退出mnt目录、或者 umount -l /mnt
• 常用选项
• -a 全部挂载或者全部卸载
• -r 重新挂载
• -u 卸载某一个目录
• -v 显示共享目录
以下操作在服务端上
编辑服务端的配置文件
vim /etc/exports #增加
/tmp/ 192.168.11.0/24(rw,sync,no_root_squash)
exportfs -arv #不用重启nfs服务,配置文件就会生效
在客户端中执行下面的
exportfs -arv
• 以下操作在客户端
• mkdir /aminglinux
showmount -e 192.168.11.130
mount -t nfs 192.168.11.130:/tmp/ /opt/
touch /opt/702.sql
• ls -l !$
14.5 NFSK客户端问题
客户端文件属主属组nobody
• NFS 4版本会有该问题
• 客户端挂载共享目录后,不管是root用户还是普通用户,创建新文件时属主、属组为nobody
• 客户端挂载时加上 -o nfsvers=3
不卸载直接加载用 -oremount,nfsvers=3
mount -t nfs -oremount,nfsvers=3 192.168.11.130”/tmp /mnt/
客户端和服务端都需要
另外一种方案
• vim /etc/idmapd.conf //
• 把“#Domain = local.domain.edu” 改为 “Domain = xxx.com” (这里的xxx.com,随意定义吧),然后再重启rpcidmapd(rpcbind)服务
FTP介绍
• FTP是File Transfer Protocol(文件传输协议,简称文传协议)的英文简称,用于在Internet上控制文件的双向传输。
• FTP的主要作用就是让用户连接一个远程计算机(这些计算机上运行着FTP服务器程序),并查看远程计算机中的文件,然后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机。
• 小公司用的多,大企业不用FTP,因为不安全
使用vsftpd搭建ftp服务
• centos上自带vsftpd
• yum install -y vsftpd
创建普通用户,为了让虚拟用户做映射
• useradd -s /sbin/nologin virftp
虚拟用户密码文件内容如下,奇数行为用户名,偶数行为密码,多个用户就写多行
• vim /etc/vsftpd/vsftpd_login
testftp
123456
• chmod 600 /etc/vsftpd/vsftpd_login
使用这个命令将文本的识别成二进制文件
• db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
创建虚拟用户配置文件所在的目录(自定义)
• mkdir /etc/vsftpd/vsftpd_user_conf
• cd /etc/vsftpd/vsftpd_user_conf
创建第一个用户的配置文件
• vim testftp //加入如下内容
local_root=/home/virftp/testftp #定义虚拟用户的家目录
anonymous_enable=NO #是否允许匿名用户
write_enable=YES #是否可写
local_umask=022 #定义创建新文件或者目录的权限是什么,跟系统保持一致
anon_upload_enable=NO #是否允许匿名用户上传
anon_mkdir_write_enable=NO #是否允许匿名用户创建可写
idle_session_timeout=600 #连接超时时间600s
data_connection_timeout=120 #数据传输的超时时间120s
max_clients=10 #最大客户端数
创建虚拟用户家目录
• mkdir /home/virftp/testftp
• touch /home/virftp/testftp/aming.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
• 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服务
ps -ef | grep vsftp
netstat -nltp
测试ftp
• yum install -y lftp
• lftp ftpuser1@127.0.0.1
• 执行命令ls,看是否正常输出
• 若不正常查看日志/var/log/messages和/var/log/secure
• windows下安装filezilla客户端软件,进行测试
使用pure-ftpd搭建ftp服务
• yum install -y epel-release
• yum install -y pure-ftpd
• vim /etc/pure-ftpd/pure-ftpd.conf//找到pureftpd.pdb这行,把行首的#删除
• systemctl stop vsftpd
• systemctl start pure-ftpd
• mkdir /data/ftp
• useradd -u 1010 pure-ftp
• chown -R pure-ftp:pure-ftp /data/ftp
• pure-pw useradd ftp_usera -u pure-ftp -d /data/ftp
• pure-pw mkdb
• pure-pw list/userdel/usermod/passwd