尝试 Debian 的最大理由可能是它的稳定性。为了不破坏这种稳定性,我们必须遵循一定的理念,即始终从官方 Debian 存储库安装软件,并且永远不要进行安装来自您在互联网上找到的随机 tarball 的内容。
然而,我还不清楚我是否也应该将这种心态应用于预编译软件。我已经通过 tarball 解压安装了 Apache OpenOffice 和 PyCharm tar -xvzf file.tar.gz
。之后,我要么已经能够运行该程序,要么必须安装一些.deb
文件(我想这符合 Debian 哲学?),而无需“进行安装”。
我想安装“随机”.deb
文件可能会弄乱我的系统,但除此之外,有什么方法可以通过这种方式破坏我的系统吗?
答案1
这Debian 社会契约第 4 节说
我们的首要任务是我们的用户和免费软件
我们将以用户和自由软件社区的需求为指导。我们将把他们的利益放在第一位。我们将支持用户在多种不同类型的计算环境中进行操作的需求。我们不会反对旨在在 Debian 系统上使用的非自由作品,也不会试图向创建或使用此类作品的人收取费用。我们将允许其他人创建包含 Debian 系统和其他作品的发行版,而无需向我们支付任何费用。为了促进这些目标,我们将提供一个由高质量材料组成的集成系统,没有任何法律限制会阻止该系统的此类使用。
所以我不会说 Debian 对你的做法有任何反对。当然安装软件应该/opt
就可以了;将二进制文件链接到/usr/local/bin
而不是链接到 可能更好/usr/bin
,但这只是一个小细节。 (/usr/bin
应该是包管理器的专属域,但它是您的系统。)
当然,可能还有更多“类似 Debian”的做事方式,但这取决于您的具体用例。我建议使用打包的自由办公室而不是 Apache 的 OpenOffice。安装“随机”软件包不会破坏您的系统,只要它们来自 Debian 档案即可。无论您是否使用 Debian 软件包,都有无数种方法可以破坏您的系统;如果您只使用 Debian 软件包,Debian 开发人员会尽力避免这种情况发生,但没有办法保证......
如果您希望保持系统的稳定性:
- 切勿用非打包内容覆盖包;
- 不要安装非打包软件
/usr
(除了/usr/local
); - 小心 initscripts 或 systemd 单元;
- 不要从随机存储库(或除主“套件”存储库之外的 Debian 存储库)安装软件包 - 因此不要混合
stable
等testing
,除非您知道自己在做什么)。
遵循这些规则,您应该足够安全。您可以在 Debian 提供的系统之上安装软件,无论是预编译的还是您自己编译的。
答案2
“随机 deb”有两个区别。
- 有一种自然的卸载方法,您知道它的存在。 (我认为标准 autoconf 项目提供了
make uninstall
,但它远非通用)。 - 包使用的名称可能与其他包冲突。如果文件名冲突,您会在安装时收到警告,所以这是一个很好的改进。但如果包名称冲突,您可能会得到非常混乱的结果。
检测(某些类型的)文件名冲突可能是一种有用的安全增强功能。它会阻止您覆盖 Debian 软件包已提供的某些系统文件。卸载也非常有用。但是……如果我们使用“随机 deb”和“不破坏稳定性”等更强硬的词呢?那么我会说不,这和 原理上没有那么大的区别make install
。
从 tarball 运行单独的程序往往不会造成太大的干扰。然而 Debian 的第二个原则是提供安全更新。我建议不要使用任何打开 Office 文件的可能性不安全、无人维护的软件你提到的。因此,在大多数情况下,官方 (LibreOffice) 软件包会更好。
称其为“Debian 哲学”有点言过其实。这并不是 Debian 独有的。您可以采取与 Ubuntu(LTS 或其他)用户相同的态度,我认为这是一个很好的起点。而且 Debian 有更深层次的哲学,这更配得上这个词:)。
就我个人而言,我在运行 Debian 的系统上希望 Ubuntu LTS 也能照顾我。我避免使用 Ubuntu 的原因是他们自己编造了一些东西,这并没有给我留下深刻的印象,而且我也没有兴趣处理它。 (“Unity”,Mir,对 systemd 的坏话。我希望我的 wifi 保持开放。他们集成驱动程序的方式让我担心长期维护)。