####系统基础磁盘信息####
/dev/hd0 #系统串口硬盘
/dev/sda #系统并口硬盘
/dev/cdrom /dev/sr0 #系统光驱
/dev/mapper/ #系统当中虚拟出来的设备
dfisk -l #显示系统当中真实存在的设备
cat /proc/partitions #显示系统真实识别的设备
blkid #系统可以使用的设备
df #系统正在使用的设备
系统识别设备数量:df <= blkid <= cat /proc/partitions <= fdisk -l
注:查看系统设备 df -h比df -H更准确
####mount命令挂载U盘和退出####
一、U盘的查看和退出
插U盘
su - root #切换root用户
df #查看系统设备
umount /dev/sdb1 #退出U盘
例图:
插上U盘后查看:
退出U盘后查看:
二、U盘的强制退出
mount /dev/sdb1 /mnt #挂载U盘到/mnt
cd /mnt
打开另一个shell:
su - root #切换超级用户
umount /mnt #退出/mnt里的U盘设备:无法退出,有进程在使用
fuser -kvm /dev/sdb1 #强制结束另一个进程使用U盘设备
umount /mnt #退出/mnt里的U盘设备
三、U盘的参数挂载
mount /dev/sdb1 /mnt #挂载U盘到/mnt
cd /mnt #进到U盘里进行操作
touch file1
rm -fr file1
umount /dev/sdb1 #退出U盘
mount -o ro /dev/sdb1 /mnt #只读参数挂载
touch /mnt/file:touch: cannot touch ‘/mnt/file’: Read-only file system
mount -o remount,rw /dev/sdb1 #重新更改某一些参数
mount #查看参数
####系统分区####
一、分区的建立、保存、格式化以及挂载
fdisk /dev/vdb ##设置系统分区
Command (m for help): n ##创建分区
Partition type:
p primary ##主分区
e extended ##扩展分区
Select (default p): p
Partition number (1-4, default 1): 1 ##确定主分区id
First sector (2048-20971519, default 2048): ##分区起始块的位置,使用默认
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +100M ##分区结束块,用+大小的方式指定
Partition 1 of type Linux and of size 100 MiB is set
实验:建立3个主分区:
建立3个主分区后建立扩展分区:
Command (m for help): n
Partition type:
p primary (3 primary, 0 extended, 1 free)
e extended
Select (default e): e
Selected partition 4
First sector (616448-20971519, default 616448):
Using default value 616448
Last sector, +sectors or +size{K,M,G} (616448-20971519, default 20971519): ##默认其他大小为扩展分区
Using default value 20971519
Partition 4 of type Extended and of size 9.7 GiB is set
建立3个主分区1个扩展分区后建立逻辑分区:
Command (m for help): n
All primary partitions are in use
Adding logical partition 5
First sector (618496-20971519, default 618496):
Using default value 618496
Last sector, +sectors or +size{K,M,G} (618496-20971519, default 20971519): +100M
Partition 5 of type Linux and of size 100 MiB is set
Command (m for help): p ##查看分区信息
Command (m for help): wq ##保存分区策略并退出fdisk界面
partprobe ##同步磁盘信息
cat /proc/partitions ##查看设备是否被系统识别
格式化分区后才能挂载:
mount /dev/vdb5 /mnt
mkfs.xfs /dev/vdb5 ##格式化设备,在设备上安装文件系统xfs
blkid ##查看可用设备,可以看到被格式化好的/dev/vdb5
mount /dev/vdb1 /mnt ##将设备挂载到/mnt
二、把磁盘分区格式改为gpt
umount /mnt ##把设备在/mnt取消挂载
fdisk /dev/vdb ##设置系统分区
Command (m for help): d ##删除磁盘分区
Partition number (1-5, default 5): 5 ##把第5磁盘分区删除
Partition 5 is deleted
将上个实验建立的5个磁盘分区删除
parted /dev/vdb
(parted) mklabel
New disk label type? gpt ##选择类型
Yes/No? yes
(parted) quit
建立一个系统磁盘并查看磁盘类型为gpt格式
mkfs.xfs /dev/vdb1 -f ##强制格式化
mount /dev/vdb1 /mnt ##挂载到/mnt
df ##查看挂载情况
三、直接改变磁盘分区类型:
parted /dev/vdb
(parted) mklabel
New disk label type? msdos ##修改磁盘类型为dos
Ignore/Cancel? I
Yes/No? Yes
Ignore/Cancel? I
(parted) quit
fdisk -l ##查看磁盘分区信息
关机后挂载便会消失,如需挂载关机后仍挂载,则需:
vim /etc/fstab:
/dev/vdb1 /mnt xfs defaults 0 0
设备 挂载点 文件系统类型 挂载参数 不备份 不检测
mount -a ##使配置文件生效
df
四、swap分区
swapon -s ##查看系统的swap分区信息
新建磁盘分区:
Command (m for help): t ##修改分区类型
Partition number (1,2, default 2): 2
Hex code (type L to list all codes): 82 ##修改为82类型
查看磁盘分区:
mkswap /dev/vdb2 #格式化为mkswap分区
swapon -a /dev/vdb2 #挂载分区信息
swapon -s #查看分区信息
swapon -a #检查报错分区信息
删除swap分区:
swapoff /dev/vdb2 ##关闭分区
fdisk /dev/vdb #删除/dev/vdb2
####磁盘加密####
一、磁盘加密
fdisk /dev/vdb 建立一个磁盘分区
cryptsetup luksFormat /dev/vdb1 ##设置磁盘密码
cryptsetup open /dev/vdb1 westos ##打开磁盘文件(用钥匙打开门)
ls /dev/mapper
mkfs.xfs /dev/mapper/westos ##格式化磁盘文件
mount /dev/mapper/westos /mnt ##挂载磁盘文件到/mnt
touch /mnt/file{1..10} ##建立文件
umount /mnt ##取消挂载
df
cryptsetup close westos ##关闭磁盘文件(关闭门)
二、磁盘加密开机自启动
vim /root/diskpass ##建立密码文件,编辑密码
chmod 600 /root/diskpass ##修改文件权限,设置root只读
cryptsetup luksAddKey /dev/vdb1 /root/diskpass ##使磁盘加密时识别密码文件
vim /etc/crypttab: #建立密码识别文件
westos /dev/vdb1 /root/diskpass
设备解密形态 真实设备 解密文件
vim /etc/fstab: #使密码开机自启动
reboot ##重启
rht-vmctl view server
df ##开机后磁盘自动挂载
三、解除磁盘加密(里面的数据都会丢失)
vim /etc/fstab ##取消开机自启动
vim /etc/crypttab ##编辑删除加密识别文件
rm -fr /root/diskpass ##删除密码文件
umount /mnt ##取消挂载
cryptsetup close westos ##关闭加密文件
mkfs.xfs /dev/vdb1 -f ##强制格式化
####磁盘阵列####
第一步:磁盘类型raid
fdisk /dev/vdb 建立3个磁盘分区
将3个磁盘分区类型改为raid:
查看磁盘分区并保存
第二步:设置监控
打开一个shell:
watch -n 1 cat /proc/mdstat ##监控命令
回到实验shell:
mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}
-C #创建
-a #表示如果不存在自动建立
-l #磁盘等级
-n #使用磁盘个数
-x #闲置磁盘个数
第三步:格式化并挂载:
mkfs.xfs /dev/md0
mount /dev/md0 /mnt
二、设备的管理
mdadm -D /dev/md0 ##查看磁盘信息
mdadm /dev/md0 -f /dev/vdb2 ##强制损坏磁盘
mdadm -D /dev/md0 查看
mdadm /dev/md0 -r /dev/vdb2 ##删除坏掉的磁盘
mdadm -D /dev/md0 查看
mdadm /dev/md0 -a /dev/vdb2 ##添加新的磁盘
mdadm -D /dev/md0 查看
三、删除设备
umount /mnt ##取消挂载
mdadm -S /dev/md0 ##关闭磁盘
fdisk /dev/vdb ##删除磁盘分区
partprobe ##同步分区配置
####磁盘配额####
一、设置磁盘配额
第一步:建立磁盘
fdisk /dev/vdb ##建立新的磁盘分区
第二步:格式化设备并挂载
mkfs.xfs /dev/vdb1 ##格式化
mount -o usrquota /dev/vdb1 /mnt ##挂载设备并且加载配额设度
第三步:编辑配额
edquota -u student:hard=20480 ##编辑配额
blocks ##已经存在的文件大小
soft ##软件
hard ##硬件,最多能使用多少
inodes ##目前的个数
soft ##建立多少个文件后会警告
hard ##最多能建立多少个
第四步:切换用户实验
su - student
只针对于设备不针对用户:
dd if=/dev/zero of=/mnt/studentfile bs=1M count=20 ##从无限0设备中复制数据到/mnt/studentfile
dd ##截取命令
bs ##大小
count ##块数
如果提示权限不够,则退出到root用户给予权限:
exit
chmod 777 /mnt
再切回student用户
不能截取超过配额的容量
二、开机自启动
如设置开机自启动:vim /etc/fstab
/dev/vdb1 /mnt xfs defaults,usrquota 0 0
设备 挂载点 文件系统类型 挂载参数 不备份 不检测
三、取消磁盘配额
umount /mnt ##取消挂载
fdisk /dev/vdb ##删除磁盘分区
partprobe ##同步分区配置
cat /proc/partitions ##查看分区情况
####lvm管理####
lvm ##使我们的硬盘无限扩容,无限分区
pv ##物理卷 被处理过的物理分区
vg ##物理卷组
pe ##物理扩展
lvm ##把物理卷组划分出来
一、设定lvm分区挂载
第一步:设置监控
打开另一个shell连接server虚拟机
watch -n 1 'pvs;vgs;lvs;df -h /mnt' ##监控命令
第二步:建立分区,修改类型
回到shell
建立3个1G的磁盘分区
改变分区类型为Linux LVM
第三步:lvm分区挂载
pvcreate /dev/vdb1 ##把物理分区变为物理卷
vgcreate vg0 /dev/vdb1 ##建立物理卷组
lvcreate -L 300M -n lv0 vg0 ##建立逻辑卷 -L 指定大小 -n 指定名字
mkfs.xfs /dev/vg0/lv0 ##格式化
mount /dev/vg0/lv0 /mnt ##挂载
二、扩大设备
1、直接扩大设备
lvextend -L 500M /dev/vg0/lv0 ##扩大设备(拉大到500M)
xfs_growfs /dev/vg0/lv0 ##扩大文件系统
2、当卷组内存不够时:
pvcreate /dev/vdb2 ##建立新的物理卷
vgextend vg0 /dev/vdb2 ##扩展物理卷组
lvextend -L 1500M /dev/vg0/lv0 ##扩大设备(拉大到1500M)
xfs_growfs /dev/vg0/lv0 ##扩大文件系统
三、扩大不同类型文件系统
umount /mnt ##解除xfs格式文件系统的挂载
mkfs.ext4 /dev/vg0/lv0 ##改变文件系统的格式为ext4
mount /dev/vg0/lv0 /mnt ##挂载
lvextend -L 1800M /dev/vg0/lv0 ##扩大设备
resize2fs /dev/vg0/lv0 ##扩大文件系统(ext4格式)
四、缩减设备
umount /mnt ##解除挂载
e2fsck -f /dev/vg0/lv0 ##扫描文件系统
resize2fs /dev/vg0/lv0 1000M ##缩减文件系统
mount /dev/vg0/lv0 /mnt ##挂载
lvreduce -L 1000M /dev/vg0/lv0 ##缩减设备
五、缩减vg
如果移除的设备有数据则需要移到没有数据的设备上
pvmove /dev/vdb1 /dev/vdb2 ##将vdb2的数据移到vdb1
注:如果缩减的设备没有数据,则不需要这一步
vgreduce vg0 /dev/vdb1 ##移除物理卷组
pvremove /dev/vdb1 ##移除物理卷
六、建立lvm快照
touch /mnt/westos{1..5} ##建立5个文件
把上个实验删掉的物理卷和卷组设置回来:
pvcreate /dev/vdb1 ##把物理分区变为物理卷
vgcreate vg0 /dev/vdb1 ##建立物理卷组
umount /mnt ##取消挂载
lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0 ##建立快照 -s 照的对象是谁
mount /dev/vg0/lv0backup /mnt ##挂载
查看/mnt目录是否有我们创建的5个文件,然后把它们删除
umount /mnt ##解除挂载
lvremove /dev/vg0/lv0backup ##删除快照
这时再重新建立快照查看/mnt目录
七、删除lvm
umount /mnt ##解除挂载
lvremove /dev/vg0/lv0backup ##移除快照
lvremove /dev/vg0/lv0 ##移除物理卷
vgremove vg0 ##移除卷组
pvremove /dev/vdb{1..2} ##移除分区