当我从 Windows 转到 Linux 时,我很幸运地拥有了软件包管理器。大多数时候,我的发行版(目前是 Debian 12)的官方存储库都会有我需要的软件包。但有时却没有,这意味着如果我想安装某些应用程序,我必须在不通过软件包管理器的情况下进行安装;也许可以通过克隆 GitHub 存储库并从源代码构建,或者使用wget
或curl
从开发人员那里获取专用的安装程序。
这样做安全吗?我不是在问这些软件包的可信度。而是,如果我这样做,会破坏软件包管理系统吗?例如,当我使用发行版的软件包管理器执行系统范围的更新时,以这种方式安装的软件包会被更新吗?我可以使用软件包管理器卸载它们吗?
这是一个具体的例子。假设我想安装 Rust。Rust 官方网站建议 Linux 用户运行以下命令。
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
换句话说,rustup.rs
从网站下载文件,然后运行它来安装 Rust。这个例子对我来说更加令人困惑,因为 Debian确实在存储库中提供rustup
了软件包。那么我应该使用 Debian 软件包,还是应该按照网站上的说明操作?
这是另一个例子。假设我想安装 Minecraft,但 Debian 存储库中没有。因此我必须访问 Minecraft 网站,该网站允许我下载文件minecraft.deb
。如果我的猜测正确,那么我将使用apt
它来安装它。在这种情况下,包管理器会跟踪包吗?我是否可以卸载它,或者使用它来更新它apt
?
感谢您帮助我解决了这个困扰我很长时间的困惑。