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关闭。