碰着一些依赖繁芜的,比如输入法fcitx:依赖统共20多个,一个个下载猴年马月。
当然也有曲线救国的办法,找一台同一系统版本的机器,apt-get安装相应的软件包,再从/var/cache/apt/archives/ 目录里拷贝下载的软件包到离线的机器上去,手动实行 dpkg -i .deb 2-6次,这得根据依赖程度而定,dpkg不会自动在当前目录下探求依赖文件,能安装则安装,错了就报错。
实在我们下载Debian安装盘时就以及包含多少deb软件包,直接本地安装即可,下面就先容方法。

准备
去debian官网探求iso,不要下载CD或netinst类型的iso,这两个都是精简安装,没有图形界面,尤其没有中文。
官网找到DVD版ISO,下面有3个DVD全都下载,3个DVD里面包含的除了non-free之外的常用deb包。
64bit: https://cdimage.debian.org/debian-cd/current/amd64/bt-dvd/32bit: https://cdimage.debian.org/debian-cd/current/i386/bt-dvd/
下载的镜像分别挂载
sudo mount -o loop /mnt/data/iso/debian-10.6.0-amd64-DVD-1.iso /mnt/10-iso-1/sudo mount -o loop /mnt/data/iso/debian-10.6.0-amd64-DVD-2.iso /mnt/10-iso-2/sudo mount -o loop /mnt/data/iso/debian-10.6.0-amd64-DVD-3.iso /mnt/10-iso-3/
3个iso统共deb大约12G,内容还是丰富的。
接下来是关键的步骤,添加我们本店源到 /etc/apt/sources.list,把稳这里的file后面是 3个 '/',不要写错。后面的main、contrib是源池pool的子目录。
deb file:///mnt/10-iso-1 buster main contrib deb file:///mnt/10-iso-2 buster main contrib deb file:///mnt/10-iso-3 buster main contrib
buster只是Debian的发布代号,须要根据自己的源名字修正,它的实际名称在dist目录下,对付本地源来说这个符号可以逼迫写成stable。
为什么有这个怪异的名称呢?由于对付网络源来说,它的源库中包含多少发布的系统版本,不能担保所有版本都能向下兼容,所有才有诸如stretch、jessie、wheezy、squeeze这样的代号,它们分别对应着:
Debian 9("stretch")Debian 8("jessie")Debian 7("wheezy")Debian 6("squeeze")实行sudo apt-get update 本以为大功告成,提示没有署名 (signed) 。
$ sudo apt-get updateGet:1 file:/mnt/10-iso-1 buster InReleaseIgn:1 file:/mnt/10-iso-1 buster InReleaseGet:2 file:/mnt/10-iso-1 buster Release [33.5 kB]Get:2 file:/mnt/10-iso-1 buster Release [33.5 kB]Get:3 file:/mnt/10-iso-1 buster Release.gpgIgn:3 file:/mnt/10-iso-1 buster Release.gpgHit:4 http://packages.microsoft.com/repos/vscode stable InRelease Get:5 https://debrepo.freedownloadmanager.org bionic InRelease [1,706 B] Reading package lists... Done E: The repository 'file:/mnt/10-iso-1 buster Release' is not signed.N: Updating from such a repository can't be done securely, and is therefore disabled by default.N: See apt-secure(8) manpage for repository creation and user configuration details.
网上有多少办理署名的方法,比如 apt-key、gpg等,这些方法是构建网络源,天生公钥才这么干,我们本地源有更大略的方法: 信赖源。
重新编辑 /etc/apt/sources.list , 加上 [trusted=yes] 选项
再次实行 sudo apt-get update,成功刷新。
现在开始,往后绝大多数源都可以在本地更新咯。