转载自:http://blog.csdn.net/candcplusplus/article/details/52156324
今天一台主机(Ubuntu 14.04)不知道为什么连不上外网了。只能和局域网内的其他主机相互ping通。但是上面一个正在跑的程序出了问题,需要安装两个额外的包,而且这两个包依赖还挺多的样子。这可急死我了。但是我另一台笔记本可以上外网。碰巧也安装的是Ubuntu14.04。我就想能不能把要安装的包先在笔记本上下载好,然后通过U盘转移到前面那台主机上,再在那台主机上通过本地包安装呢?通过网上一番搜索后,终于搞定了。现在总结一下步骤。
在能上网的笔记本上下载好需要的包
$ sudo rm -rf /var/cache/apt/archives/* # 清空缓存目录,这一步也可以不做
$ sudo apt-get -d install <包名>
- 1
- 2
运行完该命令后,需要的包及依赖都会下载到 /var/cache/apt/archives。
复制到U盘中
将下载好的包( /var/cache/apt/archives目录下的所有文件)复制到U盘中,准备转移。如果你不想拷贝多余的包文件,你可以提前将 /var/cache/apt/archives 目录清空后再下载需要的包。
# 先在U盘中创建好一个目录debs
$ sudo cp -r /var/cache/apt/archives/* /U盘/路径/debs/
sudo mkdir /var/debs
- 1
将U盘中下载好的包文件全部复制到/var/debs目录下
$ sudo cp -r /debs/* /var/debs/
$ sudo touch /var/debs/Packages.gz
$ sudo chmod -R 777 /var/debs/ # 这一步是为了获得文件的可写可读可执行权限,要不然后面会失败
$ sudo dpkg-scanpackages debs /dev/null | gzip > debs/Packages.gz # 创建索引
- 2
- 3
在 /etc/apt/sources.list 中添加本地目录
sudo gedit /etc/apt/sources.list
- 1
$ deb file:/var debs/
sudo apt-get update
- 结束
现在可以安装包了。运行sudo apt-get install <包名> 就会像以前一样安装好了指定的包了。
参考:
Ubuntu使用apt-get安装本地deb包 - milantgh - 博客园http://www.cnblogs.com/milantgh/p/3837356.html
浅谈Ubuntu上离线安装包的制作与安装问题_系统圣地http://www.285868.com/a/xtjc/5817.html