是的,您可以從文件系統映像(如您所描述的)創建RPM。這是構建RPM的更簡單的例子之一,但您仍然需要使用這些工具。
的步驟大致:
1)創建RPM的建築環境中,如果您還沒有這樣做。在其最起碼的,這將是你的主目錄下的子目錄樹,像這樣:
rpm/
BUILD/
RPMS/
x86_64/ (or whatever is the applicable arch)
SOURCES/
SPECS/
SRPMS/
2)創建圖像的壓縮包,並在SOURCES /目錄中刪除它。
3)在SPEC /子目錄中創建一個spec文件。有些工具可以幫助您創建一個spec文件框架。例如,如果您可以使用「rpmdevtools」軟件包(適用於CentOS 5和6),那麼您可以使用「rpmdev-newspec」。您需要填寫一些字段並提供一些(在您的情況下爲較小的)shell命令。結果可能是這樣的:
Name: my_sw
Summary: Cool software
Version: 1.0
Release: 1
Group: Applications
License: <license>
Source0: my_sw.tar.gz
%description
my_sw does awesome things that you'll really like. If you have any need for
awesomeness, this is for you!
%prep
# different from the default:
%setup -q -c -T
%build
# nothing to do
%install
# Start clean
rm -rf %{buildroot}
mkdir -p %{buildroot}
# Put the files in the correct location relative to %{buildroot}
ln -s %{buildroot} ./my_sw
tar xzf %{S:0}
%files
%defattr(-,root,root,-)
%{_bindir}/foo
%{_mandir}/man1/foo.1
%changelog
* Wed Aug 27 2014 Gary O <[email protected]> 1.0-1
- Initial spec
一些進入最終的RPM;其餘的則告訴rpmbuild它需要做什麼的細節。
4)的rpmbuild構建:
rpmbuild -ba SPECS/my_sw.spec
5)二元RPM將在RPMS /。源RPM將位於SRPMS /中。
我曾經找到的最好的RPM建築參考之一是Fedora項目的RPM指南:http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/index.html。請參閱第9章。
基於rpm的分發和版本是你的目標? – 2014-08-27 21:32:42
對不起,留下了。 CentOS 5和6. – GaryO 2014-08-27 21:37:10