我正在創建一個rpm,它將分散安裝中不同/特定位置的一些文件。我面臨的問題是轉速的大小,接近1.5 GB。有沒有一種方法可以將我的文件放在aws s3中並在rpm安裝過程中下載。截至目前,我將所有文件都包含在SOURCE目錄中。如何減小轉速的大小?
任何幫助表示讚賞。
謝謝。 Balasekhar Nelli
我正在創建一個rpm,它將分散安裝中不同/特定位置的一些文件。我面臨的問題是轉速的大小,接近1.5 GB。有沒有一種方法可以將我的文件放在aws s3中並在rpm安裝過程中下載。截至目前,我將所有文件都包含在SOURCE目錄中。如何減小轉速的大小?
任何幫助表示讚賞。
謝謝。 Balasekhar Nelli
對於數據的量,做不把它放在一個RPM,甚至沒有他們的100(例如mypgm數據-1.rpm,mypgm數據-2.rpm,...) 。就我個人而言,我討厭它當我看到一些程序更新foobar-langpack-1.rpm foobar-langpack-300.rpm當我運行百勝。
請考慮使用rsync [通過http隧道?]而不是AWS。這是完美的工作。
你爲什麼「將它們分散」?你爲什麼不把它們放在/ home/mypgm或/ usr/share/mypgm下?
rpm安裝應該很快。你可以有rpm後做rsync,但我不會這樣做,直到用戶第一次運行程序和/或配置。它會問:「啓用自動/後臺數據更新?」
給用戶一個選擇。當程序運行時,它可以檢測到需要從AWS刷新本地數據,然後[再次]提示用戶:「我需要在運行之前更新程序數據,現在就做?它需要X分鐘」
對於這個龐大的東西,給用戶一個關於更新政策的選擇。例如,在Android上,您可以選擇「僅通過wifi更新」。
您可以用增量產生百勝/ DNF庫:
createrepo_c --deltas
它將創建迎戰老rpm文件的二進制差異。它不會幫助你初次下載,但它會加速升級。
不要忘記yum.conf
deltarpm=2
見人的yum.conf有什麼這個價值的手段。
您還可以在構建rpm時更改壓縮參數。看到這個答案: rpmbuild change compression format
你可能有更好的運氣在serverfault.com或http://unix.stackexchange.com/ – zedfoxus