当我 运行 install 命令时,我可以在规范文件中的什么地方放置 install/move 文件周围的指令?
Where in the spec file can I put instructions to install/move around files when I run the install command?
当我 运行 安装命令时,我可以在 spec 文件的什么地方放置对 install/move 文件的指令?
rpm -ivh myrpm-1.0-12.rpm
在我的 RPM 中,我有一个 tar 球,里面装满了文件(php 个文件),我想将它们放在我的服务器上的一个设置目录中。
我运行.
rpmbuild -ba
这会执行下面的命令,我现在不想执行这些命令。
%install
mkdir -p $RPM_BUILD_ROOT/usr/local/mypath/here
cp -r . $RPM_BUILD_ROOT/usr/local/mypath/here
我希望这些命令在最终用户安装时执行
rpm -ivh myrpm-1.0-12.rpm
在 RPM 文档中,它说安装 RPM 的步骤之一是...
"Unpacking files from the package and putting them in the proper place:"
这是大多数人在考虑安装软件时想到的步骤。每个包文件都包含一个要安装的文件列表,以及它们在您系统上的目的地。此外,许多其他文件属性,如权限和所有权,都由 RPM 正确设置。
我不知道把这些命令放在哪里。
我也试过将命令放在 %build
中,它的作用是一样的。
RPM 构建时间是提取这些文件的确切时间。
原 tar 球应该是 "source RPM file" 和 "binary RPM file" 的一部分(措辞不当;在这种情况下 "install RPM file" 应该更好)应该保存 RPM 负责的 target 文件系统的确切布局。
此布局在 %install
部分中定义。通常,您有序列 %prep
、%build
和 %install
。 %prep
将您的源解压缩到工作目录中,%build
构建它们,然后 %install
将 stoff 移动到 "build root",它定义了应该存在的文件。如果您没有任何要构建的东西,就像您的情况一样,您可以省略 %build
并且可能只是在 %install
部分中解压。
这也是 RPM 系统知道文件名的唯一方法,因此您可以使用 rpm -qf $FILENAME
查询它们的包。 (幽灵文件除外,但这不是很优雅)。
您可以添加一个 %post
小脚本,它会在安装时解压一个 tar 球,但是,如前所述,这远非优雅。
当我 运行 安装命令时,我可以在 spec 文件的什么地方放置对 install/move 文件的指令?
rpm -ivh myrpm-1.0-12.rpm
在我的 RPM 中,我有一个 tar 球,里面装满了文件(php 个文件),我想将它们放在我的服务器上的一个设置目录中。
我运行.
rpmbuild -ba
这会执行下面的命令,我现在不想执行这些命令。
%install
mkdir -p $RPM_BUILD_ROOT/usr/local/mypath/here
cp -r . $RPM_BUILD_ROOT/usr/local/mypath/here
我希望这些命令在最终用户安装时执行
rpm -ivh myrpm-1.0-12.rpm
在 RPM 文档中,它说安装 RPM 的步骤之一是... "Unpacking files from the package and putting them in the proper place:"
这是大多数人在考虑安装软件时想到的步骤。每个包文件都包含一个要安装的文件列表,以及它们在您系统上的目的地。此外,许多其他文件属性,如权限和所有权,都由 RPM 正确设置。
我不知道把这些命令放在哪里。
我也试过将命令放在 %build
中,它的作用是一样的。
RPM 构建时间是提取这些文件的确切时间。
原 tar 球应该是 "source RPM file" 和 "binary RPM file" 的一部分(措辞不当;在这种情况下 "install RPM file" 应该更好)应该保存 RPM 负责的 target 文件系统的确切布局。
此布局在 %install
部分中定义。通常,您有序列 %prep
、%build
和 %install
。 %prep
将您的源解压缩到工作目录中,%build
构建它们,然后 %install
将 stoff 移动到 "build root",它定义了应该存在的文件。如果您没有任何要构建的东西,就像您的情况一样,您可以省略 %build
并且可能只是在 %install
部分中解压。
这也是 RPM 系统知道文件名的唯一方法,因此您可以使用 rpm -qf $FILENAME
查询它们的包。 (幽灵文件除外,但这不是很优雅)。
您可以添加一个 %post
小脚本,它会在安装时解压一个 tar 球,但是,如前所述,这远非优雅。