阿里云linux服务器磁盘在线扩容以及扩容分区和文件系统,无损操作数据不丢失

您所在的位置:网站首页 linux磁盘分区扩容 阿里云linux服务器磁盘在线扩容以及扩容分区和文件系统,无损操作数据不丢失

阿里云linux服务器磁盘在线扩容以及扩容分区和文件系统,无损操作数据不丢失

#阿里云linux服务器磁盘在线扩容以及扩容分区和文件系统,无损操作数据不丢失| 来源: 网络整理| 查看: 265

今天公司的阿里云服务器(服务器系统为centos 7 64位)硬盘不够用了,于是选购了阿里云的在线扩容云盘服务,在线扩容后在阿里云控制台查看云盘已经从原来的100G扩容到了140G,在SSH端用fdisk -l查看硬盘/etc/vdb/也确实扩容到了140G,但是用df -h查看分区挂载大小还是原来的100G。代表还需要在服务器内部进行扩容分区和扩容文件系统,这两个步骤是必须要操作的,否则云盘还是原来的大小,没办法使用新增加的空间。

由于是centos系统,跟以前使用的Windows系统的磁盘扩容不一样,在Windows里面很简单,直接进入磁盘管理工具,进行扩展卷即可。在centos中会相对来说复杂一点点,毕竟是操作磁盘,稍有不慎,数据就会丢失,风险极大。公司的数据全部存在盘中,如果操作不慎造成数据丢失,罪孽深重啊。为了保险起见,请仔细阅读以下操作。

一、创建磁盘快照备份

由于磁盘存了100G数据,特别多而且很重要,必须在操作磁盘前进行快照备份,如果有什么闪失,还能回滚磁盘进行挽救,这个步骤是最重要的,一定不要心存侥幸。快照很简单,在阿里云后台找到对应的云盘,创建快照就好了,等创建完成了再进行操作磁盘扩容。

二、磁盘分区扩容

扩容之前我们先查看一下分区的情况:磁盘总共大小98G,已经使用98G,空闲0  此刻磁盘已经爆满了,数据特别多。

1、把原来挂载的目录卸载,我的分区是/etc/vdb/挂载在/www/目录。卸载命令如下:

umount /etc/vdb/ /www/

a、如果不知道哪个分区挂在哪个目录,可以使用df -h命令查看。

b、通常情况下,当你直接卸载,会提示 Device is busy ,这是因为磁盘里有服务在运行,所以需要先把进程都杀掉再操作,执行 fuser -m -k -v /dev/vdb1 将所有的进程都kill掉。然后再进行如上操作卸载即可。

2、使用fdisk工具删除旧分区,一般情况下不会丢失数据,按照步骤操作即可(提示:建议一定要进行第一步操作,创建快照备份数据)。

a、运行fdisk -u /dev/vdb:分区数据盘。记录下分区起始位置:2048

b、输入p:打印分区表。

c、输入d:删除分区。

d、输入p:确认分区已删除。

e、输入w:保存修改并退出。

[root@iZbp18vj2il5razqprg8dnZ /]# fdisk -u /dev/vdb Welcome to fdisk (util-linux 2.32.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/vdb: 140 GiB, 150323855360 bytes, 293601280 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 Disklabel type: dos Disk identifier: 0xdb798a36 Device Boot Start End Sectors Size Id Type /dev/vdb1 2048 209715199 209713152 100G 83 Linux Command (m for help): d Selected partition 1 Partition 1 has been deleted. Command (m for help): p Disk /dev/vdb: 140 GiB, 150323855360 bytes, 293601280 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 Disklabel type: dos Disk identifier: 0xdb798a36 Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.

3、创建新分区

a、使用fdisk命令新建分区。

b、运行fdisk -u /dev/vdb分区数据盘。

c、输入p:打印分区表。

d、输入n:新建分区。

e、输入p:选择分区类型为主分区。

f、输入:选择分区号:1。

g、输入分区起始位置(新分区的起始位置必须和旧分区的起始位置相同,结束位置必须大于旧分区的结束位置,否则会导致扩容失败。):2048,然后回车。

h、输入w:保存修改并退出。

Welcome to fdisk (util-linux 2.32.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/vdb: 140 GiB, 150323855360 bytes, 293601280 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 Disklabel type: dos Disk identifier: 0xdb798a36 Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-293601279, default 2048): 2048 Last sector, +sectors or +size{K,M,G,T,P} (2048-293601279, default 293601279): Created a new partition 1 of type 'Linux' and of size 140 GiB. Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.

4、更新内核分区表

partprobe /dev/vdb 或者 partx -u /dev/vdb1

5、运行以下命令确保分区表已经增加

lsblk /dev/vdb

6、运行以下命令再次检查文件系统,确认扩容分区后的文件系统状态

e2fsck -f /dev/vdb1 三、扩容文件系统

本磁盘的文件系统问ext4,所以依次运行以下命令调整ext4文件系统大小并重新挂载分区。

1、调整ext4文件系统大小。

resize2fs /dev/vdb1

执行后提示:Please run ‘e2fsck -f /dev/vdb’ first. 参数-f意思就是需要强制执行一下,否则执行不了。

resize2fs -f /dev/vdb

执行之后就成功扩容文件系统。

[root@iZbp18vj2il5razqprg8dnZ /]# resize2fs -f /dev/vdb resize2fs 1.45.4 (23-Sep-2019) Resizing the filesystem on /dev/vdb to 36700160 (4k) blocks. The filesystem on /dev/vdb is now 36700160 (4k) blocks long.

2、重新挂载分区到www目录

mount /dev/vdb/ /www/ [root@iZbp18vj2il5razqprg8dnZ /]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 3.7G 0 3.7G 0% /dev tmpfs 3.7G 0 3.7G 0% /dev/shm tmpfs 3.7G 516K 3.7G 1% /run tmpfs 3.7G 0 3.7G 0% /sys/fs/cgroup /dev/vda1 40G 3.3G 37G 9% / tmpfs 755M 0 755M 0% /run/user/0 /dev/vdb 138G 98G 33G 75% /www

挂载完成后,www目录大小达到138G,已使用:98G,空闲:33G,

3、查看一下是否已经设置服务器启动自动挂载

对于centos的新磁盘挂载分区格式化不清楚的朋友,可以查看之前的文章:centos6分区与格式化数据盘、挂载磁盘的方法

cat /etc/fstab

有以上红框内的信息,代表已经设置好自动挂载。如果没有的话,执行以下命令进行设置。

echo '/dev/vdb /www ext4 defaults 0 0' >> /etc/fstab

由于之前分区内有安装宝塔服务,需要在扩容挂载完成后,重新启动以下宝塔服务。其他服务也类似操作。

[root@iZbp18vj2il5razqprg8dnZ /]# service bt start Starting Bt-Panel.... done Starting Bt-Tasks... done [root@iZbp18vj2il5razqprg8dnZ /]# cat /etc/fstab

扩容完成后,检查一下磁盘数据完好,服务启动正常,大功告成。

操作到此,阿里云磁盘扩容全部完成,无损扩容磁盘,数据完好。做个简单的记录,希望能给经验不多的朋友提供一些参考。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3