debian系linux下如何安装软件
接触过linux的同学都知道,linux下安装软件需要配一个源,这样就不用自己找软件包了,也不用因为依赖问题而抓狂。
不同的linux发行版有不同的包管理工具(redhat系的rpm、debian系的deb),配置源的方式也大不相同,这里我们讲一下debian系如何操作。
/etc/apt/source.list详解
在debian系下配置源的配置文件路径是/etc/apt/source.list
或者在/etc/apt/source.list.d/
目录下创建自己的.list文件。
其内容具体规则如下:
1 | [仓库类型] [仓库地址] [目录结构] [软件的性质] |
举例:
1 | # cat /etc/apt/sources.list |
其中第一列意思是二进制包仓库,第二例为http仓库的URL,三至五列为需要访问的目录结构(可通过URL查看,如下图),第六列为非免费。
如何制作源
前面说了linux支持本地源、http源等,但是我们能自己制作源吗?当然可以,也很简单。
本地源的制作
- 获取deb包
获取包的途径很多,可以网上下,或者在/var/cache/apt/archives目录下会存放你之前安装过的deb包。
我们先用一个包为例:1
2# ls
terminator_1.91-4_all.deb - 生成包的依赖信息
1
2
3
4
5
6
7# cd ..
# dpkg-scanpackages deb/ /dev/null | gzip > deb/Packages.gz
dpkg-scanpackages: warning: Packages in archive but missing from override file:
dpkg-scanpackages: warning: terminator
dpkg-scanpackages: info: Wrote 1 entries to output Packages file.
# ls deb
Packages.gz terminator_1.91-4_all.deb - 配置
/etc/apt/source.list
deb [trusted=yes] file:///sources/ deb/
这里需要信任。
http源的制作
本地源只能自己用,那如果我们要开放自己的源呢?
我们可以通过http来开放,既然通过http,那必然需要http服务:apt install apache2
。
然后将文件链接到apache2的根目录下(/var/www/html/):ln -s /sources/deb /var/www/html/deb
。
最后启动服务:/etc/init.d/apache2 start
。
然后你就可以在别的机器上通过配置/etc/apt/source.list
来使用源了,例如:deb [trusted=yes] http://192.168.1.100/ deb/
总结
我觉得redhat的更好用。