目录
1.磁盘管理
1.1 磁盘简介
1.2 管理磁盘
添加磁盘
管理磁盘流程三步曲
1.查看磁盘信息
2.创建分区
3.创建文件系统
4.挂载mount
5.查看挂载信息
6.MBR扩展分区
7.重启后的影响
2.逻辑卷LVM
2.1 简介
2.2 创建LVM
2.3 VG管理
2.4 LV管理实战-在线扩容
3.交换分区管理swap
3.1 简介
3.2 查看当前的分区
3.3 增加交换分区
磁盘/硬盘/disk是同一个东西,不同于内存的是容量比较大。
1.1.1 存储设备类型
从工作原理区分
机械
机械硬盘即是传统普通硬盘,主要由盘头,磁头,盘头转轴及控制电机,磁头控制器,数据转移器,接口,缓存等几个部分组成。
固态
固态驱动器(Solid State Disk或Solid State Drive,简称SSD ),俗称固态硬盘,固态硬盘,固态硬盘是用固态电子存储芯片阵列而成的硬盘
1.1.2 接口类型
1.1.3 厂商
西部数据,希捷,三星,日立,金士顿
1.1.4 术语
1.1.5 命名
kermel对不同接口硬盘命名方式(RHEL/CentOS)
1)IDE(并口)
/dev/hda
/dev/hdb
2)SATA(串口)
/dev/sda
/dev设备文件目录
sda是一个文件
s代表sata就是串口
d代表磁盘
a代表第一块
/dev/sdb
即sd后面加上字母abc表磁盘序号
1.1.6 磁盘分区类型
1)MBR
概念:主引导记录(MBR,Master Boot Record)是位于磁盘最前面的一段引导
使用情况:
MBR支持最大的磁盘容量是<2TB。设计时分配4个分区
如果希望超过4个分区,需要放弃主分区,改为拓展分区和逻辑分区
fdisk命令 磁盘分区命令
2)GPT
概念:全局唯一标识分区表(GUIDPartion Table,缩写:GPT)是一个实体硬盘的分区表的结构布局的标准。
使用情况:
GPT支持大于大于2T的硬盘,支持128个分区
点击“添加”按钮
点击硬盘,再点击下一步。
点击“下一步”
选择“创建新虚拟磁盘”,再点击“下一步” 。
填写“最大磁盘大小”为5,选择选项“将虚拟磁盘拆分成多个文件” ,再点击“下一步”。
点击“完成”。
点击“确定”按钮。
1)分区(MBR或者GPT)
2)格式化/文件系统 Filesystem
3)挂载mount
磁盘可以看作一个毛坯房,
1)分区就是把一个房子分成一个个房间
2)格式化/文件系统 就是把房间装修一下,要能用
3)挂载mount 就是 给密封房间弄个可以进入的门
方法1:ll /dev/sd*
ll 等同于 ls -l --color=tty
ls加参数的一个别名
其中/dev/sdb,/dev/sdc,/dev/sdd,这些相等于购买的新磁盘
方法2(了解): lsblk
创建分区相当于把房子(磁盘)分成一个个空间(分区)
启动分区工具:fdisk /dev/sdb
输入“m”可获取操作提示
进入会话模式:
根据上述提示,可知创建磁盘分区的步骤为:
1)输入“n”开始创建新的分区
2)输入“p”选择分区类型为主分区
3)输入“1”,选择使用1号分区
4)直接回车,使用起始扇区的默认值。
5)输入“+1G”,即设置新创建的分区大小为1G。
如此反复再创建几个分区,再输入“p”查看新建分区
输入“w”,保存修改并退出
刚才划分的分区并没有同步到系统中,使用命令 partprobe /deb/sdb 刷新(重读)分区表
使用命令 fdisk -l /dev/sdb或者命令lsblk,查看分区结果,至此磁盘划分完毕。
创建文件系统相当于在房子里放一些格子柜。
使用命令mkfs.ext4 /dev/sdb1,创建文件系统(对新建的分区进行格式化),sdb2,sdb3都要格式化。
mkfs.ext4 /dev/sdb1
mkdir /mnt/disk1 #创建挂载点,一个分区一个挂载点。
mount -t ext4 /dev/sdb1 /mnt/disk1 #挂载disk1盘
方法1:
df -hT
-h, --human-readable print sizes in human readable format (e.g., 1K 234M 2G)
-T, --print-type print file system type
可查看到的信息:
分区 文件系统 大小 占用 空闲 占比 挂载点
方法2:
mount
当想要在一个磁盘下创建超过4个分区,需要用到扩展分区。
分区分为主分区和扩展分区(扩展分区里面可以设置多个逻辑分区)。但扩展分区并不能用来挂载,它只是一种规划思路。扩展分区中的逻辑分区和主分区的挂载方式一样。
主分区1 | 主分区2 | 主分区3 | 扩展分区4 |
逻辑分区5 | |||
逻辑分区6 | |||
...... |
过程:
按照上文的步骤创建3个主分区后,创建第4个分区时选择扩展分区。
再次输入“n”时,会默认添加逻辑分区
记得要输入“w”,进行保存!!!
虽然现在已经挂载上了,但是重启之后就会失效。
方法一
我们需要将其写入到自启动文件(当虚拟机启动时,就会自动执行该文件得命令)
vim /root/.bashrc
mount -t ext4 /dev/sdb1 /mnt/disk1
方法二(不建议,一但书写错误,系统无法正常启动 ,只能还原快照。)
vim /etc/fstab
#在文件中加上该配置
/dev/sdb1 /mnt/disk1 ext4 defaults 0 0
#修改完/etc/fstab后
#加载文件/etc/fstab中设置的所有设备。
mount -a
管理磁盘的一种方式,性质与基本磁盘无异,其特点是可以随意扩张大小。
相关术语
PV:物理卷(Physical volume):一块硬盘,或多块硬盘
VG:卷组(Volume Group):一堆磁盘的统称
LV:逻辑卷(Logical Volume):一个逻辑分区,一个分区
1.添加物理磁盘 如/dev/sdc
2.将物理磁盘转换成物理卷(PV)
转换:pvcreate /dev/sdc
查看:pvscan 或 pvs 或 pvdisplay
3.创建卷组(VG)并加入
创建:vgcreate vg1 /dev/sdc
查看:vgs 或 vgscan 或 vgdispaly
4.在卷组中,创建逻辑卷(LV)
创建:lvcreate -L 200M -n lv1 vg1
其中,-L大小 -n 卷名 vg1为组名
查看:lvscan
5.创建文件系统
mkfs.ext4 /dev/vg1/lv1
注意:/dev/卷组名/逻辑卷名
6.创建挂载点
mkdir /mnt/lv1
7.挂载
mount /dev/vg1/lv1 /mnt/lv1
创建LVM的不同在于多了第2、3、4步,少了分区 。
示例:
将/dev/vg1容量由4G 扩容到 6G
步骤1:创建PV。而后使用第二步,将PV增加到VG中。
pvcreate /dev/sdd
步骤2:扩展VG
vgextend vg1 /dev/sdd
1)lv扩容
1.查看VG空间,观察VG是否有剩余空间。
查看命令:vgs
2.扩容LV,增加200M空间,给lv1
lvextend -L +200M /dev/vg1/lv1
2)FS扩容
先观察文件系统当前容量。
df -Th | grep 'lv1'
重设LV分区的大小
resize2fs /dev/vg1/lv1
再次观察df -Th的分区大小。和上一次的对比一下。大小已经发生改变。
swap的作用是 ‘提升’内存的容量,防止OOM(Out Of Memory)即内存溢出。在Linux中叫SWAP,在windows中叫虚拟内存。
swap的大小一般设置为内存的2倍。
但在生产环境中,对于内存较小的系统设置为
系统的内存 | 最小需要的交换空间 |
大于4GB而小于16GB | 4GB |
大于16GB而小于64GB | 8GB |
大于64GB而小于256GB | 16GB |
free -m
1) 准备分区
准备将/dev/sde磁盘,划分为1G分区为例
划分分区后,按t,将类型设置为82,再按w进行保存
fdisk /dev/sde
partprobe /dev/sde
#验证分区结果
ll /dev/sde*
2)格式化 mkswap /dev/sde1
3)挂载 swpon /dev/sde1
4)验证 free -m
swapoff /dev/sde1 取消挂载