阿里云linux数据磁盘扩容过程中经历的大问题

1. mount 查看当前系统所有分区挂载情况,包括分区类型

/dev/vda1 on / type ext4 (rw,errors=remount-ro)

/dev/vdb1 on /sda type ext4 (rw)

2. fdisk -l 显示分区信息

Disk /dev/vda: 53.7 GB, 53687091200 bytes

Disk identifier: 0x000da36d

Device Boot      Start        End      Blocks  Id  System

/dev/vda1  *        2048  104855551    52426752  83  Linux


Disk /dev/vdb: 322.1 GB, 322122547200 bytes

Disk identifier: 0x000da36d

Device Boot      Start        End      Blocks  Id  System

/dev/vdb1            2048  629145599  314571776  83  Linux

3. df -h 显示各分区磁盘空间使用情况:

Filesystem      Size  Used Avail Use% Mounted on

/dev/vda1        50G  6.0G  41G  13% /

/dev/vdb1      296G  272G  8.7G  97% /sda

4.  fdisk /dev/vdb1 对准备操作的磁盘进行预查看,出现以下报警信息:

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

Building a new DOS disklabel with disk identifier 0x744ad656.

Changes will remain in memory only, until you decide to write them.

After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

5. 如何解决上述问题?

快到了十一点我才发现上面就是个逗逼的提示信息!!

妈蛋,面临着mongodb数据盘空间不足的紧要关头,生怕被上面的提示信息一鼓捣,我的服务器从此失去mongo日志了!

紧张了一上午,才反应过来就是个逗逼的提示信息,吓得我半死!!

补充: 重启ecs实例后,准备扩容磁盘。结果发现又走到老路上了: fdisk /dev/vdb1。我干嘛老喜欢加上vdb1呢?这又导致我怎么创建新分区都是以前一样的大小。我都差点儿要给阿里云打电话了!!

还好,终于试着敲了一次 fdisk /dev/vdb ,然后 d , n , p ,1 开始扩容。

现在运行 resize2fs /dev/vdb1 ,结果提示必须运行 e2fsck -f /dev/vdb1 (就是怕因为300G的日志导致这一过程),所以担惊受怕地敲了下去。最后resize2fs /dev/vdb1,然后df发现一起大好。

补充: 详细过程为: fdisk /dev/vdb 然后输入(d,n,p,1),然后两次回车,最后(wq)保存,这样就创建了一个新分区并且使用了最大的磁盘容量。fdisk -l 查看一下。然后e2fsck -f /dev/vdb1,完成后使用 resize2fs /dev/vdb1。再次 fdisk -l 查看,然后 mount /dev/vdb1 /sda,df -h 看到新的扩容后的数据盘变大了!

6. click server 系统自启动redis server有问题, ../init.d/redis-server 有问题? 我必须执行 redis-server /etc/redis/redis.conf 才可以确保使用了配置文件,否则没有使用配置文件.

怀疑如下命令正确与否:

if start-stop-daemon --start --quiet --umask 007 --pidfile $PIDFILE --chuid redis:redis --exec $DAEMON -- $DAEMON_ARGS

7. mongodb 关闭应该自己手动调用命令或者下述别名关闭,确保数据不丢失。而不是让系统去关闭。

alias mongostop='mongo admin --eval "db.shutdownServer()"'

8. jms 服务器关闭可以在jms admin输入shutdown关闭。

你可能感兴趣的:(阿里云linux数据磁盘扩容过程中经历的大问题)