矮人要塞在 apt-get 升级期间开始

Adr*_*ned 322 upgrade package-management apt games

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

它至少已经发生了两次,所以它可能不仅仅是某种一次性的事情。另外,在apt-get upgrade我手动退出矮人要塞之前,它的执行似乎暂停了,所以它很可能不是由当时运行的其他东西引起的。

当时的控制台说Unpacking xxx.哪里xxxmysql名字的东西。但是我不知道具体是哪个包,今天apt-get upgrade升级了很多与mysql相关的包。

我想知道会发生什么以及如何阻止它发生。

小智 554

有这样一个奇怪的问题,当然不可能肯定地说——但如果我的第一个预感不正确,我会吃掉我的帽子。:)

我能想到的唯一方法是如何链接这些不相关的东西:在安装(好吧,解压)矮人堡垒之后,与其每次都转到目录并使用 运行它./df,您希望能够从任何地方,就像任何旧命令一样。您将 Dwarf Fortress 目录添加到您的$PATH,系统目录之前,也许是偶然的,也许是因为您注意到它在其他情况下不起作用,而您只是获取有关您的文件系统的信息。

Dwarf Fortress 的可执行文件名为df,它也是一个系统工具的名称,用于显示文件系统的磁盘空间使用情况,从而产生冲突。通过设置,当您键入df,Dwarf Fortress 启动时,您已经隐藏了系统工具,因此当脚本想要 - 假设 - 检查您是否有足够的可用空间来解压存档,而不是调用df- 系统工具- 它会改为启动矮人要塞。在你退出矮人要塞后,这个可怜的小脚本会很困惑为什么它没有得到它所要求的磁盘使用信息。

无论如何,谢谢你的笑声,这一定是我在 StackExchange 上见过的最有趣的问题之一。:)


mac*_*m94 63

我的预感与Aleksi 的相似,但我怀疑您可能已将 Dwarf Fortress 二进制文件移动到/usr/local/bin/usr/bin(希望不是/bin)。

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

======

否则,在sudo which df说的情况下/bin/df,尝试运行/bin/df。如果它已被游戏覆盖,则您需要如上所述移动游戏二进制文件,并且sudo apt-get install --reinstall coreutils.

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

  • 具有讽刺意味的是,提问者对已接受答案的评论证实了提问者所做的事情,并带有符号链接,而不是像该答案那样修改“PATH”。 (7认同)
  • 更好的命令可能是 `sudo which -a df` 来查看路径中找到的所有 `df` 命令。 (2认同)