Ubuntu使用apt-get安装本地deb包
我们都喜欢使用apt-get,因为它实在是让我们大大的省心。但是,有时候我们会为网速慢,安装源不好而烦恼,所以我们可能会将一些常用软件包的deb文件保存在本地以备不时之需。当然了使用dpkg也可以直接来安装保存在本地的deb软件包,问题是它并不能处理软件包之间的依赖 (dependence)关系,那么如何使用apt-get来安装保存在本地的软件包和源代码呢?
下面是如何让apt-get使用本地deb文件的步骤:
第一步:将你所有的deb文件放在同一个目录内,如:
# mkdir /var/debs
第二步:使用dpkg-scanpackages 命令生成APT可以使用的软件包索引文件
/var# dpkg-scanpackages debs /dev/null | gzip > debs/Packages.gz
注:/dev/null位置的参数是指定一个文件,文件名不限,该文件的作用是用来重写覆盖deb软件包中控制文件的某些定义,它的第一行的格式,一行对应一个软件包:
package priority section
package指定你所要修改的软件包
priority 有low,medium,high三个值
section 用来指定软件包属于哪个section
如果不需要对deb软件包做任何修改你就可以像例子中那样直接指定一个/dev/null文件。
第三步:在你的sources.list中添加一行
deb file:/var debs/
这样你就可以使用apt-get命令来安装这些软件包了,命令格式没有任何差异,apt-get会为我们处理软件包之间的依赖关系,不过要注意,在修改sources.list之后一定要执行一下apt-get update命令。
让 apt-get使用本地的源代码进行安装也是一样的,不过需要注意下列几点:
1、第一个软件包的orig.tar.gz(源程序文件), .dsc(debian控制文件) and .diff.gz(描述在debian能使用该程序之前需要进行的修改部分)文件必须在同一目录下。
2、生成的索引文件要使用Sources.gz ,而不能用Packages.gz
3、扫描程序使用dpkg-scansources
# dpkg-scansources debs | gzip > debs/Sources.gz
4、最后还需要在sources.list中添加一行
deb-src file:/root debs/
Ubuntu使用apt-get安装本地deb包的更多相关文章
- debian下使用dpkg来安装/卸载deb包 (转载)
转自:http://blog.csdn.net/zhou_2008/article/details/6076900 在debian下,你可以使用dpkg(Debian package system)来 ...
- ubuntu采用apt方式安装多个版本php-fpm
适用系统:Ubuntu 16.04 LTS / Ubuntu 14.04 LTS 安装 PHP Ondřej Surý 的 PHP PPA 为 Ubuntu 16.04/14.04 提供了 PHP7. ...
- mave 安装本地jar包到maven库
Maven 安装 JAR 包的命令是: mvn install:install-file -Dfile=本地jar包的位置 -DgroupId=groupId -DartifactId=artifac ...
- 用Anaconda安装本地python包
Anaconda确实带来了很多方便,但是之前也过多的依赖了conda自带的一键下载python包的功能.这不,这几天突然要用FastFM这个包,无奈conda里没有,于是只能从github下载下来,实 ...
- Maven安装本地jar包到本地仓库
Maven 安装 JAR 包到本地仓库的命令是: mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面的groupId -DartifactId=上 ...
- Maven中安装本地Jar包到仓库中或将本地jar包上传
摘要 maven install 本地jar 命令格式 mvn install:install-file -DgroupId=<group_name> -DartifactId=<a ...
- ubuntu 用 apt get 安装某个包的某个版本
1.首先用如下命令查询你的机器安装了哪些版本: dpkg -l 'apache2*' 2.然后用如下命令查询远程库存在哪些版本: apt-cache madison "libqt5gui5& ...
- spring-boot-maven-plugin 安装本地jar 包
本地使用nexus 进行maven仓库管理.项目deploy 引入之后,总是找不到jar中定义的class或者配置文件等. 从截图上可以看到虽然class文件是有的,但是引用的时候却是找不到的. Sp ...
- Ubuntu下apt方式安装与更新Git
本人使用的系统 Ubuntu 18.04.1 ,使用apt安装Git: sudo apt insatll git 安装后发现不是最新的版本,更新方法: sudo add-apt-repository ...
随机推荐
- SWT中的布局之-----FormLayout(表格式布局)
表格式(FormLayout类) 表格式布局管理器,通过创建组件各个边的距离来布局组件,和GridLayout一样强大. 用GridLayout与FormLayout都可以实现相同的界面效果,但有时使 ...
- MATLAB 误差函数erf(x)
误差函数: 1.误差函数定义为: 它的性质如下: 2 互补误差函数定义为: 它具有如下性质: 下表给出了误差函数的部分数值: 0.00 0.00000 0.05 0.05637 0.10 0.11 ...
- symonfy 项目根目录下没有 bin/console 文件的解决方法
“Could not open input file: bin/console” Error comes when try to Run the Symfony Application 在采纳的答案中 ...
- [记录] web icon 字体
weloveiconfonts 在http://codepen.io/cguillou/pen/jmkfK 中看css发现既然有这样的,yes!
- Python函数中参数* 和 ** 的区别
* 函数接收参数为元组 例如 def myfun(*args): #相当于 def myfun(1,2,3) ==> args 就相当于(1,2,3) for a in args: pri ...
- 聊聊css盒子模型
css盒子模型原理: 在网页设计中常听的属性名:内容(content).填充/内边距(padding).边框(border).外边距(margin), CSS盒子模式都具备这些属性. 这些属性我们可以 ...
- redhat ping不通外网的解决办法
ping自己和网关都能ping通就是无法ping通外网例如百度: [root@ocdp1 ~]# ping www.baidu.com ping: unknown host www.baidu.com ...
- VS打包
同学让帮忙打包个VC的程序,程序比较简单,是带access数据库的统计查询软件,之前用Visual Studio 6.0自带的Package & Deployment Wizard 工具打包过 ...
- 使用PHP连接、操纵Memcached的原理和教程
http://www.crazyant.net/1014.html Memcahced开源分布式内存对象缓存系统通过减少数据库的负担,从而能够加速你的web应用.在本文中我将解释怎样实现一个基于Mem ...
- 树莓派配置AP模式
所需硬件:树莓派.无线网卡 1.查看无线网卡是否被识别 pi@raspberrypi ~ $ sudo lsusb Bus Device : ID : Standard Microsystems Co ...