Anaconda kickstart 变量

Anaconda kickstart 变量

我遇到了一个问题,我试图将用户的输入存储在 anaconda 的 %pre 环境中名为 $mail 的变量中,然后将其传递到 %post 脚本中,它会附加到文件 /foo/bar。我尝试过这样的方法:

%pre
exec < /dev/tty5 > /dev/tty5 2> /dev/tty5
chvt5

echo "Please enter your Email Address."
read emailaddr
echo "$emailaddr" > /tmp/email.tmp

%post --nochroot
%include /tmp/email.tmp
emailaddr=$(cat /tmp/email.tmp)
echo "$emailaddr" >> /foo/bar
rm -f /tmp/email.tmp
%end

但是,这似乎根本不起作用。我相信我在从 %pre 目录转换到 %post 目录时可能犯了一个错误。非常感谢您的帮助。谢谢!

答案1

发生这种情况的原因是 %post 部分被 chrooted 到 /mnt/sysimage(您正在安装的系统所在的位置)。

要访问在 %pre 中创建的 /tmp,您需要在 %post 部分中使用“--nochroot”选项。这可能会导致创建 2 个不同的帖子部分(一个带有“--nochroot”,另一个不带有),或者您需要在任何路径前加上 /mnt/sysimage。

看一下 redhat 文档:“https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s1-kickstart2-postinstallconfig.html

相关内容