一、设置FTP主机
hostnamectl set-hostname ftp //设置系统的主机名
bash //刷新状态
systemctl stop firewalld //关闭防火墙服务
systemctl disable firewalld //设置开机禁用防火墙
setenforce 0 //临时关闭防火墙
yum install -y vsftpd //ftp 安装配置
yum install -y vim net-tools
systemctl start vsftpd //启动ftp
systemctl enable vsftpd //设置开机自动启动ftp
netstat -lnpt |grep vsftpd //查看
vim /etc/vsftpd/users.conf //生成hash文件
yunyunwei
yunyunwei123
dashujv
dashujv123
xiaochengxv
xiaochengxv123
db_load -T -t hash -f /etc/vsftpd/users.conf /etc/vsftpd/users.db
chmod 600 /etc/vsftpd/users.db //配置权限
useradd vsftpd -d /home/vsftpd -s /sbin/nologin //创建FTP根目录及虚拟用户映射的系统用户
mkdir -p /home/vsftpd/xmcsxy //创建工作目录、授权
chmod -R 777 /home/vsftpd
vim /etc/pam.d/vsftpd //指定验证文件
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/users
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/users
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO //禁止匿名访问
chroot_local_user=YES //禁止用户访问除主目录以外的目录
guest_enable=YES //启用虚拟用户
allow_writeable_chroot=YES //允许写入用户主目录
user_config_dir=/etc/vsftpd/vsftpd_conf //设定虚拟用户个人vsftpd的配置文件存放路径
mkdir -p /etc/vsftpd/vsftpd_conf //创建子配置文件目录
cd !$
cd /etc/vsftpd/vsftpd_conf
vim yunyunwei 创建云运维用户配置文件
local_root=/home/vsftpd/xmcsxy/yunyunwei //当用户登入时,将被更换到定义的目录下。默认值为个用户的家目录
write_enable=YES //是否允许登录用户有写权限
anon_upload_enable=NO //是否允许登录用户有上传的权限
anon_max_rate=60000 //限制最大传输速率(字节/秒)
vim dashujv //创建大数据用户的配置文件
local_root=/home/vsftpd/xmcsxy/dashujv
write_enable=YES
anon_upload_enable=NO
anon_max_rate=60000
vim xiaochengxv //创建小程序用户配置文件
local_root=/home/vsftpd/xmcsxy/xiaochengxv
write_enable=YES
anon_upload_enable=NO
anon_max_rate=60000
#创建工作目录
mkdir -p /home/vsftpd/xmcsxy/yunyunwei
mkdir -p /home/vsftpd/xmcsxy/dashujv
mkdir -p /home/vsftpd/xmcsxy/xiaochengxv
systemctl restart vsftpd //重启生效
netstat -lntp | grep 21
tcp6 0 0 :::21 :::* LISTEN 993/vsftpd
二、用另一台虚拟机设置NFS主机
#基本环境准备
hostnamectl set-hostname nfs
bash
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
#NFS配置
yum install -y vim net-tools
yum install -y nfs-utils rpcbind
id nfsnobody //确认是否有这个用户
systemctl start rpcbind //启动服务
systemctl enable rpcbind //设置为开机自动启动
systemctl enable nfs
systemctl start nfs
netstat -ntlp |grep rpc
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 721/rpcbind
tcp 0 0 0.0.0.0:54240 0.0.0.0:* LISTEN 993/rpc.statd
tcp6 0 0 :::111 :::* LISTEN 721/rpcbind
tcp6 0 0 :::40048 :::* LISTEN 993/rpc.statd
mkdir /data 创建存放数据目录
chown -R nfsnobody:nfsnobody /data/
chmod 755 -R /data
#在虚拟机设置里添加sdb磁盘
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 20G 0 disk
└─sdb1 8:17 0 20G 0 part
sr0 11:0 1 4.4G 0 rom
fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):
Using default response p
Partition number (1-4, default 1):
First sector (2048-41943039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039):
Using default value 41943039
Partition 1 of type Linux and of size 20 GiB is set
Command (m for help): p
Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xb1ae8ff6
Device Boot Start End Blocks Id System
/dev/sdb1 2048 41943039 20970496 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@nfs ~]# mkfs.ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1310720 inodes, 5242624 blocks
262131 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
vim /etc/fstab
/dev/sdb1 /data ext4 defaults 0 0 //写入配置文件自动挂载
mount -a
df -h
devtmpfs 898M 0 898M 0% /dev
tmpfs 910M 0 910M 0% /dev/shm
tmpfs 910M 9.6M 901M 2% /run
tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/mapper/centos-root 17G 1.4G 16G 8% /
/dev/sda1 1014M 151M 864M 15% /boot
tmpfs 182M 0 182M 0% /run/user/0
/dev/sdb1 20G 45M 19G 1% /data
vim /etc/exports //配置nfs共享目录
/data 192.168.200.0/24(rw,no_root_squash,async)
exportfs -rv
exporting 192.168.200.0/24:/data
showmount -e 192.168.200.13
/data 192.168.200.0/24
#ftp 节点配置
yum install -y nfs-utils rpcbind
mount -t nfs 192.168.200.12:/data /home/vsftpd/xmcsxy/
cd /home/vsftpd/xmcsxy/
mkdir yunyunwei dashujv xiaocheng
ls
dashujv lost+found xiaocheng yunyunwei
vim /usr/local/sbin/backup.sh //编写脚本
a=`date '+%Y%m%d'`
b=/backup/weekbackup
c=/var/log/backup.log
pname=$(rpm -qa | grep rsync)
if [ $? -eq 0 ]
then
echo "软件包rsync已经安装。"
else
echo "软件包rsync没有安装。"
yum -y install rsync >> /dev/null
if [ $? -eq 0 ];then
echo "安装rsync完成。"
else
echo "安装rsync失败。"
fi
fi
if [ ! -d "$b" ];then
mkdir -p $b
echo "$a Backup File missing!" >> /var/log/backup.log
rsync -rvz /data $b/$a
else
rsync -rvz /data $b/$a
if [ -d $b/$a ];then
echo "$a Backup success." >> /var/log/backup.log
find $b -mtime +14 |xargs rm -rf
else
echo "$a Backup failed." >> /var/log/backup.log
fi
fi
sh -x /usr/local/sbin/backup.sh //执行
crontab -e 定时