在过去的几周里,我已经从单服务器设置为多服务器设置。我现在准备从原始服务器上卸载Let's Encrypt / Certbot 。(我已经使用HA Proxy设置了 SSL 终止。)
我试过了apt remove --purge letsencrypt
。但这显示了我仍然需要的包:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
bsdmainutils cpp-8 dh-python libapache2-mod-php7.3 libasan5 libbind9-161 libbison-dev libboost-iostreams1.67.0 libboost-system1.67.0 libc-dev-bin libcwidget3v5 libdns1104 libdns1110 libevent-2.1-6 libf2fs-format4 libf2fs5 libgfortran5
libicu63 libip6tc0 libiptc0 libirs161 libisc1100 libisc1105 libisccc161 libisccfg163 libisl19 liblinear3 libllvm7 liblua5.2-0 liblwres161 libmemcachedutil2 libmpdec2 libperl5.28 libprocps7 libpython3.7 libpython3.7-minimal
libpython3.7-stdlib linux-libc-dev ncal perl-modules-5.28 php-symfony-debug php7.3 php7.3-bcmath php7.3-fpm php7.3-mysql php7.3-pgsql php7.3-soap php8.0-memcached python3-asn1crypto python3-future python3-mock python3-pbr python3.7
python3.7-minimal usb.ids
Use 'apt autoremove' to remove them.
The following packages will be REMOVED:
letsencrypt*
0 upgraded, 0 newly installed, 1 to remove and 5 not upgraded.
After this operation, 30.7 kB disk space will be freed.
Do you want to continue? [Y/n]
我在 PHP7.3 的末尾,只剩下 1 个脚本在使用它。我不精通 Python。有人可以解释一下确定计算机不再需要的软件包列表的逻辑吗?
apt
跟踪每个包的安装,是因为它是被显式请求的,还是因为它是作为依赖项自动引入的。当所有需要它们的软件包本身都被删除时,自动安装的软件包成为自动删除的候选者。确定为什么包在特定上下文中变得可自动删除需要了解系统的历史;这里没有足够的信息可以说。
但是,没有理由惊慌:
apt
告诉您这些软件包是自动删除的候选者,而不是它会删除它们。仅当您要求apt
删除它们(apt autoremove
例如)时,才会删除这些包。实际上,如果您确认问题中的命令,则只会letsencrypt
删除。您可以通过将它们标记为手动安装来避免这种情况,例如使用