我正试图找出我想要创建的RPM的扭结。基本上,我试图这样做,如果 mark
在系统上不存在,我想创建一个标记用户帐户。我有一个 %pre
阻止我的.spec文件:
id mark &>/dev/null
if [ "$?" != "0" ]; then
echo "Adding 'mark' user..."
useradd -g $GROUP_ID \
-s /bin/bash -d mark
fi
现在,在我构建RPM并运行之后 rpm -ivh iPackage-1.0.0-1.noarch.rpm
,我检查输出并看到“添加'标记'用户...”,但是当我跑 id mark
在命令行上,我明白了 id: mark: No such user
。也, /etc/passwd
也没有标记帐户。有任何想法吗?
编辑:看我的回答。事实证明,需要定义变量。
1
您的脚本中存在错误。在结束']'之前添加另一个空格。并确保以root身份运行此脚本。
—
Matt H
另一个错误是
—
Gilles
useradd
命令行显然是不完整的(除非这是一个不寻常的变体 useradd
)。 @Pat:请复制粘贴您的实际代码,并说出您要定位的分发版。