通过脚本自动化完成初始化磁盘的操作,包括磁盘分区和挂载指定目录。以下操作步骤仅支持初始化一个数据盘,以centos 6.6为例。其他操作系统配置方法略有区别,请参考对应操作系统的相关资料进行操作,文档中不对此进行详细说明。
具体操作步骤如下:
1. 以root用户登录已有云主机;
2. 执行以下命令,进入脚本存放目录。
cd /脚本目录
例如:
cd /home
3. 执行以下命令,创建并编辑脚本。
vi 脚本名称
例如:
vi fdisk_mount.sh
以下脚本为云主机只有一个数据盘时的自动初始化,仅供参考,请用户根据实际情况修改。
#!/bin/bash
bash_scripts_name=fdisk_mount.sh ini_path=/home/fdisk.ini
disk=
size=
mount=
partition=
function get_disk_from_ini()
{
disk=`cat $ini_path|grep disk| awk -F '=' '{print $2}'`
if [ $disk = "" ]
then
echo "disk is null in file,exit"
exit
fi
result=`fdisk -l $disk | grep $disk`
if [ $result = 1 ]
then
echo "disk path is not exist in linux,exit"
exit
fi
}
function get_size()
{
size=`cat $ini_path| grep size|awk -F '=' '{print $2}'`
if [ $size = "" ]
then
echo "size is null,exit"
exit
fi
}
function make_fs_mount()
{
mkfs.ext4 -T largefile $partition
if [ $? -ne 0 ]
then
echo "mkfs disk failed,exit"
exit
fi
dir=`cat $ini_path|grep mount |awk -F '=' '{print $2}'`
if [ $dir = "" ]
then
echo "mount dir is null in file,exit"
exit
fi
if [ ! -d $dir ]
then
mkdir -p $dir fi
mount $partition $dir
if [ $? -ne 0 ]
then
echo "mount disk failed,exit"
exit
fi
echo "$partition $dir ext3 defaults 0 0" >> /etc/fstab
}
function remove_rc()
{
cat /etc/rc.local | grep $bash_scripts_name
if [ $? ne 0 ]
then
sed -i '/'$bash_scripts_name'/d' /etc/rc.local
fi
}
################## start #########################1、判断配置文件是否存在
if [ ! -f $ini_path ]
then
echo "ini file not exist,exit"
exit
fi
##2、获取配置文件中disk指定的设备路径
get_disk_from_ini
##3、获取配置文件中size分区大小
get_size
##4、将磁盘分区
fdisk $disk <<EOF
n
p
1
1
$size
w
EOF
partition=`fdisk -l $disk 2>/dev/null| grep "^/dev/[xsh].*d" | awk '{print $1}'`
##5、格式化分区,挂载分区到对应目录
make_fs_mount
##6、修改开机启动项,避免重试执行
remove_rc
echo 'SUCESS'
4. 按“Esc”键,输入:wq,按“Enter”保存并退出编辑。
5. 执行以下命令,创建并编辑配置文件。
Vi fdisk.ini
配置文件中设置了数据盘的盘符、大小和挂载目录信息,用户可参考如下所示信息,根据实际情况修改。
disk=/dev/xdev
size=+100G
mount=/opt/test
6. 按“Esc”键,输入:wq,按“Enter”保存并退出编辑。
7. 执行以下命令,打开配置文件“rc.local”。
Vi /etc/rc.local
8. 按“i”,在“rc.local”文件中添加如下内容。
/home/fdisk_mount.sh
配置“rc.local”后,云主机首次启动时会自动执行初始化数据盘脚本。
9. 按“Esc”键,输入:wq,按“Enter”保存并退出编辑。
10. 通过已有云主机创建私有镜像。
11. 创建伸缩配置。填写伸缩配置信息时,请选择上述步骤中创建的私有镜像,并选择一个数据盘。
12. 创建伸缩组。配置伸缩组时,请选择上述步骤中创建的伸缩配置。伸缩组创建成功后,通过该组的伸缩活动产生的云主机,会按照私有镜像中的配置自动初始化数据盘。
如果您有其他问题,可以联系北京志远天辰天翼云代理商,为您提供一对一专业全面的技术服务,同时新/老天翼云会员,均可享受我公司代理商价格,欢迎咨询!