Kickstarter脚本从命令行中提取参数

时间:2016-01-19 05:18:53

标签: bash sed centos kickstarter

我正在尝试自定义kickstarter脚本,以便在预安装过程中从用户中提取参数。 命令的格式为:

raidtype HAtype partitionSize

即。 raid1 hanode 2048 radi1 hanode 4096 等等

但是,安装期间脚本未运行。我已将其缩小到 HANODE_SIZE 参数。

#--- Pre-installation script
%pre --interpreter /bin/sh

# Extract command line parameters
NORAID=`grep noraid /proc/cmdline`
RAID1=`grep raid1 /proc/cmdline`
RAID5=`grep raid5 /proc/cmdline`
HANODE=`grep hanode /proc/cmdline`
HANODE_SIZE=`sed 's/.*hanode *\([0-9]*\).*/\1/'`
if [ -z "${HANODE_SIZE}" ]; then
    HANODE_SIZE="2048"
fi

当我摆脱 HANODE_SIZE 时,安装成功(显然无法指定分区大小)。但是,当我包含包含 sed 命令的语句时,安装会在执行kickstarter脚本期间停止。 有人能告诉我我做错了什么吗?我的 sed 声明有问题吗?

1 个答案:

答案 0 :(得分:0)

我最终注意到了这个问题。 sed 命令也需要使用命令行文件。以下最终有效:

HANODE_SIZE=`sed 's/.*hanode *\([0-9]*\).*/\1/' /proc/cmdline`