linux磁盘与逻辑卷

磁盘管理

磁盘管理有关概念

磁盘分区:对硬盘物理介质的逻辑划分。
磁盘分红多个分区,能够在不一样的分区创建不一样的文件系统。
磁盘格式化:建立文件系统的工做,会致使现有的分区中全部的数据被清除。
对磁盘进行分区和格式化将会致使数据丢失,分区格式化前须要对数据进行备份。
复制代码

linux中一切皆文件,硬盘、分区等设备均表示为文件linux

以以下磁盘为例bash

# /dev/sda5
/dev 硬件设备文件所在的目录
sd 表示串行设备, 除了sd外还有hd,表示IDE设备
a 硬盘的顺序号,以字母表示
5 分区的顺序号,以数字表示
复制代码

传统的MBR分区方式

主引导记录

主引导扇区: 硬盘的0柱面、0磁头、1扇区称为主引导扇区数据结构

磁盘分区表: 含4个分区项,偏移地址01BEH--01FDH,每一个分区表项长16个字节,共64字节为分区项一、分区项二、分区项三、分区项4工具

结束标记: 偏移地址01FE--01FF的2个字节值为结束标志0xAA55或0x55AA,称为“魔数”(magic number)。若是该标志错误系统就不能启动oop

/dev/hdXX

传统的IDE并口硬盘,如今被串口SATA硬盘取代布局

PC主机中的第1个IDE硬盘表示为hda,第二个IDE硬盘为/dev/hdb,依此类推 IDE硬盘中的4个主分区可表示为hda1至hda4性能

/dev/sdXX

使用SATA的串口硬盘,传输速率快,主流硬盘spa

主分区,一个硬盘容许4个主分区
扩展分区:一个硬盘容许3个主分区,一个扩展分区
逻辑分区:在扩展分区上建立
复制代码

1.扩展分区只用于容纳逻辑分区,并不创建文件系统,所以也不能直接向扩展分区中保存文件和目录。操作系统

2.存储在扩展分区中的分区称为逻辑分区( Logic Partition)。每个逻辑分区均可以存储一个文件系统。日志

3.逻辑分区的编号始终从5开始,由于1~4已经预留给主分区和扩展分区使用

4.与硬盘同样,每个分区也会有象征该分区的设备文件;指定硬盘的设备文件后,再根据分区的识别号码命名。

5.主要分区与扩展分区:使用1-4的识别号码。

6.逻辑分区:一概使用5-63的识别号码。例如,/dev/hda的第一个主要分区,其设备文件即是/dev/hdal;而/dev/sdb硬盘的第1号逻辑分区,则会使用/dev/sdb5的设备文件。

GUID分区表

简称GPT。使用GUID分区表的磁盘称为GPT磁盘。是源自EFI标准的一种较新的磁盘分区表结构的标准。与广泛使用的主引导记录(MBR)分区方案相比,GPT提供了更加灵活的磁盘分区机制。它具备以下优势:

一、支持2TB以上的大硬盘.
二、每一个磁盘的分区个数几乎没有限制。为何说“几乎”呢?是由于Windows系统最多只
容许划分128个分区。不过也彻底够用了。 
三、分区大小几乎没有限制。又是一个“几乎”。由于它用64位的整数表示扇区号。夸张
一点说,一个64位整数能表明的分区大小已是个“天文数字”了,若干年内你都没法见
到这样大小的硬盘,更不用说分区了。
四、分区表自带备份。在磁盘的首尾部分分别保存了一份相同的分区表。其中一份被破
坏后,能够经过另外一份恢复。
五、每一个分区能够有一个名称(不一样于卷标)。
复制代码

为何要提出新的分区方案

(1)主分区数目不能超过4个的限制,不少时候4个主分区并不能知足须要。
(2)MBR分区方案没法支持超过2TB容量的磁盘。由于这一方案用4个字节存储分区的总
扇区数,最大能表示2的32次方的扇区个数,按每扇区512字节计算,每一个分区最大不能
超过2TB。磁盘容量超过2TB之后,分区的起始位置也就没法表示了。在硬盘容量突飞猛
进的今天,2TB的限制将很快被突破。
复制代码

分区管理工具

# fdisk 分区管理工具
    fdisk -l 列出硬盘分区信息
    fdisk /dev/sda 交互模式操做sda设备
    m 显示全部可用命令
    p 显示硬盘分区信息
    n、e、p 建立新、扩展、主分区
    t 更改分区文件系统
    d 删除硬盘分区
    w、q 保存、不保存退出
磁盘分区设备名
Boot:表示引导分区
Start:表示一个分区的开始扇区
End:表示一个分区的结束扇区
Blocks:表示分区容量,单位是块,默认一个块是1KB
Id:一个两位的十六进制,表示分区类型
System:ID所定义分分区类型

# 建立一个大小为300M的主分区
root@computer: ~# fdisk /dev/sdb
命令(输入m获取帮助):m
命令(输入m获取帮助):n
Select (default p):
Using default response p
分区号(2-4,默认2):
起始扇区(19555689 - 16777296,默认为 1955859):
将使用默认值 1955859
Last扇区,+扇区 or +size(K, M, G)
# 保存退出,按照要求同步磁盘
# 须要系统从新启动才能够生效,若是不想重启系统,可使用partprober /dev/sdb
复制代码

创建和管理文件系统

文件系统是操做系统用于明确磁盘或分区上的文件的方法和数据结构;即在磁盘上组织文件的方法。 Linux中默认使用的文件系统类型

EXT4, 第4代扩展(Extended)文件系统
SWAP,交换文件系统
复制代码

Linux支持的其它文件系统类型

FAT1六、FAT3二、NTFS
XFS(高性能的日志文件系统,RHEL7默认使用的文件系统类型)、JFS(集群文件系统)
VFAT(虚拟文件分配表)
复制代码
# mkfs 建立文件系统
mkfs –t 文件系统类型 文件系统名
root@computer: ~# mkfs -t ext4 /dev/sdb5 # 在/dev/sdb5上创建一个ext4分区
复制代码

文件系统的挂载

在Linux操做系统中,整个系统只有一个根目录中,所以在Linux中使用某个磁盘空间的根目录与其中的全部文件,就必须将文件系统挂载到根文件系统的某一个目录下。

# mount 挂载文件系统、ISO镜像到指定文件夹
mount [ -t 类型] 存储设备 挂载点目录
mount -o loop ISO镜像文件  挂载点目录
user@computer: ~$ mount /dev/cdrom /mnt/cdrom  # 将/dev/cdrom挂载到/mnt/cdrom下
复制代码
# umount 卸载已挂载的文件系统
umount 存储设备位置
umount 挂载点目录
user@computer: ~$ unmount /dev/cdrom # 卸载已挂载的/dev/cdrom
复制代码

文件系统开机自动挂载

若想实现文件系统开机自动挂载,须要在/etc/fstab配置文件中进行配置

user@computer: ~$ cat /etc/fstab
LABEL=cloudimg-rootfs   /        ext4   defaults        0 0
设备位置             挂载点   文件系统类型
复制代码

逻辑卷管理

逻辑卷有关概念

Logical Volume Manager,逻辑卷管理。它是Linux环境下对磁盘分区进行管理的一种机制,屏蔽了底层磁盘布局,便于动态调整磁盘容量。须要注意:/boot分区用于存放引导文件,不能应用LVM机制

物理存储介质Physical Media:这里指系统的存储设备,硬盘或者分区,如/dev/sda5,/dev/hdb1等,是存储系统最底层的存储单元

PV(Physical Volume,物理卷):整个硬盘,或使用fdisk等工具创建的普通分区 ,包括许多默认4MB大小的PE(Physical Extent,基本单元)

VG(Volume Group,卷组):一个或多个物理卷组合而成的总体LV(Logical Volume,逻辑卷)从卷组中分割出的一块空间,用于创建文件系统

# LV,PV,PE与VG的关系
(1)物理磁盘被格式化为PV,空间被划分为一个个的PE
(2)不一样的PV加入到同一个VG中,不一样PV的PE所有进入到了VG的PE池内
(3)LV基于PE建立,大小为PE的整数倍,组成LV的PE可能来自不一样的物理磁盘
(4)LV直接能够格式化后挂载使用
(5)LV的扩充缩减实际上就是增长或减小组成该LV的PE数量,其过程不会丢失原始数据
复制代码

管理逻辑卷

建立逻辑卷

建立步骤

(1)新建空分区
(2)初始化分区(建立PV)
(3)建立卷组
(4)建立逻辑卷
复制代码
# 新建空分区
使用分区工具(fdisk)建立LVM分区,方法和建立其余通常分区的方式是同样的,须要
注意经过t命令将LVM的分区类型改成8e
# 建立物理卷
pvcreate 设备名
root@computer: ~$ pvcreate /dev/sdb5  # 将空分区/dev/sdb5建立为物理卷
# 建立卷组 卷组的名字惟一,而且不能与/dev中的文件名冲突
vgcreate –s 块大小(默认4MB) 卷组名 物理卷设备名
root@computer: ~$ vgcreate -s 8MB vg0 /dev/sdb5
# 建立逻辑卷
lvcreate -n [逻辑卷名] –L [逻辑卷大小] [已存在卷组名]
选项
    -n 指定逻辑卷卷名,从卷组中划分一块空间做为逻辑卷
    -L 指定逻辑卷的大小(若是指定逻辑卷的时候使用参数l,表示设置的逻辑卷的大
    小是以PE的块数为单位的)
root@computer: ~# lvcreate -L 200MB -n lv0 vg0 # 创建一个200MB的名字叫作lv0的逻辑空间
# 格式化逻辑卷
mkfs –t 文件系统类型 逻辑卷设备名
选项 
    –t 指定文件系统类型
root@computer: ~$ mkfs -t ext4 /dev/vg0/lv0
将其挂载后便可使用
复制代码

查看卷信息

# pvdisplay 查看物理卷
pvdisplay 设备名
root@computer ~# pvdisplay /dev/sdb1
复制代码
# vgdisplay 查看卷组
vgdisplay 卷组名
root@computer ~# vgdisplay /dev/vg0
复制代码
# lvdisplay 查看逻辑卷
lvdisplay 逻辑卷名
root@computer ~# pvdisplay /dev/vg0/lv0
复制代码

更改容量

# lvextend 扩展逻辑卷的容量大小
lvextend –L [扩展大小] [逻辑卷设备名]
root@computer ~# lvextend -L 300M /dev/vg0/lv0
复制代码
# resize2fs 扩展文件系统大小
resize2fs 逻辑卷设备名
root@computer ~# resize2fs /dev/vg0/lv0
复制代码
# lvreduce 缩小逻辑卷容量
lvreduce -L 100M 逻辑卷名
root@computer: ~# lvreduce -L 100M /dev/vg0/lv0 # 将逻辑卷/dev/vg0/lv0缩小到100M
复制代码

卸载卷

卸载卷时,须要注意两个事项

1)卸载逻辑卷前,得先卸载逻辑卷所在的目录挂载点
2)卸载卷组前,必须先卸载全部使用到该卷组的逻辑卷
复制代码
# pvremove 卸载物理卷
pvremove 物理卷名
复制代码
# vgremove 卸载卷组
vgremove 卷组名
复制代码
# lvremove 卸载逻辑卷
lvremove卷组名
复制代码
相关文章
相关标签/搜索