情况:我正在尝试构建自定义 rpm 以将配置文件放置在特定位置。通过将配置文件放置在正确的目录中,安装可以顺利完成,但 %post 部分不起作用。此部分回显用户进行输入并“读取”它。此读取值将在“sed”的帮助下放置在这些配置文件中。
问题:%post 部分中的“read”不起作用,即安装过程不等待用户提供输入。它基本上通过将文件放入目录中来完成安装。简而言之,%post 部分不与用户交互以提供输入。
请参阅此处的 SPEC 文件:http://pastebin.com/5BgkJUpG。这将有助于理解这个想法。
我为构建 .deb 包的“postint”部分编写了与上述 %post 部分完全相同的行,并且在那里运行良好。安装 deb 包的用户可以进行输入,并且这个给定的值会使用“sed”放置在配置文件中。
答案1
答案2
来自“Unix and Linux”的用户贡献了这个答案:
警告 不要尝试编写交互式脚本。许多用户会自动安装 RPM。在这种情况下,或者如果用户运行图形化 RPM 工具,脚本输出的任何信息都将丢失。用户输入将不可用。
答案3
我认为你正在寻找可重新定位的 rpm。