it-swarm.com.de

Zwergenfestung startet während des Upgrades

Wenn ich apt-get upgrade auf meinem Ubuntu 17.04-Rechner starte, startet es manchmal Dwarf Fortress von selbst.

Es ist schon mindestens zweimal passiert, also war es wahrscheinlich nicht nur eine Art einmalige Sache. Außerdem schien die Ausführung von apt-get upgrade unterbrochen zu sein, bis ich die Zwergenfestung manuell verließ, sodass dies höchstwahrscheinlich nicht auf etwas anderes zurückzuführen war, das in dieser Zeit lief.

Die Konsole zu dieser Zeit sagte Unpacking xxx., wobei xxx etwas mit mysql im Namen war. Ich weiß jedoch nicht genau, welches Paket, wie heute, apt-get upgrade viele mysql-bezogene Pakete aktualisiert hat.

Ich würde gerne wissen, was passiert und wie ich das verhindern kann. Vielen Dank für Ihre Ideen.

322
Adrijaned

Bei einer so seltsamen Frage ist es natürlich unmöglich, das mit Sicherheit zu sagen - aber ich esse meinen Hut, wenn meine erste Vermutung nicht stimmt. :)

Ich kann mir nur vorstellen, wie solche Dinge, die nichts miteinander zu tun haben, zusammenhängen könnten: Nachdem Sie Dwarf Fortress installiert (und extrahiert) haben, wollten Sie es sein, anstatt jedes Mal in das Verzeichnis zu gehen und es mit ./df auszuführen Es kann von überall ausgeführt werden, wie jeder alte Befehl. Sie haben das Zwergenfestungsverzeichnis zu Ihrem $PATH, vor Systemverzeichnis hinzugefügt, vielleicht durch Zufall, vielleicht weil Sie bemerkt haben, dass es nicht anders funktioniert hat, und stattdessen nur Informationen zu erhalten Ihre Dateisysteme.

Die ausführbare Datei von Dwarf Fortress heißt df. Dies ist auch der Name eines Systemtools, mit dem der Speicherplatzbedarf Ihrer Dateisysteme angezeigt und eine Kollision verursacht wird. Wenn Sie "df" eingeben, wird "Dwarf Fortress" als Schatten für das System-Tool angezeigt. Wenn also ein Skript beispielsweise prüfen möchte, ob genügend Speicherplatz zum Entpacken eines Archivs vorhanden ist, müssen Sie nicht Beim Aufrufen von df - dem System-Tool - wird stattdessen Dwarf Fortress gestartet. Und nachdem Sie die Zwergenfestung verlassen haben, wird das arme kleine Drehbuch sehr verwirrt sein, warum es nicht die angeforderten Datenträgernutzungsinformationen erhalten hat.

Wie auch immer, danke für das Lachen, dies muss eines der lustigsten Probleme sein, die ich je bei StackExchange gesehen habe. :)

550
Aleksi Torhamo

Meine Vermutung ähnelt Aleksis , aber ich vermute, Sie haben die Zwergenfestung möglicherweise auf /usr/local/bin oder /usr/bin (und hoffentlich nicht auf /bin) verschoben.

Versuchen Sie, Sudo which df in Ihrem Terminal auszuführen. Wenn /bin/df nicht angezeigt wird, versuchen Sie, die in der Ausgabe which angegebene Datei nach /usr/games/ zu verschieben (Sie können das Spiel in Zukunft ausführen, indem Sie /usr/games/df ausführen). Apt sollte danach wieder funktionieren.

======

Versuchen Sie andernfalls in dem Szenario, in dem Sudo which df/bin/df sagt, /bin/df auszuführen. Wenn dies mit dem Spiel überschrieben wurde, müssen Sie die Spiel-Binärdatei wie oben beschrieben und Sudo apt-get install --reinstall coreutils verschieben.

Wenn dies fehlschlägt, weil df fehlt, müssen Sie möglicherweise drastischere Maßnahmen ergreifen (z. B. ein gefälschtes Skript erstellen, um df vorübergehend zu ersetzen, oder das Paket manuell herunterladen und die df-Binärdatei daraus extrahieren).

64
maccam94