所需配置:
服务器ip | hostname | 角色 | 系统 |
---|---|---|---|
192.168.100.10 | ftp | nfs客户端、ftp服务器 | centos7 |
192.168.100.20 | nfs | nfs服务端 | centos7 |
注意:两台机子都需关闭firewalld和selinux
NFS服务端配置
nfs搭建详情请参照:https://blog.csdn.net/Bilise/article/details/104781769
1、挂载一块20G的磁盘到虚拟机上,并设置用于nfs共享目录
创建挂载磁盘的目录
[root@nfs ~]# mkdir /nfs_test
格式化磁盘
[root@nfs ~]# mkfs.ext4 /dev/sdc
mke2fs 1.42.9 (28-Dec-2013)
/dev/sdc is entire device, not just one partition!
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1310720 inodes, 5242880 blocks
262144 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2153775104
160 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
编辑nfs配置文件/etc/exports的格式
[root@nfs ~]# vim /etc/exports
/nfs_test 192.168.100.0/24(sync,rw,no_root_squash)
挂载并设置开机自动挂载
[root@nfs ~]# mount /dev/sdc /nfs_test
[root@nfs ~]# vim /etc/fstab
/dev/sdc /nfs_test ext4 defaults 0 0
NFS客户端配置
1、查看是否能够检查到服务端的共享目录
[root@ftp ~]# showmount -e 192.168.100.20
Export list for 192.168.100.20:
/nfs_test 192.168.100.0/24
将服务端的共享目录挂载到客户端上
[root@ftp ~]# mkdir /nfs_test
[root@ftp ~]# mount -t nfs 192.168.100.20:/nfs_test /nfs_test
ftp配置
ftp搭建详情请参照:https://blog.csdn.net/Bilise/article/details/104763704
1、创建ftp用户
[root@ftp ~]# vim /etc/vsftpd/users.conf
zhang1
000000
zhang2
000000
zhang3
000000
zhang4
000000
zhang5
000000
zhang6
000000
2、在nfs共享目录中创建六个ftp用户的家目录
[root@ftp ~]# mkdir /nfs_test/yx
[root@ftp ~]# mkdir /nfs_test/xcx
[root@ftp ~]# mkdir /nfs_test/dsj
[root@ftp ~]# mkdir /nfs_test/jw
[root@ftp ~]# mkdir /nfs_test/ad
[root@ftp ~]# mkdir /nfs_test/yw
[root@ftp ~]# ll /nfs_test/
total 40
drwxr-xr-x 2 root root 4096 Mar 12 22:03 ad
drwxr-xr-x 2 root root 4096 Mar 12 21:56 dsj
drwxr-xr-x 2 root root 4096 Mar 12 22:00 jw
drwx------ 2 root root 16384 Mar 12 22:08 lost+found
drwxr-xr-x 2 root root 4096 Mar 12 21:56 xcx
drwxr-xr-x 2 root root 4096 Mar 12 21:55 yx
drwxr-xr-x. 2 root root 4096 Mar 12 15:37 yw
3、编写6个用户的配置文件
[root@ftp ~]# cd /etc/vsftpd/vsftpd_user_conf/
[root@ftp vsftpd_user_conf]# vim zhang1
local_root=/nfs_test/yw
write_enable=YES
local_max_rate=60000
[root@ftp vsftpd_user_conf]# vim zhang2
local_root=/nfs_test/dsj
write_enable=YES
local_max_rate=60000
[root@ftp vsftpd_user_conf]# vim zhang3
local_root=/nfs_test/jw
write_enable=YES
local_max_rate=60000
[root@ftp vsftpd_user_conf]# vim zhang4
local_root=/nfs_test/yx
write_enable=YES
local_max_rate=60000
[root@ftp vsftpd_user_conf]# vim zhang5
local_root=/nfs_test/xcx
write_enable=YES
local_max_rate=60000
[root@ftp vsftpd_user_conf]# vim zhang
local_root=/nfs_test/ad
write_enable=YES
local_max_rate=60000
4、将用户信息文件转换为数据库并使用hash加密
[root@ftp ~]# rm -rf /etc/vsftpd/users.db //删除原有配置
[root@ftp ~]# db_load -T -t hash -f /etc/vsftpd/users.conf /etc/vsftpd/users.db //重新生成
重启vsftpd使其生效配置
[root@ftp ~]# systemctl restart vsftpd
创建定时备份任务
每周一晚上执行备份
创建定时任务
[root@ftp ~]# crontab -e
* 21 * * 1 /bin/bash /usr/local/sbin/nfs_weekbackup.sh
编写备份脚本文件
[root@ftp ~]# cd /usr/local/sbin
[root@ftp sbin]# vim nfs_weekbackup.sh
#!/bin/bash
#######设变量########
#用于备份文件的命名
a=`date +%Y%m%d`
#用于查找14天前的备份目录
b=`find /backup/weekbackup -mtime 14`
##判断备份目录是都存在,不存在则创建
if [ ! -d /nfs_weekbackup ]; then
mkdir /nfs_weekbackup
echo "/nfs_weekbackup 备份目录不存在,且已帮您创建" >> /var/log/nfs_weekbackup.log
fi
##########备份共享资源文件###########
cp -rf /nfs_test /backup/weekbackup/$a
if [ -d $b ]; then
$b | xargs rm -rf
else
echo "备份目录中无14天前前的备份记录"
fi
结果展示
在服务端上查看共享目录,发现和客户端的一样
[root@ftp ~]# ll /nfs_test/
total 40
drwxr-xr-x 2 root root 4096 Mar 12 22:03 ad
drwxr-xr-x 2 root root 4096 Mar 12 21:56 dsj
drwxr-xr-x 2 root root 4096 Mar 12 22:00 jw
drwx------ 2 root root 16384 Mar 12 00:00 lost+found
drwxr-xr-x 2 root root 4096 Mar 12 21:56 xcx
drwxr-xr-x 2 root root 4096 Mar 12 21:55 yx
drwxr-xr-x 2 root root 4096 Mar 12 15:37 yw
在window的FIleZilla软件上使用ftp账号密码登录