起因
一开始安装虚拟机centos的时候给虚拟机分配了100G的磁盘空间,但是呢,安装的时候我自己给每一个目录单独分配了空间。其中一个目录 “/” 我分配了20G,但是后面有一次打开虚拟机的时候发现这个 “/dev/mapper/centos-root” 路径提升磁盘利用率99%,建议扩展空间。
[hi@hi~]$ df -hl
文件系统 容量 已用 可用 已用% 挂载点
...
/dev/mapper/centos-root 20G 20G 0G 99% /
...
当时觉得不可思议,明明一开始给虚拟机分配了100G,为啥提示还不够,后面才知道,这些好像是我自定义分配的大小。既然这样,只能加大空间了。
谜题破解了:是由于笔者用了docker,但是没有对docker的日志大小进行限制,导致容器的日志十几个G
# cd /var/lib/docker/containers # echo "" > xxx.log
进入到这个目录上,查看各个文件夹的大小,确定是否是由于docker的日志导致的,是的话把日志清除即可。此外还要对docker-compose.yml或者docker启动命令加上日志大小限制的命令
方法一:docker-compose.yml
---------------------------
nginx:
image: nginx:1.12.1
restart: always
logging:
driver: "json-file"
options:
max-size: "5g" max-file: "1"
---------------------------
方法二:
docker run增加如下参数,限制生成的json.log单个文件大小和保留文件个数:--log-opt max-size=100m --log-opt max-file=3
解决
1、运行 “fdisk -l” 查看一下目前的分区情况,如下,可以看到目前的最大分区是 “/dev/sda2”,一般情况下,新创建的分区默认是 “/dev/sda3”,此外,可以用的磁盘空间是 “/dev/sda”,共107.4GB
[hi@hi ~]# fdisk -l
磁盘 /dev/sda:107.4 GB, 107374182400 字节,209715200 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000aa910
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 411647 204800 83 Linux
/dev/sda2 411648 46565375 23076864 8e Linux LVM
磁盘 /dev/mapper/centos-root:20.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
2、运行 “fdisk /dev/sda”,如下,接着输入 “m” 查看菜单,"n" 创建新的分区,“p” 主分区(然后设置分区的起始,笔者这里创建一个20G的分区),“w” 保存
[hi@hi ~]# fdisk /dev/sda
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):m
命令操作
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
命令(输入 m 获取帮助):n Partition type: p primary (2 primary, 0 extended, 2 free) e extended Select (default p): p 分区号 (3,4,默认 3):回车 起始 扇区 (46565376-209715199,默认为 46565376):回车 将使用默认值 46565376 Last 扇区, +扇区 or +size{K,M,G} (46565376-209715199,默认为 209715199):+20G 分区 3 已设置为 Linux 类型,大小设为 20 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: 设备或资源忙. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) 正在同步磁盘。
3、查看分区情况,可以看到我们刚刚创建的 sda3
[hi@hi ~]# fdisk -l
磁盘 /dev/sda:107.4 GB, 107374182400 字节,209715200 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000aa910
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 411647 204800 83 Linux
/dev/sda2 411648 46565375 23076864 8e Linux LVM
/dev/sda3 46565376 88508415 20971520 83 Linux
磁盘 /dev/mapper/centos-root:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
4、重启下
5、创建逻辑卷
[hi@hi ~]# pvcreate /dev/sda3
Physical volume "/dev/sda3" successfully created
6、vgs查看vg组
[hi@hi ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 3 0 wz--n- 40.00g 4.00m
7、扩展vg
[hi@hi ~]# vgextend centos /dev/sda3
Volume group "centos" successfully extended
8、vg已经扩展了,查看lv情况
[hi@hi ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 2 3 0 wz--n- 60.00g 20.00g
[hi@hi ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home centos -wi-ao---- 10.00g
root centos -wi-ao---- 20.00g
swap centos -wi-ao---- 10.00g
9、扩展lv
[hi@hi ~]# lvextend -L +20G /dev/mapper/centos-root
Size of logical volume centos/root changed from 20.00 GiB (5120 extents) to 40.00 GiB (10240 extents).
Logical volume centos/root successfully resized.
10、lv已经扩展,查看磁盘情况
[hi@hi ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home centos -wi-ao---- 10.00g
root centos -wi-ao---- 40.00g
swap centos -wi-ao---- 10.00g
[hi@hi ~]# df -hl
文件系统 容量 已用 可用 已用% 挂载点
...
/dev/mapper/centos-root 20G 20G 0G 99% /
...
11、由于磁盘大小还每刷新,这里刷新下,再次查看,扩展成功
[hi@hi ~]# xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=1310720 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=5242880, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 5242880 to 10485760
[hi@hi ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
...
/dev/mapper/centos-root 40G 20.0G 20G 50% /
...
[hi@hi ~]#
来源:https://www.cnblogs.com/lyc94620/p/13172748.html |