基础知识
什么是磁盘
存放数据的位置
HDD 机械硬盘
SSD 固态硬盘
linux磁盘的命名类型
sd[a-z]
vd[a-z]
/dev/sda1 第一块磁盘的第一个分区
/dev/sdb2 第二块磁盘的第二个分区
/dev/sdc1 第三块磁盘的第一个分区
mbr
gpt
如何查看磁盘
fidsk -l
lsblk
NAME :磁盘名称
MAJ:MIN 主设备号 次设备号
RM 是否为可移动
SIZE 磁盘大小
RO 是否为只读
TYPE 类型
disk 磁盘
part 分区
lvm lvm逻辑卷
ram 随机存储其
mountpoint 挂载点
查看内存
free -hm
如何查看挂载信息
df -Th
-T 显示文件系统
-h 人性化显示
文件系统的类型
windows
FAT32 上传单个文件最大只能为4G
NTFS
linux
ext3
ext4 带有日志功能的文件系统 centos 7之前的文件系统
xfs 高性能带有日志功能的文件系统
swap 交换分区
当内存不够用时,将磁盘空间充当为内存所使用
磁盘分区
分区
案例1:
准备一块20G的磁盘
分四个分区分别大小为5G
三个主分区分别大小为5G
1个扩展分区大小为5G
3个逻辑分区分别大小为1G
fdisk 磁盘设备
Command (m for help): m #输入m列出常用的命令
Command action
a toggle a bootable flag #切换分区启动标记
b edit bsd disklabel #编辑sdb磁盘标签
c toggle the dos compatibility flag #切换dos兼容模式
d delete a partition #删除分区
l list known partition types #显示分区类型
m print this menu #显示帮助菜单
n add a new partition #新建分区
o create a new empty DOS partition table #创建新的空白分区表
p print the partition table #显示分区表的信息
q quit without saving changes #不保存退出
t change a partitions system id #修改分区ID,可以通过l查看id
u change display/entry units #修改容量单位,磁柱或扇区
v verify the partition table #检验分区表
w write table to disk and exit #保存退出
x extra functionality (experts only) #拓展功能
#创建主分区
Command (m for help): n #新建分区
Partition type: #分区的类型
p primary (0 primary, 0 extended, 4 free) #主分区
e extended #逻辑分区
Select (default p): 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): +5G #分区的大小
Partition 1 of type Linux and of size 5 GiB is set
#创建逻辑分区
Command (m for help): n
All primary partitions are in use
Adding logical partition 5
First sector (31461376-41943039, default 31461376):
Using default value 31461376
Last sector, +sectors or +size{K,M,G} (31461376-41943039, default 41943039): +1G
Partition 5 of type Linux and of size 1 GiB is set
sdb 8:16 0 20G 0 disk
├─sdb1 8:17 0 5G 0 part
├─sdb2 8:18 0 5G 0 part
├─sdb3 8:19 0 5G 0 part
├─sdb4 8:20 0 1K 0 part
├─sdb5 8:21 0 1G 0 part
├─sdb6 8:22 0 1G 0 part
└─sdb7 8:23 0 1G 0 part
需求:
1./dev/sdb1 /dev/sdb2 为xfs文件系统
2./dev/sdb3 为ext4 文件系统
3./dev/sdb5 /dev/sdb6 为ext4文件系统
4./dev/sdb7 为swap分区
1)/dev/sdb1 /dev/sdb2 为xfs文件系统
mkfs -t xfs /dev/sdb1
mkfs.xfs /dev/sdb1
2)/dev/sdb3
mkfs.ext4 /dev/sdb3
3)/dev/sdb5 /dev/sdb6
mkfs.ext4 /dev/sdb5
mkfs.ext4 /dev/sdb6
4)/dev/sdb7
mkswap /dev/sdb7
挂载
使用磁盘的分区
临时挂载
mount [分区] [目录]
需求:将/dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb5 /dev/sdb6 分别挂在至/sdb1-3 5-6
mkdir -p /sdb{1..3}
mkdir -p /sdb{5,6}
mount /dev/sdb1 /sdb1
mount /dev/sdb2 /sdb2
mount /dev/sdb3 /sdb3
mount /dev/sdb5 /sdb5
mount /dev/sdb6 /sdb6
swap分区如何生效
swapon /dev/sdb7
swapoff /dev/sdb7
永久挂载
梳理:
拿到一块磁盘怎么做?
1.分区
fdisk [设备]
2.格式化
mkfs -t [格式] [分区]
mkfs.[格式] [分区]
mkswap
3.挂载
mount
mount -a 重新挂载
swapon 开启swap分区
swapoff 关闭swap分区
永久挂载
/etc/fstab 挂载配置文件
挂载设备 挂载目录 文件系统 参数 是否备份 是否检查磁道
/dev/mapper/centos-root / xfs defaults 0 0
方法一:
vim /etc/fstab
/dev/sdb3 /sdb3 ext4 defaults 0 0
方法二:
echo "/dev/sdb5 /sdb5 ext4 defaults 0 0" >> /etc/fstab
swap生效配置的格式
echo "/dev/sdb7 swap swap defaults 0 0" >> /etc/fstab
UUID 设备唯一标识号
在/etc/fstab文件编写中挂载设备最好编写为设备的唯一标识号UUID
blkid 查看到所有设备的UUID编号
查看/dev/sdb1的UUID编号
blkid /dev/sdb1
例1:将/dev/sdb1 挂载至/sdb1目录下 使用UUID的方式进行挂载
echo "$(blkid /dev/sdb1|awk '{print $2}') /sdb1 xfs defaults 0 0" >> /etc/fstab
lvm
添加块5G的磁盘
[root@localhost ~]# 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 5G 0 disk
sdc 8:32 0 5G 0 disk
sdd 8:48 0 5G 0 disk
sde 8:64 0 5G 0 disk
sdf 8:80 0 5G 0 disk
查看
pv(物理卷): pvs pvscan pvdsiplay
vg(卷组):vgs vgscan vgdisplay
lv(逻辑卷):lvs lvscan lvdisplay
创建:
pv: pvcreate [设备]
vg: vgcreate [卷组名称] [物理卷]
lv: lvcreate -L 容量 -n 逻辑卷名称 [卷组名称]
3)扩容
pv:没有扩容
vg:vgextend 卷组名 设备名
lv:lvextend -L +容量 逻辑卷路径
在扩容lv之后,还需要刷新分区表
ext4
resize2fs 逻辑卷的路径
xfs
xfs_growfs 逻辑卷的路径
4)缩容
LVM技术存在缺陷,缩容会出现问题
需求1:
1.将sdb sdc sdd 先创建pv
pvcreate /dev/sd[b-d]
2.将pv都加入到vg,名字为softeem
vgcreate softeem /dev/sd[b-d]
3.从softeem卷组分出两个lv,分别是5G
lvcreate -L 5G -n lv1 softeem
lvcreate -L 5G -n lv2 softeem
4.格式化挂载
mkfs.xfs /dev/softeem/lv1
mkfs.xfs /dev/softeem/lv2
mkdir /lv{1..2}
mount /dev/softeem/lv1 /lv1
mount /dev/softeem/lv2 /lv2
5.扩容
将lv1逻辑卷扩容至8G
lvextend -L +3G -n lv1
xfs_growfs /dev/softeem/lv1
将lv2逻辑卷扩容之10G
pvcreate /dev/sde
vgextend softeem /dev/sde
lvextend -L +5G -n /dev/softeem/lv2
6.缩容
不讲解,存在缺陷