当前位置: 首页>>技术问答>>正文


在apt-get升级期间开始的矮人堡垒

, , , ,

问题描述

当我在我的Ubuntu 17.04机器上运行apt-get upgrade时,有时会自行启动Dwarf Fortress

它已经发生过至少两次,所以这可能不仅仅是某种一次性事情。此外,apt-get upgrade的执行似乎暂停,直到我手动退出矮人堡垒,所以它最有可能不是由那个时候运行的其他东西引起的。

当时的控制台表示Unpacking xxx.,其中xxxmysql的名称。然而我不知道哪一个包与今天一样,apt-get upgrade升级了很多与mysql相关的包。

我想知道发生了什么,以及如何阻止它发生。感谢您的想法。

最佳解决思路

虽然这个问题很奇怪,但当然不可能说 – 但如果我的第一次预感不正确,我会吃掉我的帽子。 🙂

我能想到的唯一方法是,这样的无关联的东西可以联系起来:在安装(好,提取)矮人堡垒之后,而不是每次都进入目录并用./df运行目录,你想能够运行它从任何地方,像任何旧的命令。在系统目录之前,你可能偶然地将Dwarf Fortress目录添加到$PATH中,也许是因为你注意到它不起作用,而你只是获得关于你的文件系统的信息。

矮人堡垒的可执行文件名为df,它也是用于显示文件系统磁盘空间使用情况的系统工具的名称,用于创建冲突。通过这样做,当你键入df时,矮人要塞启动,你已经隐藏了系统工具,所以当一个脚本想要 – 比方说 – 检查你是否有足够的可用空间来解压档案,而不是调用df – 系统工具 – 它会启动矮人堡垒。在你离开矮人堡垒之后,这个可怜的小脚本会很困惑,为什么它没有提供它要求的磁盘使用信息。

无论如何,感谢大家的笑声,这必须是我见过的StackExchange上最有趣的问题之一。 🙂

次佳解决思路

我的预感与Aleksi’s类似,但我怀疑你可能已经将矮人堡垒二进制移到了/usr/local/bin/usr/bin(希望不是/bin)。

尝试在终端中运行sudo which df。如果它不说/bin/df,请尝试将which输出中指定的文件移动到/usr/games/(您将可以通过运行/usr/games/df运行游戏)。之后,Apt应该再次工作。

======

否则,在sudo which df表示/bin/df的情况下,请尝试运行/bin/df。如果这已被游戏覆盖,则需要移动游戏二进制文件(如上所述)和sudo apt-get install --reinstall coreutils

如果由于df丢失而导致失败,则可能需要采取更严厉的措施(例如创建一个伪脚本以临时替换df,或手动下载软件包并从中提取df二进制文件)。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/87.html,未经允许,请勿转载。