2017-08-30 109 views
0

我們(我的工作場所)擁有基於NVIDIA TK1的嵌入式產品,該產品正在運行鍼對ARM的Ubuntu定製版本。作爲我們產品安裝例程的一部分,我們有一個自定義腳本,可以從網上下載大量的軟件包和存檔,並提取並安裝它們。Ubuntu Linux - 從本地倉庫安裝軟件包

理想的情況下我們所希望做的是,預先下載這些包和檔案變成了「本地」庫,使我們的產品採用已知版本與我們的應用程序。軟件包的自動更新被禁用,最終產品無論如何都很少能夠訪問互聯網,我們只是想確保所使用軟件包的版本對於所有出貨的產品都保持不變。

舉個例子,這裏有更新腳本的部分:

sudo apt-get install -y linux-firmware 
sudo apt-get install -y '.*libxcb.*' libxrender-dev libxi-dev libfontconfig1-dev libudev-dev libx11-dev libx11-xcb-dev libext-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev 
sudo apt-get install -y gcc-4.9 g++-4.9 
sudo apt-get install -y ros-indigo-desktop 
# This one is shortened as its a long URL 
wget cuda-repo-l4t-r21.1-6-5-prod_6.5-14_armhf.deb 
sudo dpk -i cuda-repo-l4t-r21.1-6-5-prod_6.5-14_armhf.deb 

顯然,大量的包都會有很大的依賴性,所以如果有下載所有需要的軟件包和ALL的一種方式需要依賴到本地軟件包存儲庫,並更改我的腳本,以便從那裏安裝,這將是理想的。

我不確定哪種方式是最好的方法來解決這個問題。

我已經安裝的所有程序包到基礎產品,然後「克隆」的文件系統,將其推到其他模塊,但是我真的不知道這樣做的優點/缺點的建議。

UPDATE

好了,因爲我已經發現了大量的/var/cache/apt/archives/文件夾的包,這似乎都涉及到什麼是從我們的腳本安裝。

是否可行/安全安裝全部採用sudo dpkg -i *.deb這些包的?

+0

https://askubuntu.com/questions/974/how-can-i-install-software-or-packages-without-internet-offline – pacholik

回答

0

好事是使用某種debootstrap建立一個自定義圖像,然後閃它的設備上。

要高速緩存apt-getapt-cacher。我沒有嘗試,但其緩存可以凍結。

對於本地資源庫 - reprepro