#####lvm######
lvm:logical volume manager
动态管理卷
##定义:可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态的对分区进行扩大和缩小
pv ##物理卷 被我们lv***这个命令处理过的物理分区
lv ##物理组卷 被组装到一起的物理卷
lvm ##逻辑卷 直接使用的设备,可以增大缩减并保持原有的数据不变
pe ##物理扩展 lvm设备的最小存储单元 ,lvm是pe的整数倍
物理组相当于瓶子,逻辑卷(设备)相当于杯子,是瓶子中的数据给杯子中倾倒
##lvm的建立
[root@desktop145 ~]# watch -n 1 'pvs;vgs;lvs;df -h' #监控便于观察
[root@desktop145 ~]# pvcreate /dev/vde1 #将vde1处理成物理卷
[root@desktop145 ~]# pvcreate /dev/vde2 #将vde2处理成物理卷
[root@desktop145 ~]# pvcreate /dev/vde3 #将vde3处理成物理卷
[root@desktop145 ~]# vgcreate ww /dev/vde1 #将物理卷组装成物理组ww
[root@desktop145 ~]# lvcreate -L 20M -n lv0 ww #从物理组ww中取出20M给lv0
[root@desktop145 ~]# mkfs.xfs /dev/ww/lv0 #格式化
[root@desktop145 ~]# mount /dev/ww/lv0 /mnt #挂载
[root@desktop145 /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 6.6G 3.5G 66% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 461M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/mapper/vg0-vo 473M 2.3M 442M 1% /home
/dev/mapper/ww-lv0 17M 1.1M 16M 7% /www
####注意:ww,lv0名称可以随意,但vg和lv中必须保持一致
lvs的热拉伸(热:指的是在挂载是进行操作)
###注意: -L 500M #扩张到500M
-L +500M #在原有的基础上在添加500M
1.当我们vg中剩余容量充足的时候
lvs支持热拉伸
[root@desktop145 /]# lvextend -L 50M /dev/ww/lv0 #拉伸设备lv0到50M
Rounding size to boundary between physical extents: 52.00 MiB
Extending logical volume lv0 to 52.00 MiB
Logical volume lv0 successfully resized
[root@desktop145 /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 6.6G 3.5G 66% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 461M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/mapper/vg0-vo 473M 2.3M 442M 1% /home
/dev/mapper/ww-lv0 17M 1.1M 16M 7% /www
[root@desktop145 /]# xfs_growfs /dev/ww/lv0 #拉伸文件系统
[root@desktop145 /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 6.6G 3.5G 66% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 461M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/mapper/vg0-vo 473M 2.3M 442M 1% /home
/dev/mapper/ww-lv0 49M 1.2M 48M 3% /www
2.当我们vg中容量不足的时候
##再次建立分区并修改标签 t 为8e
[root@desktop145 ~]# pvcreate /dev/vde2 #将vde2处理成物理卷
[root@desktop145 /]# vgextend ww /dev/vde2 #将vde2添加到ww物理卷组中(给物理卷组中添加容量)
[root@desktop145 /]# lvextend -L 1000M /dev/ww/lv0 #拉伸设备到1G
[root@desktop145 /]# xfs_growfs /dev/ww/lv0 #拉伸文件系统
##缩减 (将逻辑卷进行缩减)针对ext* (xfs文件系统 不支持缩减)
###不支持热缩减要先卸载
[root@desktop145 /]# umount /www #卸载
[root@desktop145 /]# mkfs.ext4 /dev/ww/lv0 #重新铺建文件系统
[root@desktop145 /]# e2fsck -f /dev/ww/lv0 #缩小文件系统
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/ww/lv0: 11/64000 files (0.0% non-contiguous), 8748/256000 blocks
[root@desktop145 /]# resize2fs /dev/ww/lv0 500M #缩减设备lv0
[root@desktop145 /]# lvreduce -L 500M /dev/ww/lv0
WARNING: Reducing active logical volume to 500.00 MiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv0? [y/n]: y
Reducing logical volume lv0 to 500.00 MiB
Logical volume lv0 successfully resized
[root@desktop145 /]# mount /dev/ww/lv0 /www #挂载
root@desktop145 /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 6.6G 3.5G 66% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 461M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/mapper/vg0-vo 473M 2.3M 442M 1% /home
/dev/mapper/ww-lv0 477M 1.5M 440M 1% /www
缩减vg(将物理卷组进行缩减)
[root@desktop145 /]# vgreduce ww /dev/vde2 #将vde2从物理卷组ww中移除
Removed "/dev/vde2" from volume group "ww"
[root@desktop145 /]# vgextend ww /dev/vde2 #将vde2添加到物理卷组ww中
Volume group "ww" successfully extended
数据迁移(移除含有数据的设备)
[root@desktop145 /]# pvmove /dev/vde1 /dev/vde2 #将vde1中的数据移动到vde2中
/dev/vde1: Moved: 8.8%
/dev/vde1: Moved: 100.0%
[root@desktop145 /]# vgreduce ww /dev/vde1 #将vde1从物理卷组ww中移除
Removed "/dev/vde1" from volume group "ww"
[root@desktop145 /]# pvremove /dev/vde1 #删除物理卷vde1
Labels on physical volume "/dev/vde1" successfully wiped
lvm快照
保护原有数据,提出了快照的概念
[root@desktop145 /]# lvcreate -L 40M -n lv0-backup -s /dev/ww/lv0 #生成一个40m大的快照
Logical volume "lv0-backup" created
[root@desktop145 /]# mount /dev/ww/lv0-backup /www #挂载快照
[root@desktop145 /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 6.6G 3.5G 66% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 461M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/mapper/vg0-vo 473M 2.3M 442M 1% /home
/dev/mapper/ww-lv0--backup 477M 1.5M 440M 1% /www
###注意:如果截取数据大于40M,就会破坏设备,再次进行挂载快照就会出错
[root@desktop145 /]# dd if=/dev/zero of=/www/file bs=1M count=60
##全部删除还原硬盘
[root@desktop145 /]# lvremove /dev/ww/lv0-backup #删除快照
[root@desktop145 /]# lvremove /dev/ww/lv0 #删除逻辑卷(设备)lv0
[root@desktop145 /]# vgremove ww #删除物理卷组ww
[root@desktop145 /]# pvremove /dev/vde2 #删除物理卷vde2
[root@desktop145 /]# fdisk /dev/vde #删除分区
###注意:一定要将所有的物理卷删完以后才能删除分区
#####ftp服务
定义:简单文件传输协议,是用于在网络上进行传输的一套标准协议。它属于网络传输协议应用层。基于TCP工作,C/S架构。实现ftp协议的应用
有:wu-ftpd.protftpd.vsftpd###注意:只要在服务端/var/ftp/pub下的文件,客户端就可以使用ftp服务,cd pub 进行查看,下载ftp服务后,/var/ftp/pub就会自动生成
###put:将文件上传到远程服务器上 get:从远程服务器上下载文件
###在服务端
[root@desktop145 Desktop]# yum install vsftpd -y #下载ftp服务
[root@desktop145 Desktop]# systemctl start vsftpd #开启ftp服务
[root@desktop145 Desktop]# systemctl enable vsftpd #开机自启
[root@desktop145 Desktop]# systemctl stop firewalld.service #关闭防火墙
[root@desktop145 Desktop]# systemctl disable firewalld.service #开机不自启
#关闭selinux
[root@desktop145 Desktop]# vim /etc/selinux/config
SELINUX=disabled #文件关闭,reboot后生效
#命令性关闭selinux 临时
[root@desktop145 Desktop]# setenforce 0 #关闭selinux
###在客户端
[root@server95 Desktop]# yum install lftp -y #下载lftp命令
[root@server95 Desktop]# lftp 172.25.254.145 #匿名用户登陆ftp服务器 登陆到--->/var/ftp
lftp 172.25.254.145:~>
[root@server95 Desktop]# lftp 172.25.254.145 -u student #用户登陆 登陆到--->/home/student(服务端的本地用户student)
Password:
lftp student@172.25.254.145:~>
###控制用户登陆 (服务端操作)
[root@desktop145 var]# vim /etc/vsftpd/vsftpd.conf
配置文件内容:
12 anonymous_enable=YES | NO #匿名用户是否可以登陆
16 local_enable=NO #本地(指的是服务端)用户是否可以登陆
[root@desktop145 var]# systemctl restart vsftpd.service
测试:(客户端)
[root@server95 Desktop]# lftp 172.25.254.145 -u student
Password:
lftp student@172.25.254.145:~> ls
ls: Login failed: 530 This FTP server is anonymous only.
###对匿名用户的操作 (服务端操作)
cd /var/ftp/pub
[root@desktop145 ftp]# ll -d pub/
drwxr-xr-x 2 root root 17 Jan 23 03:21 pub/
###注意:pub这个目录只对超级用户可写
在客户端测试,直接上传,会报错(550:服务本身的错误)
lftp 172.25.254.145:/pub> put /etc/passwd
put: Access failed: 550 Permission denied. (passwd)
chmod 775 /var/ftp/pub
chgrp ftp /var/ftp/pub
[root@desktop145 ftp]# vim /etc/vsftpd/vsftpd.conf #更改配置文件
配置文件:
29 anon_upload_enable=YES #匿名用户是否可以上传文件
[root@desktop145 var]# systemctl restart vsftpd.service #重启服务
配置文件中的第29行:
##匿名用户下载文件
anon_world_readable_only=NO
##匿名用户建立目录
anon_mkdir_write_enable=YES
##匿名用户是否可以删除和重命名
anon_other_write_enable=YES
##匿名用户默认登陆目录的更改
anon
_root=/westos
#匿名用户是否可以上传文件
anon_upload_enable=YES
=============================