目录
一. lvm:logical volume manager 动态管理卷
2. lvs缩减,适合ext*(xfs文件系统,不支持缩减)
一. lvm:logical volume manager 动态管理卷
Linux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间。普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多个分区来存放,所以也不能同时放到别的磁盘上。而遇到出现某个分区空间耗尽时,解决的方法通常是使用符号链接,或者使用调整分区大小的工具,但这只是暂时解决办法,没有从根本上解决问题。随着Linux的逻辑卷管理功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小,简单来说(可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态的分区进行扩大和缩小)
pv //物理卷 被lv***这个命令处理过的物理分区
vg //物理组卷 被组装到一起的物理卷
lvm //逻辑卷 直接使用的设备,可以增大缩减并保持原有的数据不变
1. lvm的建立
watch -n 1 'pvs;vgs;lvs;df -h' //监控
pvcreate /dev/vdc1
vgcreate vg1 /dev/vdc1
lvcreate -L 20M -n lv1 vg1
mkfs.xfs /dev/vg1/lv1
mount /dev/vg1/lv1 /mnt
2. lvs的热拉伸
--> vg1中的剩余容量充足的时候
lvextend -L 50M /dev/vg1/lv1 //拉伸设备
xfs.growfs /dev/vg1/lv1 //拉伸文件系统
df -h
--> 当vg1中的容量不足的时候,再次建立分区并修改标签为8e
prvcreate /dev/vdd2
vgextend vg1 /dev/vdd2 //拉伸物理卷组
lvextend -L 500 /dev/vg1/lv1
xfs.growfs /dev/vg1/lv1(也可以resize2fs /dev/vg1/lv1 刷新)
2. lvs缩减,适合ext*(xfs文件系统,不支持缩减)
不支持热缩减
umount /mnt
mkfs.ext4 /dev/vg1/lv1 //修改文件系统
e2fsck -f /dev/vg1/lv1 //先缩减文件系统在缩小设备
resize2fs /dev/vg1/lv1 100M
lvreduce -L 100 /dev/vg1/lv1
mount /dev/vg1/lv1 /mnt
df -h
3. 缩减vg
vgreduce vg1 /dev/vdd2 //缩减
vgextend vg1 /dev/vdd2 //拉伸
4. 数据迁移(移除含有数据的设备)
pvmove /dev/vdb1 /dev/vdb2 //将vdb1中的数据移动到vdb2
vgreduce vg1 /dev/vdb1 //将vdb1从vg1z中取出
pvremove /dev/vdb //将vdb彻底remove
5. lvm快照
保护原有数据,提出了快照的概念
lvcreate -L 150 -lv1-backup -s /dev/vg1/lv1
mount /dev/vg1/lv1-backup /mnt //如果截取数据大于150M,会破坏设备
dd if=/dev/zero of=/mnt/file bs=1M count=160
6. 删除
先umount
lvremove /dev/vg1/lv1-backup
lvremove /dev/vg1/lv1
vgremove /vg1
pvremove /dev/vdd2
fdisk /dev/vdd
二. ftp
FTP:文件传输协议(File Transfer Protocol)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。
服务端:
yum install vsftpd -y
systemctl start vsftpd
systemctl enable vsftpd
systemctl stop firewalld.serverice
systemctl disable firewalld
关闭selinux
vim /etc/selinux/config
SELINUX=disabled //文件关闭,reboot后生效
或者临时设定 setenforce 0
客户端:
yum install lftp -y
lftp xxx.xxx.xxx.xxx //匿名用户登录 →/var/ftp
lftp xxx.xxx.xxx.xxx -u student //用户登录 →/home/student
--> 控制用户登录 服务端:
vim /etc/vsftpd/vsftpd.conf (以下都是修改此文件)
行 12 anonymous_enable=NO|YES //匿名用户是否可以登录
行 16 local_enable=NO //本地用户(服务端)是否可以登录
--> 匿名用户的操作
chmod 755 /var/ftp/pub
chgrp ftp /var/ftp/pub
29 anon_upload_enable=YES //匿名用户是否可以上传文件
systemctl restart vsftpd
--> 匿名用户下载文件
anon_world_readable_only=NO
--> 匿名用户建立目录
anon_mkdir_write_enable=YES
-->匿名用户是否可以删除和重命名
anon_other_write_enable=YES
--> 匿名用户默认登录目录更改
anon_root=/westos
--> 匿名用户上传文件默认权限修改
anon_umask=022
--> 客户端的最大上传速率控制
anon_max_rate=102400 单位字节 (100k)
客户端测试 :dd if=/dev/zero of=/mnt/bigfile bs=1M count=1500
put
--> 服务最大连接数
max_clients=2
--> 本地用户家目录修改
local_root=/westos //家目录是一定存在于系统的
--> 限制本地用户浏览其他目录
在修改配置文件之前,用户验证登陆的时候在服务指定的家目录里面,但是可以随意切换系统目录(不安全)
chroot_local_user=Yes
chmod u-w /home/*
--> 所有本地用户都可以切换目录,除了文件里的用户不能 vim /etc/vsftpd/chroot_list
chroot_local_user=NO
chroot_local_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
--> 所有本地用户都不可以切换目录,除了可文件里的用户可以
chroot_local_user=YES
chroot_local_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
--> 限制本地用户的登陆
vim /etc/vsftpd/ftpusers //永久的用户黑名单
vim /etc/vsftpd/user_list //用户临时黑名单
--> 用户的白名单设定(将用户临时黑名单变成白名单)
userlist_deny=NO
--> ftp虚拟用户登陆
创建虚拟用户帐号身份
vim /etc/vsftpd/wangdassfile(文件名任意)
ftpuser1
666
ftpuser2
666
wangdass
666
#上面的密码时明文,需要加密
db_load -T -t hash -f /etc/vsftpd/wangdass /etc/vsftpd/wangdass.db
(-T:transfer转移 -t: 表示转换方式为hash)
cat 该文件
-->cd /etc/pam.d (pam服务密码)
vim wangdass
account required pam_userdb.so db=/etc/vsftpd/wangdass
auth required pam_userdb.so db=/etc/vsftpd/wangdass
(account:帐号名称 auth:表示密码 不分先后顺序)
vim /etc/vsftpd/vsftpd.conf //在最后添加
pam_service_name=wangdassye
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
guest_root=/ftphome/$USER
user_sub_token=$USER
mkdir /ftphome/
cd 进去 然后分别以虚拟用户名创建文件夹即虚拟用户的登陆目录
--> ftp虚拟用户加目录的独立设定
vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/userconf
cd /etc/vsftpd
mkdir userconf(与user_config_dir=/etc/vsftpd/userconf相同)
cd userconf
vim ftpuser1
anon_mkdir_write_enable=YES
虚拟用户的主配置文件(里面写要给这个用户的权限 注意:在所有用户的这个主配置文件中,所要给虚拟用户的权限一定要关闭)
补充
=#= 500:权限过大
=#= 530:用户认证失败
=#= 550:服务本身不被允许
=#= 553:文件系统权限过小