linux磁盘管理增加,扩容
一、磁盘空间不足,添加新的磁盘
一般来说,当我们在服务上插入新的磁盘时,服务器是会对磁盘进行识别的。但是,有的时候服务器并没有对这些新插入的磁盘进行识别。这时,我们可以通过重启服务器,来使服务器重新加载硬盘。
在生产环境中我们的服务器上都存在着重要的服务,并不可以对服务器进行重启。下面介绍的就是无需重启服务器,使其识别新磁盘的方法。
解决方法:
fdisk -l
添加了新磁盘并没有发现两种方法(一重启,二重新识别)
一、查看磁盘大小
lsblk 查看的是block device,也就是逻辑磁盘大小。
df查看的是file system, 也就是文件系统层的磁盘大小。
二、查看主机总线号
ls /sys/class/scsi_host/
三、重新扫描SCSI总线添加设备
echo "- - -" > /sys/class/scsi_host/host0/scan
echo "- - -" > /sys/class/scsi_host/host1/scan
echo "- - -" > /sys/class/scsi_host/host2/scan
注意,如果扫描这三个文件不成,就全部扫描一遍
cat /usr/local/src/test.sh
#!/usr/bin/bash scsisum=`ll /sys/class/scsi_host/host*|wc -l` for ((i=;i<${scsisum};i++))
do
echo "- - -" > /sys/class/scsi_host/host${i}/scan
done #echo "- - -" > /sys/class/scsi_host/host0/scan 这三个值代表通道,SCSI目标ID和LUN。破折号充当通配符,意思是“重新扫描一切”
四、查看磁盘是否扫描出来
fdisk -l
对新磁盘进行格式化:
1、对新磁盘进行分区(根据实际需求)
fdisk /dev/sdb
fdisk命令参数介绍
p、打印分区表。
n、新建一个新分区。
d、删除一个分区。
q、退出不保存。
w、把分区写进分区表,保存并退出。
2、再查看磁盘个数与分区情况
3、通知内存磁盘分区变化
不通知内核,有可能无法格式化操作 partprobe /dev/sdb
4、格式化分区(根据系统和实际情况格式化成自己想要的文件系统)
5、创建挂载目录
mkdir /test
6、挂载分区指定目录,并创建开机自动挂载
1、挂载分区
mount /dev/sdb1 /test
2、创建开机自动挂载
- 可以通过磁盘分区名挂载
- vi /etc/fstab
1.可以通过磁盘分区名挂载
2. 也可以通过uuid进行挂载
查看磁盘的uuid
blkid
挂载
一、/etc/fstab文件的作用 磁盘被手动挂载之后都必须把挂载信息写入/etc/fstab这个文件中,否则下次开机启动时仍然需要重新挂载。 系统开机时会主动读取/etc/fstab这个文件中的内容,根据文件里面的配置挂载磁盘。这样我们只需要将磁盘的挂载信息写入这个文件中我们就不需要每次开机启动之后手动进行挂载了。 二、挂载的限制 在说明这个文件的作用之前我想先强调一下挂载的限制。 、根目录是必须挂载的,而且一定要先于其他mount point被挂载。因为mount是所有目录的跟目录,其他木有都是由根目录 /衍生出来的。 、挂载点必须是已经存在的目录。 、挂载点的指定可以任意,但必须遵守必要的系统目录架构原则 、所有挂载点在同一时间只能被挂载一次 、所有分区在同一时间只能挂在一次 、若进行卸载,必须将工作目录退出挂载点(及其子目录)之外。
使用设备名和label及uuid作为标识的不同
使用设备名称(/dev/sda)来挂载分区时是被固定死的,一旦磁盘的插槽顺序发生了变化,就会出现名称不对应的问题。因为这个名称是会改变的。
不过使用label挂载就不用担心插槽顺序方面的问题。不过要随时注意你的Label name。至于UUID,每个分区被格式化以后都会有一个UUID作为唯一的标识号。使用uuid挂载的话就不用担心会发生错乱的问题了。
第二列:Mount point:设备的挂载点,就是你要挂载到哪个目录下。
第三列:filesystem:磁盘文件系统的格式,包括ext2、ext3、ext4、reiserfs、nfs、vfat等
第四列:parameters:文件系统的参数
第五列:能否被dump备份命令作用:dump是一个用来作为备份的命令。通常这个参数的值为0或者1
第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整(clean)。
二、扩充根分区
根分区使用率超过预警值,经排查删除了无用数据,但使用率依然居高不下,于是决定扩充根分区。
一、查看目前的使用情况
[root@localhost Desktop]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 50G .4G 47G % /
devtmpfs 902M 902M % /dev
tmpfs 917M 144K 917M % /dev/shm
tmpfs 917M 9.0M 908M % /run
tmpfs 917M 917M % /sys/fs/cgroup
/dev/mapper/centos-home 48G 33M 48G % /home
/dev/sda1 497M 158M 340M % /boot
tmpfs 184M 12K 184M % /run/user/
/dev/mapper/centos-root 大小50G我们增大3G
二、添加新的磁盘,分区格式化
根据环境不同,自行添加新的磁盘
1、添加完后,查看磁盘情况
[root@localhost Desktop]# fdisk -l Disk /dev/sda: 107.4 GB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes
Disk label type: dos
Disk identifier: 0x0005efd6 Device Boot Start End Blocks Id System
/dev/sda1 * Linux
/dev/sda2 8e Linux LVM Disk /dev/mapper/centos-root: 53.7 GB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes Disk /dev/mapper/centos-swap: MB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes Disk /dev/mapper/centos-home: 50.9 GB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xf0480a7c Device Boot Start End Blocks Id System
可以看到新添加的磁盘/dev/sdb
2、对磁盘进行分区
fdisk /dev/sdb fdisk的交互模式,依次输入
n --创建新分区
p --创建主分区
<回车> --默认分区编号
<回车> --默认起始扇区位置。
<回车> --默认结束扇区位置。
t --设置分区类型
8e 类型为LVM
w --写入分区表
3、再查看磁盘情况
[root@localhost Desktop]# fdisk -l /dev/sdb Disk /dev/sdb: 21.5 GB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes
Disk label type: dos
Disk identifier: 0xf0480a7c Device Boot Start End Blocks Id System
/dev/sdb1 8e Linux LVM
三、扩充根分区:将新分区扩展/root
1、查看卷分组
[root@localhost Desktop]# vgdisplay -v ##找到centos
Using volume group(s) on command line.
--- Volume group ---
VG Name centos
System ID
Format lvm2
Metadata Areas
Metadata Sequence No
VG Access read/write
VG Status resizable
MAX LV
Cur LV
Open LV
Max PV
Cur PV
Act PV
VG Size 99.51 GiB
PE Size 4.00 MiB
Total PE
Alloc PE / Size / 99.45 GiB
Free PE / Size / 64.00 MiB
VG UUID eajt4v-Jdef-HZmX-U6AL-kOTp-lc1w-nHXcBe
2、为新增的分区创建物理卷
[root@localhost Desktop]# pvcreate /dev/sdb1
##提示是否擦除xfs签名,可以根据实际情况选择
WARNING: ext4 signature detected on /dev/sdb1 at offset . Wipe it? [y/n]: y
Wiping ext4 signature on /dev/sdb1.
Physical volume "/dev/sdb1" successfully created
3、查看结果
[root@localhost Desktop]# pvdisplay /dev/sdb1
##可以看到新创建的20GiB大小的物理卷:
"/dev/sdb1" is a new physical volume of "20.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdb1
VG Name
PV Size 20.00 GiB
Allocatable NO
PE Size
Total PE
Free PE
Allocated PE
PV UUID JSpfvR-zsge-XRVU-CRT2-ubec-LcmO-oZtxmD
4、扩展卷分组,"centos"是vgdisplay命令查到的卷分组名
[root@localhost Desktop]# vgextend centos /dev/sdb1
Volume group "centos" successfully extended
5、查看逻辑卷,并扩展逻辑卷
lvdisplay 可以看到/dev/centos/root目前的LV Size是50G。
[root@localhost Desktop]# lvextend -L +3G /dev/centos/root
Size of logical volume centos/root changed from 50.00 GiB (12800 extents) to 53.00 GiB (13568 extents).
Logical volume root successfully resized.
注:+3G是我们要新增加的分区大小。
6、扩展后执行
[root@localhost Desktop]# xfs_growfs /dev/centos/root
meta-data=/dev/mapper/centos-root isize= agcount=, agsize= blks
= sectsz= attr=, projid32bit=
= crc= finobt=
data = bsize= blocks=, imaxpct=
= sunit= swidth= blks
naming =version bsize= ascii-ci= ftype=
log =internal bsize= blocks=, version=
= sectsz= sunit= blks, lazy-count=
realtime =none extsz= blocks=, rtextents=
data blocks changed from to
将文件系统扩大,完成。 因为安装CentOS用的xfs分区,所以使用命令xfs_growfs扩展文件系统大小。xfs_growfs 同步文件系统
tips:此处有区别:centos6.x 和centos7.x的区别
resize2fs /dev/mapper/cl00-root #centos6.x调整分区命令
xfs_growfs /dev/mapper/cl00-root #centos7.x调整分区命令
7、查看结果
[root@localhost Desktop]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 53G .4G 50G % /
devtmpfs devtmpfs 902M 902M % /dev
tmpfs tmpfs 917M 144K 917M % /dev/shm
tmpfs tmpfs 917M 9.0M 908M % /run
tmpfs tmpfs 917M 917M % /sys/fs/cgroup
/dev/mapper/centos-home xfs 48G 33M 48G % /home
/dev/sda1 xfs 497M 158M 340M % /boot
tmpfs tmpfs 184M 12K 184M % /run/user/
/已经扩充到53GiB
8、创建PV,扩容VG,LV
pvcreate /dev/hda6 vgdisplay #查看当前已经存在的VG信息,以存在VG:VolGroup00为例 vgextend VolGroup00 /dev/hda6 #扩展VolGroup00 lvdisplay #查看已经存在的LV信息,以存在LV:LogVol01为例 lvextend –L 1G /dev/VolGroup00/LogVol01 #扩展LV resize2fs /dev/VolGroup00/LogVol01 #执行该重设大小,对于当前正在使用的LogVol01有效 df –h #查看挂载情况,已经扩容
四、疑难解决
、扩充逻辑卷报错
执行lvextend -L +20G /dev/centos/root,报错 Insufficient free space: extents needed, but only available 、解决如下
执行pvdisplay可以看到可用的PE数量是5119,而每个PE大小是4.00MiB,所以其实这个卷组实际的可用空间其实不是20G,而是19.99G。
五、补充知识
/dev/mapper/VolGroup00-LogVol00
这行的意思是,你有一个VG (volume group卷组)叫作VolGroup00, 这个VolGroup00里面有一个LV(logical volume 逻辑卷)叫作LogVol00 其实这个/dev/mapper/VolGroup00-LogVol00 文件是一个连接文件,是连接到/dev/dm-0的,你可以用ll /dev/mapper/VolGroup00-LogVol0 查看,你就当VolGroup00-LogVol00是一个分区来对待就可以了.
在你的系统里,/dev/VolGroup00/LogVol00 和 /dev/mapper/VolGroup00-LogVol00 和/dev/dm- 是一个东西,都当作一个分区来对待就好. 1.如果你想查看两个硬盘在哪,你可以用pvdisplay来查看,两个硬盘做为PV(physical volume 物理卷)的身份加进了VG里,所以你是找不到
硬盘的,因为它们已经加进了VG里,可以把VG当作一个资源池来对待,把所有的存储空间加到池里,然后你想要多大的空间,就从池里划出来就可以了.
2.比如两个1T的硬盘,加进了池里,池里的空间就是2T,你就可以建一个1T以上的空间出来,不会像以前那种,最大只能是1T(因为硬盘就是1T的)。
来自:
https://www.cnblogs.com/happy-king/p/9070496.html 磁盘空间不足,添加新的磁盘,扩充根分区
http://www.cnblogs.com/qiyebao/p/4484047.html Linux命令-自动挂载文件/etc/fstab功能详解
https://blog.csdn.net/GX_1_11_real/article/details/82024550 Linux服务器添加新硬盘无法识别解决方法(无需重启)
linux磁盘管理增加,扩容的更多相关文章
- df、du、fdisk:Linux磁盘管理三板斧的使用心得(转载)
From:http://os.51cto.com/art/201012/240726_all.htm 作者介绍:李洋(博客),博士毕业于中科院计算所.10多年来一直从事计算机网络信息安全研发工作,曾主 ...
- linux磁盘管理系列-LVM的使用
LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...
- linux磁盘管理系列三:LVM的使用
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
- df、du、fdisk:Linux磁盘管理
磁盘是Linux系统中一项非常重要的资源,如何对其进行有效的管理直接关系到整个系统的性能问题.对Linux磁盘管理稍微有一些学习和经验的朋 友们应该都知道df.du和fdisk这三个常用命令:df用于 ...
- Linux学习之十九-Linux磁盘管理
Linux磁盘管理 1.相关知识 磁盘,是计算机硬件中不可或缺的部分磁盘,是计算机的外部存储器中类似磁带的装置,将圆形的磁性盘片装在一个方的密封盒子里,这样做的目的是为了防止磁盘表面划伤,导致数据丢失 ...
- 【转载】Linux磁盘管理:LVM逻辑卷管理
Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理 这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!! 一. ...
- 【Linux开发】Linux磁盘管理
第八章 Linux磁盘管理 [查看磁盘或者目录的容量 df 和 du] df 查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的:df常用参数有 –i -h -k ...
- Linux 磁盘管理
Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...
- linux 磁盘管理学习笔记
磁盘管理命令:fdisk df du fdisk #查看硬盘分区表 df #查看分区使用情况 du #查看文件占用空间情况lvdisplay #逻辑分区 [1] 李洋.df.du.fdisk:Linu ...
随机推荐
- You just run!
第一篇博客,无关技术,有关身体. 写一篇跑步干货 装备篇 用过的鞋: 光脚,拖鞋,人字拖,回力板鞋,皮鞋,特步,鸿星尔克,李宁超轻13,ASICS gt2000,阿迪低端. 1,非常推荐攒钱买一双a ...
- 学习C++后感
c++是一门系统级语言,记得大一是要学习这门课时还上网找过学习方法.但网上很多学习方法看的我都头晕,都说学习C++很难,有的说学C++前最好先学C语言,有的说学C++最好不要学C语言,当翻了C++课本 ...
- Web browser发展演变
浏览器是指可以显示网页服务器或者文件系统的HTML文件内容,并让用户与这些文件交互的一种软件.网页浏览器主要通过HTTP协议与网页服务器交互并获取网页,这些网页由URL指定,文件格式通常为HTML.大 ...
- war和war exploded区别
war和war exploded区别 在使用IDEA开发项目的时候,部署Tomcat的时候通常会出现下边的情况: 是选择war还是war exploded 这里首先看一下他们两个的区别: war模式: ...
- Flume 示例
1.Syslog Tcp Source sysylog通过配置一个端口,flume能够监控这个端口的数据.如果通往这个端口发送数据可以被flume接收到.可以通过socket发送. #配置文件:sys ...
- 《响应式Web设计实践》学习笔记
原书: 响应式Web设计实践 目录: 第2章 流动布局 1. 布局选项 2. 字体大小 3. 网格布局 4. 混合固定宽度和流动宽度 第3章 媒介查询 1. 视口 2. 媒介查询结构 3. 内嵌样式与 ...
- 【高速接口-RapidIO】6、Xilinx RapidIO核仿真与包时序分析
提示:本文的所有图片如果不清晰,请在浏览器的新建标签中打开或保存到本地打开 一.软件平台与硬件平台 软件平台: 操作系统:Windows 8.1 64-bit 开发套件:Vivado2015.4.2 ...
- 一篇入门 -- Scala 反射
本篇文章主要让大家理解什么是Scala的反射, 以及反射的分类, 反射的一些术语概念和一些简单的反射例子. 什么是反射 我们知道, Scala是基于JVM的语言, Scala编译器会将Scala代码编 ...
- 设置HttponlyCookie解决mshtml编程无法获取验证码图片流
最近给客户做的项目有一个新需求,客户需要在打开的IE浏览器中做自动登录,登录的页面上有神兽验证码.解决验证码的方案是找第三方平台打码.这样就有一个问题,如何把正确的验证码传给第三方打码平台. 大家都知 ...
- 白话TCP为什么需要进行三次握手
阅读本文大概需要 2.3 分钟. 作者:雨林 https://www.cnblogs.com/yuilin 首先简单介绍一下TCP三次握手 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次 ...