Linux磁盘管理及Lvm
1. 硬盘接口
IDE:
SATA:常用;
SCSI:主要用于高端服务器,linux默认;
SAS
2. 硬盘种类
SATA硬盘:串口硬盘,有较强的纠错能力;
SCSI 硬盘:默认硬盘;
SAS 硬盘
3. 分区符
3.1 MBR:Master Boot Record,硬盘主引导记录
主引导扇区总共512字节,
组成:
1)主引导程序,boot loader,占446字节;
2)硬盘分区表,DPT,Disk Partition table,占64字节;
3)分区有效标志,55AA,magic number,占2字节。
3.2 分区
分区编号:主分区1-4;逻辑分区5…..;
主分区用来启动操作系统,存放操作系统的启动或操作系统,/boot分区最好放在主分区;
逻辑分区必须建立在扩展分区之上,扩展分区是不能使用的,它只作为逻辑分区的容器存在;
真正存放数据的是主分区和逻辑分区,逻辑分区存放着大量数据;
主分区+扩展分区最多只能有4个;扩展分区可以是0个、1个,最多1个;逻辑分区可以是0个,多个。
使用fdisk对磁盘进行操作、分区、格式化。
3.3 分区命名方式
查看硬盘:ls /dev/sd*,若没有,用partprobe刷新一下
分区命名方式:/dev/sd[a-z]n
其中:
a-z表示设备序号,如sda表示第一块scsi硬盘,sdb表示第二块scsi硬盘;
n表示每块磁盘上划分的磁盘编号。
实验:
新建一个磁盘,用查看磁盘命令查看一下新建的磁盘
4.文件系统与数据资料
文件系统:合理规划硬盘;在硬盘中执行文件建立、写入、读取、修改、转存、与控制。必须格式化文件系统才能规划数据。
常用文件系统:
Ext3:日志文件系统,可以在系统异常宕机时避免文件系统丢失,自动修复数据的不一致与错误;硬盘容量较大时修复时间较长。
Ext4:Ext3改进版,支持的存储容量高达1EB,能够有无限多的子目录,能够批量分配block块提高读写效率。
XFS:高性能日志文件系统,默认文件系统,宕机后能够快速恢复,可恢复可能破坏的文件,储存容量极高,为18EB,读写效率极高。
5. fdisk管理分区
fdisk是linux发行版本中最常用的分区工具;
格式:fdisk [选项] device
m |
查看全部可用的参数 |
t |
改变某个分区的类型 |
n |
添加新分区 |
p |
查看分区信息 |
d |
删除某个分区信息 |
w |
保存并退出 |
l |
列出所有可用的分区类型 |
q |
不保存直接退出 |
实验: 新建分区。
直接用fdisk命令更改分区
键入n,新建分区
默认设置直至指定磁盘大小为5G(前面加+号)
键入p,查看分区信息
w,保存退出,再查看新建分区
sbd1直接不可用,必须给它创建文件系统
格式: mkfs.xfs /dev/sdb1 (默认文件格式为xfs)
文件系统创建完毕,但现在还不能使用,需要将该分区挂载(mount)。创建一个目录,将sdb1挂载到该目录下,查看磁盘信息。然后再cd到/zxj,就可以在/zxj下写东西了。
格式: mount 分区 路径(挂载点)
卸载用命令umount,该命令由root执行,格式:umount 挂载点
磁盘被挂载,但写入其内的内容并没有被删除,重新挂载后又可追回。
实验:扩展分区,逻辑分区。
卸载原分区或新建分区(扩展分区为e)
逻辑分区建立在扩展分区上,在此指定扩展分区大小为10G(前面一定要有+号)
键入p查看分区
w保存,用partprobe刷新,查看分区
在扩展分区上建立逻辑分区
可以看到在扩展分区新建选项出现了逻辑分区,逻辑分区分区号从5开始:
新建逻辑分区,指定大小为3G(不能超过扩展分区大小)
w保存,查看分区
指定文件系统(格式化)
挂载/zxj,然后将逻辑分区sdb5挂载到/zxj下,查看有sdb5分区,就可以给sdb5写内容了
但挂载到zxj下的分区在系统重启后会掉,所以将磁盘命令写到文件下面,如
格式:分区 挂载点 文件类型 默认值 不备份(第一个0) 不自检(第二个0)
保存退出。
现在来检测分区的自动挂载,先将分区挂载,再使用mount -a自动检测/etc/fstab 下的所有未挂载的分区进行挂载
但写到文件/etc/fstab下系统重启起不来,写到文件/etc/rc.local下执行命令
保存退出后给予指定的执行权限
重启之后可以看到分区自动挂载上了
6. 添加交换分区
内存不够时使用交换分区,但交换分区的读写速度要比物理分区的慢,一般不用。
交换分区的大小一般为真实物理内存的1.5-2倍,交换分区既可以做主分区,又可以做逻辑分区,以大小为2G的交换分区做实验,新建交换分区保存并退出。
指定文件系统:mkswap 分区
挂载swap
Swapon
卸载swapoff
格式 :swapoff 选项
选项有:
卸载掉刚才的sdb3分区
将swap交换分区完全挂掉,加选项-a
swap写在/etc/fstab或/etc/rc.local下开机自启。
7.LVM逻辑卷管理器
7.1
管理器是linux为了解决硬盘设备在创建分区后不易修改分区大小的缺陷而对硬盘分区进行管理的一种机制,LVM是在线动态扩容,在硬盘分区和文件系统之间添加一个逻辑层,抽象一个卷组,将多块硬盘进行卷组合并,实现对硬盘分区的动态调整,LVM的技术构架:
7.2 LVM 常用术语
介质(The physical media):LVM存储介质可以是磁盘分区,整个磁盘,RAID阵列或SAN磁盘,设备必须初始化为LVM物理卷,才能与LVM结合使用;
PV(physical volume) :物理卷就是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数,创建物理卷它可以用硬盘分区,也可以用硬盘本身;
卷组VG(Volume Group) :一个LVM卷组由一个或多个物理卷组成。
逻辑卷LV(logical volume) :LV建立在VG之上,可以在LV之上建立文件系统。
PE(physical extents) :PV物理卷中可以分配的最小存储单元,PE的大小是可以指定的,默认为4MB。
LE(logical extent) : lV逻辑卷中可以分配的最小存储单元,在同一个卷组中,LE的大小和PE是相同的,并且一一对应
7.3 部署逻辑卷
常用LVM部署命令:
功能/命令 |
物理卷管理 |
卷组管理 |
逻辑卷管理 |
扫描 |
pvscan |
vgsan |
lvscan |
建立 |
pvcreate |
vgcreate |
lvcreate |
显示 |
pvdisplay |
vgdisplay |
lvdisplay |
删除 |
pvremove |
vgremove |
lvremove |
扩展 |
vgextend |
lvextend |
|
缩小 |
vgreduce |
lvreduce |
步骤:
先添加两块磁盘用作实验,重启系统后查看磁盘
让两块硬盘支持LVM技术,将两磁盘创建为物理卷
创建卷组 :vgcreate 卷组名 路径
查看卷组信息
创建逻辑卷:需要注意切割单位的问题。在对逻辑卷进行切割时有两种计量单位,第一种是以容量为单位,所使用的参数为-L。例如,使用 -L 50M生成一个大小为150MB的逻辑卷。另外一种是以基本单元的个数为单位,所使用的参数为-l。每个基本单元的大小默认为4MB。例如,使用-l 37可以生成一个大小为37×4MB=148MB的逻辑卷。-n 表示指定逻辑卷名。
[root@wrl zxj]# lvcreate -n lv_zxj -L 100M vg_zxj logical volume "lv_zxj" created.
-n lv_zxj:指定逻辑卷名;vg_zxj:逻辑卷是从卷组vg_zxj分割出100M大小。
逻辑卷格式化文件系统:
/dev/vg_zxj/lv_zxj:逻辑卷在卷组下
挂载使用:将逻辑卷组挂载到新建的/zxj目录下,并查看卷组
写在/etc/fstab或/etc/rc.local下开机自启。
[zxj@localhost ~]$ su Password: [root@localhost zxj]# ls /dev/sd* #查看磁盘 /dev/sda /dev/sda2 /dev/sdb /dev/sdd /dev/sda1 /dev/sda3 /dev/sdc /dev/sde [root@localhost zxj]# pvcreate /dev/sd{b,c} #创建物理卷Physical volume "/dev/sdb" successfully created.Physical volume "/dev/sdc" successfully created. [root@localhost zxj]# vgcreate vg_zxj /dev/sd{b,c} #创建卷组Volume group "vg_zxj" successfully created [root@localhost zxj]# vgdisplay vg_zxj #查看卷组 --- Volume group ---VG Name vg_zxjSystem iD Format lvm2Metadata areas 2Metadata Sequence No 1VG access read/writeVG Status resizableMaX lV 0Cur lV 0Open lV 0Max PV 0Cur PV 2act PV 2VG Size 39.99 GiBPE Size 4.00 MiBTotal PE 10238alloc PE / Size 0 / 0 Free PE / Size 10238 / 39.99 GiBVG UUiD owjXWk-QJ3q-dEjQ-gfaX-5Oin-1dOY-zeiVaR [root@localhost zxj]# lvcreate -n lv_zxj -L 500M vg_zxj #创建逻辑卷logical volume "lv_zxj" created. [root@localhost zxj]# mkfs.xfs /dev/vg_zxj/lv_zxj #格式化文件系统 meta-data=/dev/vg_zxj/lv_zxj isize=512 agcount=4, agsize=32000 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=128000, imaxpct=25= sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=855, version=2= sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@localhost zxj]# mkdir /zxj #新建挂载点 [root@localhost zxj]# mount /dev/vg_zxj/lv_zxj /zxj #挂载逻辑卷 [root@localhost zxj]# df -h /dev/mapper/vg_zxj-lv_zxj 497M 26M 472M 6% /zxj [root@localhost zxj]# echo "dev/vg_zxj/lv_zxj xfs defaults 0 0 ">> /etc/fstab #写到文件下,开机自动挂载 [root@localhost zxj]# echo "mount /dev/vg_zxj/lv_zxj /zxj">> /etc/rc.local #写到文件下,开机自动挂载
8. linux扩容逻辑卷Ext4格式
步骤:
创建ext4格式逻辑卷: [root@localhost zxj]# lvcreate -l 500M -n ext4_zxj vg_zxj #逻辑卷大小为500Mlogical volume "ext4_zxj" created. [root@localhost zxj]#0 mkfs.ext4 /dev/vg_zxj/ext4_zxj #格式化文件系统为ext4 [root@localhost zxj]# mkdir /zxj2 [root@localhost zxj]# mount /dev/vg_zxj/ext4_zxj /zxj2 #挂载 [root@localhost zxj]# df -h /dev/mapper/vg_zxj-ext4_zxj 477M 2.3M 445M 1% /zxj2 卸载: [root@localhost zxj]# umount /zxj2扩容: [root@localhost zxj]# lvextend -l 700M /dev/vg_zxj/ext4_zxj #外层扩容Size of logical volume vg_zxj/ext4_zxj changed from 500.00 MiB (125 extents) to 700.00 MiB (175 extents).logical volume vg_zxj/ext4_zxj successfully resized. [root@localhost zxj]# resize2fs -f /dev/vg_zxj/ext4_zxj #内层缩容 resize2fs 1.42.9 (28-Dec-2013) Resizing the filesystem on /dev/vg_zxj/ext4_zxj to 716800 (1k) blocks. The filesystem on /dev/vg_zxj/ext4_zxj is now 716800 blocks long. [root@localhost zxj]# e2fsck -f /dev/vg_zxj/ext4_zxj #查看磁盘完整性 e2fsck 1.42.9 (28-Dec-2013) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/vg_zxj/ext4_zxj: 11/178816 files (0.0% non-contiguous), 33345/716800 blocks [root@localhost zxj]# mount /dev/vg_zxj/ext4_zxj /zxj2 #挂载 3[root@localhost zxj]# df -h #查看 /dev/mapper/vg_zxj-ext4_zxj 670M 2.5M 629M 1% /zxj2 #扩容到700M
9. linux缩小逻辑卷
[root@localhost zxj]# umount /zxj2 #保证数据安全,卸载 [root@localhost zxj]# e2fsck -f /dev/vg_zxj/ext4_zxj #查看系统柜完整性 [root@localhost zxj]# resize2fs /dev/vg_zxj/ext4_zxj 200M #内层大小重置 resize2fs 1.42.9 (28-Dec-2013) Resizing the filesystem on /dev/vg_zxj/ext4_zxj to 204800 (1k) blocks. The filesystem on /dev/vg_zxj/ext4_zxj is now 204800 blocks long. [root@localhost zxj]# lvreduce -l 200M /dev/vg_zxj/ext4_zxj #逻辑卷外层缩容 WaRNiNG: Reducing active logical volume to 200.00 MiB.THiS MaY DESTROY YOUR DaTa (filesystem etc.) Do you really want to reduce vg_zxj/ext4_zxj? [y/n]: ySize of logical volume vg_zxj/ext4_zxj changed from 700.00 MiB (175 extents) to 200.00 MiB (50 extents).logical volume vg_zxj/ext4_zxj successfully resized. [root@localhost zxj]# mount /dev/vg_zxj/ext4_zxj /zxj2 #挂载 [root@localhost zxj]# df -h /dev/mapper/vg_zxj-ext4_zxj 186M 1.6M 171M 1% /zxj2 #缩容到200M
10 linux扩容逻辑卷xfs格式
xfs格式只能扩容,不能减小;
xfs格式无需卸载,支持在线扩容。
步骤:
[root@localhost zxj]# pvcreate /dev/sd{b,c} #创建物理卷 Physical volume "/dev/sdb" successfully created. Physical volume "/dev/sdc" successfully created. [root@localhost zxj]# vgcreate vg_zxj /dev/sd{b,c} #创建卷组Volume group "vg_zxj" successfully created [root@localhost zxj]# lvcreate -n lv_zxj -L 500M vg_zxj #创建逻辑卷 WARNING: xfs signature detected on /dev/vg_zxj/lv_zxj at offset 0. Wipe it? [y/n]: yWiping xfs signature on /dev/vg_zxj/lv_zxj.logical volume "lv_zxj" created. [root@localhost zxj]# mkfs.xfs /dev/vg_zxj/lv_zxj #格式化文件系统 [root@localhost zxj]# mkdir /zxj mkdir: cannot create directory ‘/zxj’: File exists [root@localhost zxj]# mount /dev/vg_zxj/lv_zxj /zxj #挂载 [root@localhost zxj]# df -h /dev/mapper/vg_zxj-lv_zxj 497M 26M 472M 6% /zxj [root@localhost zxj]# lvextend –L 700M /dev/vg_zxj/lv_zxj #逻辑卷扩展Size of logical volume vg_zxj/lv_zxj changed from 500.00 MiB (125 extents) to 700.00 MiB (175 extents).logical volume vg_zxj/lv_zxj successfully resized. [root@localhostzxj]#xfs_growfs /dev/vg_zxj/lv_zxj #在线扩容 meta-data=/dev/mapper/vg_zxj-lv_zxj isize=512 agcount=4, agsize=32000 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=128000, imaxpct=25= sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=855, version=2= sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 128000 to 179200 [root@localhost zxj]# df -h #查看卷组,成功扩容 /dev/mapper/vg_zxj-lv_zxj 697M 26M 672M 4% /zxj
11. linux删除逻辑卷
步骤:
[root@localhost zxj]# umount /zxj2 #卸载 [root@localhost zxj]# lvremove /dev/vg_zxj/ext4_zxj #删除逻辑卷 Do you really want to remove active logical volume vg_zxj/ext4_zxj? [y/n]: ylogical volume "ext4_zxj" successfully removed [root@localhost zxj]# vgremove vg_zxj #删除卷组 Do you really want to remove volume group "vg_zxj" containing 1 logical volumes? [y/n]: y Do you really want to remove active logical volume vg_zxj/lv_zxj? [y/n]: ylogical volume "lv_zxj" successfully removedVolume group "vg_zxj" successfully removed [root@localhost zxj]# pvremove /dev/sd{b,c} #删除物理卷labels on physical volume "/dev/sdb" successfully wiped.labels on physical volume "/dev/sdc" successfully wiped.
转载于:https://www.cnblogs.com/ajunyu/p/10878424.html
Linux磁盘管理及Lvm相关推荐
- Linux磁盘突然少了2个g,linux磁盘管理:LVM的基本概念与创建、扩展、缩减、删除...
编辑于2015--08--29 一.LVM的磁盘管理 LVM(Logical volume Manager)是逻辑卷管理的简称.它是Linux环境下对磁盘分区进行管理的一种机制. LVM的工作原理其实 ...
- Linux磁盘管理之LVM与快照
引言: 逻辑卷管理LVM是硬盘的⼀个系统⼯具.⽆论在Linux或者其他类似的系统,都是⾮常的好⽤.传统分区使⽤固定⼤⼩分区,重新调整⼤⼩⼗分麻烦.但是,LVM可以创建和管理"逻辑" ...
- linux磁盘管理不用LVM,[linux] LVM磁盘管理(针对xfs和ext4不同文件系统)
简单来说就是: PV:是物理的磁盘分区 VG:LVM中的物理的磁盘分区,也就是PV,必须加入VG,可以将VG理解为一个仓库或者是几个大的硬盘 LV:也就是从VG中划分的逻辑分区 如下图所示PV.VG. ...
- Linux磁盘管理:LVM逻辑卷的拉伸及缩减
①查看当前VG的信息,保证VG中有足够的空闲空间 通过 vgdisplay 或者 vgs 命令 [root@rusky ~]# vgs rusky-vg VG #PV #LV #SN Attr VSi ...
- linux 磁盘管理3板斧,Linux 磁盘管理的命令
Linux 磁盘管理 磁盘分区及挂载: 先查询系统的使用情况: 使用fdisk -l语句 查询结果: 进行磁盘的新建:***添加磁盘时系统必须处于关机状态** 在进行对系统磁盘的使用情况的查询 查 ...
- linux磁盘扩空间,Linux磁盘空间扩容(LVM)
Linux磁盘空间扩容(lvm) 随着系统的运行时间增长,业务数据的增长,原有磁盘的空间会存在空间不足情况,导致系统不能正常运行,或者系统管理员磁盘没有完全划完,根据使用者的需求自行划分.那么怎么才能 ...
- linux磁盘管理命令 lv,Linux磁盘管理--LVM原理及基本操作
LVM(Logical Volume Manager)逻辑卷管理是Linux磁盘管理中的常用操作, 本文主要描述LVM的基本原理以及对LVM的扩展和缩减的基本操作. LVM实质是过软件方式将多个物理分 ...
- Linux磁盘管理——df、du、磁盘分区、格式化、挂载、LVM
2019独角兽企业重金招聘Python工程师标准>>> Linux磁盘管理 一. df命令 df命令参数功能:检查文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间 ...
- linux磁盘管理系列三:LVM的使用
2019独角兽企业重金招聘Python工程师标准>>> linux磁盘管理系列三:LVM的使用 LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的L ...
- Linux下的磁盘管理之LVM详解及lvm的常用磁盘操作命令
目录 一.LVM的基本组成 1.物理卷 (PV,Physical Volume) 2.卷组 (VG,Volume Group) 3.逻辑卷 (LV,Logical Volume) 4.物理块 (PE, ...
最新文章
- 金星可能存在生命?科学家发现大气中有磷化氢,剧毒气体或是生物代谢产物...
- DGA短域名(360样本) mark下 下次分析可以参考
- 在moss页面出错时,显示详细的错误信息.
- AS插件-Android Drawable Importer
- 2021-08-25路演的反馈
- lstm 变长序列_keras在构建LSTM模型时对变长序列的处理操作
- 正序 逆序写 java_C語言版和JAVA版 把一個字節正序(高位在前)轉為逆序(低位在前) 和 逆序轉為正序...
- 深入理解ElasticSearch(八):索引管理
- 判断素数的java程序_Java代码实例 判断这个数是否是素数
- 3.Shell 编程从入门到精通 --- 编程基础的基本元素
- WPS表格乘的结果和计算机的不一样,同版本wps两个电脑显示不一样怎么办
- 工作,究竟意味着什么
- Oracle11g64位安装步骤
- 1132: 数字字符统计
- Android下操作FrameBuffer
- 安卓模拟器,需要的自取
- 替换mysql数据库_mysql数据库的替换
- P2973 [USACO10HOL]赶小猪
- 联想绿色驱动,绿色时钟屏保Fliqlo,强力卸载工具HiBit Uninstaller 便携绿色版
- 解决连接ORACLE错误:ORA-01033: ORACLE 正在初始化或关闭
热门文章
- sas 安装后处理出错
- solidity 0.5.7简明教程
- stata15中文乱码_如何解决 Stata 14 的中文乱码问题?Chinese support in Stata 14
- 强烈推荐一本MYSQL入门及复习的好书
- Ubuntu解决火狐浏览器无法同步书签的问题
- VS2012 正式版BUG太多
- GJB 5000B-2021下载-见文章结尾
- Axure团队项目之Axure share与 SVN
- 异常详细信息: System.ComponentModel.Win32Exception: 信号灯超时时间已到
- 【从零开始学架构-李运华】08|架构设计三原则