磁盘的概念在windows中也是一样的。 WIN中磁盘分区是三个主分区和N个逻辑分区。 而Linux中你可以选择4个主分区或者三个主分区和N个逻辑分区,一般的话都是选择3个逻辑主分区和N个逻辑分区,逻辑分区的好处就是方便 磁盘管理

磁道:track 扇区:sector 每个扇区,512字节 磁头:head 柱面:cylinde ####################################################

• MBR/msdos 分区模式 – 1~4个主分区,或者 0~3个主分区+1个扩展分区(n个逻辑分区) – 最大支持容量为 2.2TB 的磁盘 – 扩展分区不能格式化

识别硬盘 => 分区规划 => 格式化 => 挂载使用 今天讲的是fdisk这种分区方式。 这种方式只能分小的磁盘,超过2.2TB的磁盘需要用别的分区方式。 首先查看磁盘的命令是 : lsblk [root@room8pc205 桌面]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465.8G 0 disk ├─sda1 8:1 0 200M 0 part /boot └─sda2 8:2 0 465.6G 0 part ├─centos-root 253:0 0 107.6G 0 lvm / ├─centos-swap 253:1 0 8G 0 lvm [SWAP] ├─centos-data 253:2 0 100G 0 lvm /data ├─centos-var_lib_libvirt_images 253:3 0 150G 0 lvm /var/lib/libvirt/images └─centos-ISO 253:4 0 100G 0 lvm /ISO loop0 7:0 0 3.8G 0 loop /mnt

修改磁盘的分区表------: fdisk 常用交互指令: m 列出指令帮助 p 查看现有的分区表 n 新建分区 d 删除分区 q 放弃更改并退出 w 保存更改并退出

比如我们要在/dev/sda下新建3个主分区和3个逻辑分区如何操作呢?

通过命令: [root@room8pc205 桌面]# fdisk /dev/sda 欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。 使用写入命令前请三思。

命令(输入 m 获取帮助):n /输入n 可以进入第一步,p(创建为主分区)e(创建为逻辑分区) Partition type: p primary (2 primary, 0 extended, 2 free) e extended

 这里不一一演示拉~
 前三个都选p(也可以不选,默认为p)然后起始扇区不改,结束扇区的时候选择自己要给该分区分配多少空间。三个单位,M,G,T根据自己的需要给该分区分配空间!
 [root@server0 ~]# fdisk   /devsda

n 创建新的分区----->回车----->回车---->回车----->在last结束时 +2G p 查看分区表 n 创建新的分区----->回车----->回车---->回车----->在last结束时 +2G d 删除分区 w 保存并退出 如果觉得分区够了,可以输出W保存并退出,如果不希望保存,可以ctrl+c直接退出重新来过,这样可以确保自己不会出错,当然也可以按q,放弃更改并退出。 完成分区之后需要格式化文件系统,我们可以使用mkfs工具集 – mkfs.ext3 分区设备路径 – mkfs.ext4 分区设备路径 – mkfs.xfs 分区设备路径 – mkfs.vfat 分区设备路径

[root@server0 ~]# mkfs.xfs /dev/sda1 [root@server0 ~]# mkfs.ext4 /dev/sda2 你想格式化成哪一种只要在mkfs后面加入 相应的参数就可以了。

查看分区文件系统 • blkid

[root@server0 ~]# blkid /dev/vdb1 [root@server0 ~]# blkid /dev/v 查看分区文件系统 • blkid

[root@server0 ~]# blkid /dev/sda1 [root@server0 ~]# blkid /dev/sda2 然后我们可以挂载使用。 挂载使用

[root@server0 ~]# mkdir /part1 [root@server0 ~]# mkdir /part2 [root@server0 ~]# mount /dev/vdb1 /part1 [root@server0 ~]# mount /dev/vdb2 /part2

查看正在挂载使用的设备信息 [root@server0 ~]# df -h ################################################### 开机自动挂载,修改配置文件 /etc/fstab

• 配置文件 /etc/fstab 的记录格式 – 设备路径 挂载点 类型 参数 备份标记 检测顺序

[root@server0 ~]# tail -1 /etc/fstab /dev/vdb1 /part1 xfs defaults 0 0

验证: [root@server0 ~]# mount -a 检测/etc/fstab开机自动挂载配置文件,格式是否正确 检测/etc/fstab中,书写完成,但当前没有挂载的设备,进行挂载

总结:

1.查看硬盘 lsblk 2.划分分区 fdisk 3.刷新分区表 partprobe 4.格式化文件系统 mkfs.xfs mkfs.ext4 5.挂载 mount 6.开机自动挂载 /etc/fstab

LVM逻辑卷的使用

1.整合分散的空间 2.实现分区的动态扩大与缩减

在“分区 --> 格式化”中间增加的一个逻辑层 – 零散空闲存储 ---- 整合的虚拟磁盘 ---- 虚拟的分区----- 格式化------ 挂载 物理卷 Physical Volume 卷组 Volume Group 逻辑卷 Logical Volume

将众多的物理卷,组成卷组,再从卷组中划分逻辑卷 综合分区 将/dev/vdc划分6个分区,3个主分区,一个扩展分区,2个逻辑分区 [root@server0 ~]# fdisk /dev/vdc n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G p 查看分区表 n 创建新的分区 ----->回车---->起始回车----->结束回车 将所有空间给扩展分区 p 查看分区表 n 创建新的分区----->起始回车------>结束+10G n 创建新的分区----->起始回车------>结束+10G w 保存并退出 [root@server0 ~]# partprobe #刷新分区表 [root@server0 ~]# ls /dev/vdc[1-6] [root@server0 ~]# lsblk [root@server0 ~]# ls /dev/vdc*

新建逻辑卷

1.新建卷组 命令格式:vgcreate 卷组名称 分区路径

[root@server0 ~]# vgcreate myvg /dev/vdc1 /dev/vdc2 [root@server0 ~]# vgs [root@server0 ~]# pvs

2.创建逻辑卷 命令格式:lvcreate -n 逻辑卷名称 -L 大小 基于卷组

[root@server0 ~]# lvcreate -n mylv -L 16G myvg [root@server0 ~]# lvs

3.使用LVM逻辑卷 [root@server0 ~]# mkfs.ext4 /dev/myvg/mylv [root@server0 ~]# mkdir /lvm [root@server0 ~]# tail -1 /etc/fstab /dev/myvg/mylv /lvm ext4 defaults 0 0

[root@server0 ~]# mount -a [root@server0 ~]# df -h

LVM逻辑卷的扩展

一、卷组有足够的剩余空间 1.直接扩展逻辑卷的空间 [root@server0 ~]# vgs [root@server0 ~]# lvextend -L 19G /dev/myvg/mylv

[root@server0 ~]# lvs [root@server0 ~]# vgs

2.扩展文件系统的大小 扩展ext4文件系统: resize2fs 扩展xfs文件系统: xfs_growfs

[root@server0 ~]# df -h | tail -1 [root@server0 ~]# blkid /dev/myvg/mylv [root@server0 ~]# resize2fs /dev/myvg/mylv [root@server0 ~]# df -h | tail -1

二、卷组没有足够的剩余空间

1.扩展卷组空间 [root@server0 ~]# vgextend myvg /dev/vdc3 [root@server0 ~]# vgs

2.直接扩展逻辑卷的空间 [root@server0 ~]# vgs [root@server0 ~]# lvextend -L 25G /dev/myvg/mylv

[root@server0 ~]# lvs [root@server0 ~]# vgs

3.扩展文件系统的大小

[root@server0 ~]# df -h | tail -1 [root@server0 ~]# resize2fs /dev/myvg/mylv [root@server0 ~]# df -h | tail -1

缩减分区

[root@server0 ~]# resize2fs /dev/myvg/mylv 10G [root@server0 ~]# umount /lvm [root@server0 ~]# resize2fs /dev/myvg/mylv 10G

• 创建卷组的时候设置PE大小 – vgcreate -s PE大小 卷组名 空闲分区... – vgchange -s PE大小 卷组名

PE:卷组划分空间的单位 4M

[root@server0 ~]# vgdisplay myvg [root@server0 ~]# vgchange -s 2M myvg [root@server0 ~]# vgdisplay myvg

• 创建逻辑卷的时候指定PE个数 – lvcreate -l PE个数 -n 逻辑卷名 卷组名

[root@server0 ~]# lvcreate -l 102 -n lvtest02 myvg Logical volume "lvtest02" created [root@server0 ~]# lvs

##################################################### 交换分区(虚拟内存)

• 相当于虚拟内存, – 当物理内存不够用时,使用磁盘空间来模拟内存 – 在一定程度上缓解内存不足的问题

[root@server0 ~]# swapon -s #查看交换空间,组成 成员信息

[root@server0 ~]# mkswap /dev/vdc5 #格式化,交换文件系统 [root@server0 ~]# swapon /dev/vdc5 #启用交换分区 [root@server0 ~]# swapon -s

[root@server0 ~]# mkswap /dev/vdc6 #格式化,交换文件系统 [root@server0 ~]# swapon /dev/vdc6 #启用交换分区 [root@server0 ~]# swapon -s

#####################################################

开机自动启用交换分区 /etc/fstab

[root@server0 ~]# vim /etc/fstab [root@server0 ~]# tail -2 /etc/fstab /dev/vdc5 swap swap defaults 0 0 /dev/vdc6 swap swap defaults 0 0

[root@server0 ~]# swapoff /dev/vdc[5-6] #停用交换分区

[root@server0 ~]# swapon -s [root@server0 ~]# swapon -a #检测/etc/fstab交换分区 [root@server0 ~]# swapon -s

#####################################################

resize2fs 1.42.9 (28-Dec-2013) 请先运行 'e2fsck -f /dev/myvg/mylv'.

[root@server0 ~]# e2fsck -f /dev/myvg/mylv [root@server0 ~]# resize2fs /dev/myvg/mylv 10G [root@server0 ~]# lvreduce -L 10G /dev/myvg/mylv

[root@server0 ~]# lvreduce -L 10G /dev/myvg/mylv WARNING: Reducing active logical volume to 10.00 GiB THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce mylv? [y/n]: y