1.查看/dev/mapper
下文件
$ ls /dev/mapper
control docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69 docker-253:1-131179-pool
记下docker-253:1-131179-a835d49...这个文件的名字,这个是容器存储文件的文件名
2.使用dmsetup查看该文件扇区信息
$ dmsetup table docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69
0 20971520 thin 252:0 9
3.计算所需扇区数目,如,20G。
20*1024*1024*1024/512=41943040
4.将新的扇区大小写入,注意只是改变20971520的数字,其他数字不变
echo 0 41943040 thin 252:0 9 | dmsetup load docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69
5.将修改后的容器文件激活
dmsetup resume docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69
6.重新查看文件信息
$ dmsetup table docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69
0 41943040 thin 252:0 9
7.更改文件系统大小,使变更生效
$ resize2fs /dev/mapper/docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69
该命令在16.04下可能出现文件正在使用或者找不到超级块的错误。还未解决 PS:用xfs_growfs解决
8.停止该容器后,无法重新启动
当容器扩容之后,由于dm认为设备块大小仍然为之前设置的初始大小,所以会发生无法起启动的情况,这时只要重新操作即可。
$ docker start test#必须要先启动一下,让其生成dm文件才能修改
#此时会报错,不要理会,执行以下操作即可
$ echo 0 41943040 thin 252:0 9 | dmsetup load docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69
$ dmsetup resume docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69
版权说明
本文地址:https://www.chensj.net/?post=55
未标注转载均为本站远程,转载请注明文章出处: