本文记录我在 Debian 安装 dotnet 失败,报错信息是 packages-microsoft-prod depends on ca-certificates; however: Package ca-certificates is not installed.
一开始按照官方的以下代码例子进行安装 packages-microsoft-prod.deb 文件,命令如下
sudo dpkg -i packages-microsoft-prod.deb
报错信息如下
(Reading database ... 9939 files and directories currently installed.)Preparing to unpack packages-microsoft-prod.deb ...Unpacking packages-microsoft-prod (1.1-debian12) over (1.1-debian12) ...dpkg: dependency problems prevent configuration of packages-microsoft-prod: packages-microsoft-prod depends on ca-certificates; however: Package ca-certificates is not installed.
根据网上提供的命令,通过以下命令重新安装 ca-certificates 工具
sudo apt-get install --reinstall ca-certificates
依然提示失败,这次是依赖的 openssl 没有安装,错误提示如下
Reading package lists... DoneBuilding dependency tree... DoneYou might want to run 'apt --fix-broken install' to correct these.The following packages have unmet dependencies: ca-certificates : Depends: openssl (>= 1.1.1) but it is not going to be installedE: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution)
解决方法:
先通过 apt --fix-broken install
命令解开错误,输入命令行如下
sudo apt --fix-broken install
运行成功,输出如下
Reading package lists... DoneBuilding dependency tree... DoneCorrecting dependencies... DoneThe following additional packages will be installed: ca-certificates libssl1.1 opensslThe following NEW packages will be installed: ca-certificates libssl1.1 openssl0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.1 not fully installed or removed.Need to get 2,573 kB of archives.After this operation, 6,112 kB of additional disk space will be used.Do you want to continue? [Y/n] yGet:1 http://mirrors.aliyun.com/debian-security buster/updates/main amd64 libssl1.1 amd64 1.1.1n-0+deb10u6 [1,552 kB]Get:2 http://mirrors.aliyun.com/debian-security buster/updates/main amd64 openssl amd64 1.1.1n-0+deb10u6 [855 kB]Get:3 http://mirrors.aliyun.com/debian buster/main amd64 ca-certificates all 20200601~deb10u2 [166 kB]Fetched 2,573 kB in 3s (930 kB/s)Preconfiguring packages ...Selecting previously unselected package libssl1.1:amd64.(Reading database ... 9939 files and directories currently installed.)Preparing to unpack .../libssl1.1_1.1.1n-0+deb10u6_amd64.deb ...Unpacking libssl1.1:amd64 (1.1.1n-0+deb10u6) ...Selecting previously unselected package openssl.Preparing to unpack .../openssl_1.1.1n-0+deb10u6_amd64.deb ...Unpacking openssl (1.1.1n-0+deb10u6) ...Selecting previously unselected package ca-certificates.Preparing to unpack .../ca-certificates_20200601~deb10u2_all.deb ...Unpacking ca-certificates (20200601~deb10u2) ...Setting up libssl1.1:amd64 (1.1.1n-0+deb10u6) ...Setting up openssl (1.1.1n-0+deb10u6) ...Setting up ca-certificates (20200601~deb10u2) ...Updating certificates in /etc/ssl/certs...137 added, 0 removed; done.Setting up packages-microsoft-prod (1.1-debian12) ...Processing triggers for libc-bin (2.36-9) ...Processing triggers for ca-certificates (20200601~deb10u2) ...Updating certificates in /etc/ssl/certs...0 added, 0 removed; done.Running hooks in /etc/ca-certificates/update.d...done.
接着使用以下命令重新安装 ca-certificates 工具
sudo apt-get --fix-broken install --reinstall ca-certificates
安装成功,输出如下
Reading package lists... DoneBuilding dependency tree... DoneReading state information... Done0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.Need to get 166 kB of archives.After this operation, 0 B of additional disk space will be used.Get:1 http://mirrors.aliyun.com/debian buster/main amd64 ca-certificates all 20200601~deb10u2 [166 kB]Fetched 166 kB in 0s (789 kB/s)Preconfiguring packages ...(Reading database ... 10266 files and directories currently installed.)Preparing to unpack .../ca-certificates_20200601~deb10u2_all.deb ...Unpacking ca-certificates (20200601~deb10u2) over (20200601~deb10u2) ...Setting up ca-certificates (20200601~deb10u2) ...Updating certificates in /etc/ssl/certs...0 added, 0 removed; done.Processing triggers for ca-certificates (20200601~deb10u2) ...Updating certificates in /etc/ssl/certs...0 added, 0 removed; done.Running hooks in /etc/ca-certificates/update.d...done.
再继续安装 packages-microsoft-prod.deb
使用以下命令
sudo dpkg -i packages-microsoft-prod.deb
执行成功,输出如下
(Reading database ... 10266 files and directories currently installed.)Preparing to unpack packages-microsoft-prod.deb ...Unpacking packages-microsoft-prod (1.1-debian12) over (1.1-debian12) ...Setting up packages-microsoft-prod (1.1-debian12) ...File /usr/share/keyrings/microsoft-prod.gpg is missing. Installing...
接着执行 sudo apt-get update
命令
sudo apt-get update
执行成功,输出如下
Get:1 https://packages.microsoft.com/debian/12/prod bookworm InRelease [3,617 B]Hit:2 http://mirrors.aliyun.com/debian buster InReleaseGet:3 https://packages.microsoft.com/debian/12/prod bookworm/main armhf Packages [5,346 B]Get:4 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 Packages [29.1 kB]Get:5 https://packages.microsoft.com/debian/12/prod bookworm/main all Packages [342 B]Get:6 https://packages.microsoft.com/debian/12/prod bookworm/main arm64 Packages [5,932 B]Get:7 http://mirrors.aliyun.com/debian-security buster/updates InRelease [34.8 kB]Hit:8 http://mirrors.aliyun.com/debian buster-updates InReleaseGet:9 http://mirrors.aliyun.com/debian buster-backports InRelease [51.4 kB]Get:10 http://mirrors.aliyun.com/debian-security buster/updates/main Sources [371 kB]Get:11 http://mirrors.aliyun.com/debian-security buster/updates/main amd64 Packages [586 kB]Get:12 http://mirrors.aliyun.com/debian-security buster/updates/main Translation-en [318 kB]Get:13 http://mirrors.aliyun.com/debian buster-backports/main Sources.diff/Index [27.8 kB]Get:14 http://mirrors.aliyun.com/debian buster-backports/main amd64 Packages.diff/Index [27.8 kB]Get:15 http://mirrors.aliyun.com/debian buster-backports/main Sources 2024-02-11-0807.14.pdiff [1,391 B]Get:16 http://mirrors.aliyun.com/debian buster-backports/main Sources 2024-02-11-1408.12.pdiff [33 B]Get:16 http://mirrors.aliyun.com/debian buster-backports/main Sources 2024-02-11-1408.12.pdiff [33 B]Get:17 http://mirrors.aliyun.com/debian buster-backports/main amd64 Packages 2024-02-11-1408.12.pdiff [1,249 B]Get:17 http://mirrors.aliyun.com/debian buster-backports/main amd64 Packages 2024-02-11-1408.12.pdiff [1,249 B]Fetched 1,464 kB in 2s (684 kB/s)Reading package lists... Done
接着执行安装 .NET 7 SDK 命令
sudo apt-get install -y dotnet-sdk-7.0
执行成功,输出如下
Reading package lists... DoneBuilding dependency tree... DoneReading state information... DoneThe following additional packages will be installed: aspnetcore-runtime-7.0 aspnetcore-targeting-pack-7.0 dotnet-apphost-pack-7.0 dotnet-host dotnet-hostfxr-7.0 dotnet-runtime-7.0 dotnet-runtime-deps-7.0 dotnet-targeting-pack-7.0 libicu63 netstandard-targeting-pack-2.1The following NEW packages will be installed: aspnetcore-runtime-7.0 aspnetcore-targeting-pack-7.0 dotnet-apphost-pack-7.0 dotnet-host dotnet-hostfxr-7.0 dotnet-runtime-7.0 dotnet-runtime-deps-7.0 dotnet-sdk-7.0 dotnet-targeting-pack-7.0 libicu63 netstandard-targeting-pack-2.10 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.Need to get 156 MB of archives.After this operation, 616 MB of additional disk space will be used.Get:1 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 dotnet-runtime-deps-7.0 amd64 7.0.16-1 [2,890 B]Get:2 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 dotnet-host amd64 8.0.2-1 [37.6 kB]Get:3 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 dotnet-hostfxr-7.0 amd64 7.0.16-1 [145 kB]Get:4 http://mirrors.aliyun.com/debian buster/main amd64 libicu63 amd64 63.1-6+deb10u3 [8,293 kB]Get:5 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 dotnet-runtime-7.0 amd64 7.0.16-1 [23.2 MB]Get:6 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 aspnetcore-runtime-7.0 amd64 7.0.16-1 [7,065 kB]Get:7 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 dotnet-targeting-pack-7.0 amd64 7.0.16-1 [2,568 kB]Get:8 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 aspnetcore-targeting-pack-7.0 amd64 7.0.16-1 [1,525 kB]Get:9 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 dotnet-apphost-pack-7.0 amd64 7.0.16-1 [3,523 kB]Get:10 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 netstandard-targeting-pack-2.1 amd64 2.1.0-1 [1,476 kB]Get:11 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 dotnet-sdk-7.0 amd64 7.0.406-1 [108 MB]Fetched 156 MB in 2min 1s (1,291 kB/s)Selecting previously unselected package libicu63:amd64.(Reading database ... 10266 files and directories currently installed.)Preparing to unpack .../00-libicu63_63.1-6+deb10u3_amd64.deb ...Unpacking libicu63:amd64 (63.1-6+deb10u3) ...Selecting previously unselected package dotnet-runtime-deps-7.0.Preparing to unpack .../01-dotnet-runtime-deps-7.0_7.0.16-1_amd64.deb ...Unpacking dotnet-runtime-deps-7.0 (7.0.16-1) ...Selecting previously unselected package dotnet-host.Preparing to unpack .../02-dotnet-host_8.0.2-1_amd64.deb ...Unpacking dotnet-host (8.0.2-1) ...Selecting previously unselected package dotnet-hostfxr-7.0.Preparing to unpack .../03-dotnet-hostfxr-7.0_7.0.16-1_amd64.deb ...Unpacking dotnet-hostfxr-7.0 (7.0.16-1) ...Selecting previously unselected package dotnet-runtime-7.0.Preparing to unpack .../04-dotnet-runtime-7.0_7.0.16-1_amd64.deb ...Unpacking dotnet-runtime-7.0 (7.0.16-1) ...Selecting previously unselected package aspnetcore-runtime-7.0.Preparing to unpack .../05-aspnetcore-runtime-7.0_7.0.16-1_amd64.deb ...Unpacking aspnetcore-runtime-7.0 (7.0.16-1) ...Selecting previously unselected package dotnet-targeting-pack-7.0.Preparing to unpack .../06-dotnet-targeting-pack-7.0_7.0.16-1_amd64.deb ...Unpacking dotnet-targeting-pack-7.0 (7.0.16-1) ...Selecting previously unselected package aspnetcore-targeting-pack-7.0.Preparing to unpack .../07-aspnetcore-targeting-pack-7.0_7.0.16-1_amd64.deb ...Unpacking aspnetcore-targeting-pack-7.0 (7.0.16-1) ...Selecting previously unselected package dotnet-apphost-pack-7.0.Preparing to unpack .../08-dotnet-apphost-pack-7.0_7.0.16-1_amd64.deb ...Unpacking dotnet-apphost-pack-7.0 (7.0.16-1) ...Selecting previously unselected package netstandard-targeting-pack-2.1.Preparing to unpack .../09-netstandard-targeting-pack-2.1_2.1.0-1_amd64.deb ...Unpacking netstandard-targeting-pack-2.1 (2.1.0-1) ...Selecting previously unselected package dotnet-sdk-7.0.Preparing to unpack .../10-dotnet-sdk-7.0_7.0.406-1_amd64.deb ...Unpacking dotnet-sdk-7.0 (7.0.406-1) ...Setting up dotnet-host (8.0.2-1) ...Setting up netstandard-targeting-pack-2.1 (2.1.0-1) ...Setting up libicu63:amd64 (63.1-6+deb10u3) ...Setting up dotnet-targeting-pack-7.0 (7.0.16-1) ...Setting up dotnet-apphost-pack-7.0 (7.0.16-1) ...Setting up dotnet-hostfxr-7.0 (7.0.16-1) ...Setting up dotnet-runtime-deps-7.0 (7.0.16-1) ...Setting up aspnetcore-targeting-pack-7.0 (7.0.16-1) ...Setting up dotnet-runtime-7.0 (7.0.16-1) ...Setting up aspnetcore-runtime-7.0 (7.0.16-1) ...Setting up dotnet-sdk-7.0 (7.0.406-1) ...Processing triggers for libc-bin (2.36-9) ...
安装完成,输出 dotnet 命令测试一下
dotnet
输出如下代表成功
Usage: dotnet [options]Usage: dotnet [path-to-application]
Options: -h|--help Display help. --info Display .NET information. --list-sdks Display the installed SDKs. --list-runtimes Display the installed runtimes.
path-to-application: The path to an application .dll file to execute.

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。 欢迎转载、使用、重新发布,但务必保留文章署名 林德熙 (包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我 联系。