修改centos6&rhel6.5支持auto resize the root partition
来源:互联网 发布:吴江js华腾公寓自提柜 编辑:程序博客网 时间:2024/06/05 07:27
在用openstack创建boot from image(create new volume)的vm时,发现如果image选择centos6或者rhel6.5的话,创建出来的vm的根分区无法自动扩展到volume的大小,而是保持imgae原有的大小。后面搜了搜原因,发现是内核版本低的缘故,cloud-init在内核>3.8的情况下才起作用。于是索性自己做一个自动扩容的功能在镜像里,使得使用者不感知。
扩容这个动作在系统启动的时候只执行一次即可,所以需要先创建一个flag标志(本文使用firstrun文件作为flag),扩容脚本执行完毕后删除flag即可,达到执行一次的目的。
touch /root/firstrun
编辑firstrun.sh文件,扩容方法使用fdisk:
#!/usr/bin/env bashLOG=/root/firstrun.loglsblk>> $LOGif [ -e /root/firstrun ]then echo "$(date) auto enlarge vda1" >> $LOGfdisk /dev/vda <<ENDudnp12048pwEND rm -rf /root/firstrun lsblk>> $LOG echo "$(date) firstrun.sh finished" >> $LOG rebootfi
这里将firstrun.sh文件放在/home/目录下,是因为我发现rhel6.5不支持rc.local以root形式运行脚本,所以放在/root下不执行,centos6未测试。
将功能做在rc.local阶段,rc.local文件是系统初始化及服务启动完毕后,最后一个执行的脚本,所以在这里执行比较合适。
编辑rc.local文件:
touch /var/lock/subsys/localsleep 30;sh /home/firstrun.shLOG=/root/firstrun.logresize2fs /dev/vda1 >>$LOG 2>&1echo "$(date) rc.local finished" >> $LOG
完毕,这样使用的镜像就可以自动扩容了。
阅读全文
0 0
- 修改centos6&rhel6.5支持auto resize the root partition
- rhel6.0及centos6.0 忘记root密码解决办法
- centos6.5 修改ssh默认端口号 禁用root登录
- centos6.5 MySQL安全模式修改Root 密码
- rhel6.5 yum配置centos6.5
- Auto Resize TabContainer
- iOS button auto resize
- rhel7和centos7找回root密码 以及rhel6和centos6找回root密码
- 修改时区(RHEL6.5)
- RHEL6与RHEL7使用单用户修改root密码对比
- Linux学习笔记之RHEL6修改root密码
- CentOS6.x单用户模式修改root密码
- rhel6 配置 centos6 源
- make a view resize with the window with Cocoa Auto Layout
- RHEL6 root登陆问题
- How to extend the root partition in LVM
- centos6.5 自动root登陆
- centos6.5下如何修改MySQL默认用户root的密码
- 动态规划之最长公共子序列
- C
- 51Nod
- 你真的了解过度绘制吗?
- 使用gdb调试的一般步骤
- 修改centos6&rhel6.5支持auto resize the root partition
- 博客园博客地址
- 【区块链】Decentraland 挖矿教学
- 算法 分治 平面最近点对
- MySQL 服务安装及命令使用
- Hadoop介绍和环境配置
- Elasticsearch学习笔记1----常用查询操作
- SDUT 3333 数据结构实验之栈与队列六:下一较大值(二)
- 博客纪念