apt
/etc/apt/sources.list
使用镜像源加快下载速度。
以华为源和 bullseye 版本为例。
deb http://mirrors.huaweicloud.com/debian/ bullseye main contrib non-free
deb http://mirrors.huaweicloud.com/debian/ buster-backports main contrib non-free
deb http://mirrors.huaweicloud.com/debian/ bullseye-updates main contrib non-free
deb http://mirrors.huaweicloud.com/debian-security/ bullseye-security main contrib non-free
deb http://mirrors.huaweicloud.com/debian/ testing main contrib non-free
deb http://mirrors.huaweicloud.com/debian/ testing-updates main contrib non-free
deb http://mirrors.huaweicloud.com/debian/ testing-backports main contrib non-free
deb http://mirrors.huaweicloud.com/debian-security/ testing-security main contrib non-free
上面设置了 stable 源和 testing 源。stable 代表的是当前 release 版本。testing 代表的是下一个 release 版本。 另外还有 sid 源。sid 源里的包都是 unstable 的。一个包的发布过程要经历 sid -> testing -> stable。详见 https://wiki.debian.org/DebianReleases 另外还有 oldstable 源,代表上一个 release 版本。
要注意打开 https://mirrors.huaweicloud.com/debian/dists/
看有没有对应的目录。没有的话则代表这个镜像源里没有镜像该源的资源。
apt 默认源
如果 /etc/apt/sources.list 设置了多个源,apt 会安装更高版本的包的源,那 testing 源默认就会被选中。这会带来混乱。 如果想把 stable 为默认源。可以这么设置,
# 这里假设当前 stable 的代号是 bullseye
echo 'APT::Default-Release "bullseye";' > /etc/apt/apt.conf.d/00local
(以后升级系统时记得修改对应的版本号)
参考
给 apt 设置 http 代理
除了更换源,还可以设置 http 代理来加速。具体看这篇文章「如何为 APT 命令设置代理」 (链接备份)。
搜索包
apt search --names-only name
。--names-only
只会匹配包名,如果没有则会匹配包括包描述的所有信息。
升级包
apt upgrade
会升级所有安装包。即使你写 apt upgrade <package>
也依然会升级所有。 如果你要升级指定的包,可以用 apt --only-upgrade install <package>
。
重新配置包
执行 dpkp-reconfigure $pkg
下载包内容
apt download $pkg
查看包的文件内容
dpkg -L $pkg
。或者安装 apt-file
,调用 apt-file list
。
参考 https://cheat.readthedocs.io/en/latest/debian.html
根据文件路径查对应的包
$ dpkg -S /bin/ls
coreutils: /bin/ls
或者
$ apt-file search --regex '/bin/ls$'
9base: /usr/lib/plan9/bin/ls
coreutils: /bin/ls
klibc-utils: /usr/lib/klibc/bin/ls