写一个脚本,实现创建并管理LV:
说明:脚本执行时,可以显示一个菜单给用户,形如下面:
A Create an LV.
B Create an LV in an existing VG.
C Extend an LV.
D Reduce an LV.
如果用户选择了A项,则完成如下功能:
1)显示当前系统上的所有磁盘及磁盘柱面的相关信息:共有柱面数及空闲柱面范围;而后提示用户选择一个特定的磁盘,
做为创建LV的磁盘;
2)当用户选定磁盘后将选定磁盘的分区信息显示给用户;
3)询问用户创建的VG名字、PV个数及每个PV的大小;而后新建分分区,分区大小对应于各PV大小;
4)而后创建相应的PV,并以之创建出VG;
5)创建LV:
a)提示用户输入LV的大小及名称后创建LV;
b)格式化此LV;
6)提示用户指定挂载点
a)如果挂载点已经存在,且挂载有其它存储设备,则提示用户换一个,直到换到一个可用挂载点;
b)否则,则使用此挂载点挂载此LV;
如果用户选择了B项,则完成以下功能:
1)提示用户输入要创建的LV的名字,大小,和VG的名字;
2)创建此LV;(说明:在创建LV之前要测试VG中所余的空间是否够指定的LV使用;)
如果用户选择了C项,则完成以下功能:
1)提示用户选定LV;而后显示当前LV的大小,并提示用户指定扩展后的大小;
2)扩展此LV至用户指定的大小;(提示:扩展之前要测试当前VG中是否仍有足够的磁盘空间可用;)
如果用户选择了D项,则完成以下功能:
1)提示用户选定LV;而后显示当前LV的大小,并提示用户指定缩减后的大小;
2)缩减此LV至用户指定的大小;(提示:缩减之前要测试当前缩减后的空间是否能容纳当前LV中的所有数据;)
说明:脚本执行时,可以显示一个菜单给用户,形如下面:
A Create an LV.
B Create an LV in an existing VG.
C Extend an LV.
D Reduce an LV.
如果用户选择了A项,则完成如下功能:
1)显示当前系统上的所有磁盘及磁盘柱面的相关信息:共有柱面数及空闲柱面范围;而后提示用户选择一个特定的磁盘,
做为创建LV的磁盘;
2)当用户选定磁盘后将选定磁盘的分区信息显示给用户;
3)询问用户创建的VG名字、PV个数及每个PV的大小;而后新建分分区,分区大小对应于各PV大小;
4)而后创建相应的PV,并以之创建出VG;
5)创建LV:
a)提示用户输入LV的大小及名称后创建LV;
b)格式化此LV;
6)提示用户指定挂载点
a)如果挂载点已经存在,且挂载有其它存储设备,则提示用户换一个,直到换到一个可用挂载点;
b)否则,则使用此挂载点挂载此LV;
如果用户选择了B项,则完成以下功能:
1)提示用户输入要创建的LV的名字,大小,和VG的名字;
2)创建此LV;(说明:在创建LV之前要测试VG中所余的空间是否够指定的LV使用;)
如果用户选择了C项,则完成以下功能:
1)提示用户选定LV;而后显示当前LV的大小,并提示用户指定扩展后的大小;
2)扩展此LV至用户指定的大小;(提示:扩展之前要测试当前VG中是否仍有足够的磁盘空间可用;)
如果用户选择了D项,则完成以下功能:
1)提示用户选定LV;而后显示当前LV的大小,并提示用户指定缩减后的大小;
2)缩减此LV至用户指定的大小;(提示:缩减之前要测试当前缩减后的空间是否能容纳当前LV中的所有数据;)