2015-12-23 69 views
1

我是生成rpm包的新手。我試圖創建一個rpm文件,其中需要很多模塊,如php,mysql,Apache等。構建一個rpm文件來安裝具有所有依賴關係的各種模塊

我試了很多,但我發現有.spec文件,生成文件,配置文件生成rpm 。在我的情況下,沒有這樣的文件,因爲我只想在一個rpm文件中安裝一些第三方軟件包。

我真的陷入困境,並沒有找到正確的方式來做這件事。請幫助我,我非常感謝你。

我參觀了一些鏈接,https://access.redhat.com/sites/default/files/attachments/rpm_building_howto.pdf

http://www.logiqwest.com/TechnicalPapers/rpmScriptInstall.html

http://www.linuxquestions.org/questions/linux-general-1/creating-an-rpm-without-source-734490/

沒有人提供了一個更好的解決方案,以滿足我的座右銘。

簡而言之,我只是想將我所有的步驟都集成到可以使用腳本進行安裝的rpm包中。

請建議一個合適的方式或讓我知道是否有可能?

+0

我很感激,如果有人給出了這樣的提示.. –

+0

更新要百勝安裝程序包你的問題。 yum需要一個需要設置的存儲庫。 – dlmeetei

回答

0

你可以將你的源代碼設置爲主要的Source,並讓你的RPM你需要的各種服務器。在%install節中,您可以將所有文件複製到與您的目的地相同的暫存區域。

+0

我想只安裝特定的軟件包和一些第三方tar​​.gz文件。沒有特定的源代碼。我希望這個rpm使用「yum install packagename」來安裝一些軟件包,並且可以從它們的tar.gz中安裝第三方源代碼,它們都具有make,config和install文件。我想在一個轉速下完成這一切。可能嗎? –

+0

嗨,兄弟!如果你可以在我的規範中提出某些建議,那麼很受推崇。 –

+0

當你說'我希望這個rpm使用「yum install packagename」來安裝一些軟件包時,我想你想在rpm安裝過程中運行yum。這是不允許的(這是一個非常糟糕的主意,無論如何文件都被鎖定)。正如Aaron所建議的那樣,您可能想要做的是在您的RPM中構建依賴關係。如果你所做的一切都需要一些其他的軟件包,那麼如果你遵循Aaron的建議,你就會被設置。但是,你也可以自由地解壓和拷貝一些目標數據 - 這完全沒問題。 – user2066657

0

創建一個合適的spec文件。 This描述了開發者的rpm。

您應該注意%require。這是您指定依賴項的位置,如php,mysql。您不必將每個軟件包都捆綁在您的rpm中。 rpm很聰明,能夠確定需要什麼軟件包。 鏈接的第14章描述了這一點。

可以使用rpm install pkg_name.rpm安裝得到的RPM,但如果你想yum install pkg_name,那麼你需要set up a yum repo.

相關問題