Linux製作本地源
Linux製作本地源
由於項目需要在Ubuntu64位上搭建運行環境,需要安裝很多軟體,下載需要大量時間,並且需要安裝的電腦可能由於條件限制無法上網,因此我們就需要製作一個本地源。一下是製作本地源需要的步驟:
1.拷貝所需安裝軟體包
通過apt-get安裝的軟體都在/var/cache/apt/archives目錄下,在/目錄下建立packages目錄,並將所有的軟體包拷貝到該目錄下。(可以拷貝到任意路徑下的目錄裡,該步驟主要是將所有軟體包拷貝到一處,便於以後打包)
2..產生軟體包資訊(含有重要的包的依賴關係)
通過dpkg-scanpackages命令來擷取軟體包的詳細資料(必須要確認安裝了dpkg-dev)。
$ sudo dpkg-scanpackages /packages/ /dev/null |gzip >/packages/Packages.gz
這樣就在packages目錄下產生了Packages.gz檔案,apt-get安裝軟體時都會讀取這個檔案,從而擷取的包的資訊,如有依賴的包,就會自動下載並安裝。
Packages.gz包含的資訊有:
包名,優先順序,類型,維護者,架構,源檔案(source),版本號碼,依賴包,衝突性資訊,包大小,檔案的下載路徑,MD5sum,SHA1,包描述,Xul-Appid---應用程式id,Bugs資訊,Origin,Supported
可以看一下dpkg-dev包的資訊:
Package: dpkg-devSource: dpkgVersion: 1.16.1.2ubuntu7.5Architecture: allOrigin: debianBugs: debbugs://bugs.debian.orgMaintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>Installed-Size: 1162Depends: libdpkg-perl (= 1.16.1.2ubuntu7.5), bzip2, xz-utils, patch, make, binutils, base-files (>= 5.0.0)Recommends: gcc | c-compiler, build-essential, fakeroot, gnupg, gpgv, libalgorithm-merge-perlSuggests: debian-keyringBreaks: devscripts (<< 2.10.26), dpkg-cross (<< 2.0.0)Filename: packages//dpkg-dev_1.16.1.2ubuntu7.5_all.debSize: 468412MD5sum: ba929418e76cf3a5d1b6620635db9652SHA1: 8ff26b822576175c3875aae0db0c04b37dcfa2fcSHA256: ec55ac8c839220e1f5abef498def4b06cc75ac23927e2517adbccf3ab0d88efeSection: utilsPriority: optionalMulti-Arch: foreignHomepage: http://wiki.debian.org/Teams/DpkgDescription: Debian package development tools This package provides the development tools (including dpkg-source) required to unpack, build and upload Debian source packages. . Most Debian source packages will require additional tools to build; for example, most packages need make and the C compiler gcc.Original-Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
3.添加本地源
apt命令每次都會讀取/etc/apt/sources.list源列表(這個源列表可以添加好多源,每次都選中開頭的有效源),因此我們編輯該檔案,在第一行添加我們自己的本地源,如:
deb file:/// packages/
要注意中間的空格
4.打包本地源
將/etc/apt/sources.list檔案拷貝到packages目錄下,將packages檔案夾打包、備份,以便使用。
5.如何使用本地源
將packages壓縮包放到/目錄(該目錄只要和添加的本地源路徑一致即可,以便apt能找到源)下解壓,備份原生sources.list,將packages目錄下的sources.list拷貝到/etc/apt/目錄下。修改/etc/apt/sources.list 之後一般會運行下面兩個命令進行更新升級:
sudo apt-get update
sudo apt-get dist-upgrade
其中 :
update - 取回更新的軟體包列表資訊
dist-upgrade - 發布版升級
然後就可以離線安裝了:apt-get install xxxx