Wenn ich apt-get upgrade
auf meinem Ubuntu 17.04-Rechner arbeite, startet er manchmal die Zwergenfestung von selbst.
Es ist schon mindestens zweimal passiert, also war es wahrscheinlich nicht nur eine Art einmalige Sache. Außerdem apt-get upgrade
schien die Ausführung von unterbrochen zu sein, bis ich die Zwergenfestung manuell verließ, sodass es höchstwahrscheinlich nicht auf etwas anderes zurückzuführen war, das in dieser Zeit lief.
Die Konsole sagte damals, Unpacking xxx.
wo xxx
etwas mit mysql
Namen sei. 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.
apt
upgrade
package-management
games
Adrijaned
quelle
quelle
apt-get upgrade
im Terminal gelaufen sind, die Spiele beginnen?Antworten:
Bei einer so verrückten Frage ist es natürlich unmöglich, das mit Sicherheit zu sagen - aber ich esse meinen Hut, wenn meine erste Vermutung nicht stimmt. :)
Der einzige Weg, wie ich mir vorstellen kann, wie solche Dinge miteinander verbunden werden können, ist folgender: Nachdem Sie Dwarf Fortress installiert (und extrahiert) haben
./df
, wollten Sie es ausführen können , anstatt jedes Mal in das Verzeichnis zu gehen und es damit auszuführen überall, wie jeder alte Befehl. Sie hinzugefügt , um die Dwarf Fortress Verzeichnis zu Ihrem$PATH
, bevor den Systemverzeichnissen, vielleicht zufällig, vielleicht weil Sie bemerkte es nicht anders funktioniert, und Sie würden stattdessen nur Informationen über die Dateisysteme erhalten.Die ausführbare Datei von Dwarf Fortress wird benannt
df
. Dies ist auch der Name eines Systemtools, mit dem der Speicherplatzbedarf Ihrer Dateisysteme angezeigt und eine Kollision verursacht wird. Indem wir es so , dass , wenn Sie schreibendf
, Dwarf Fortress beginnt, können Sie das System - Tool beschattet haben, so dass , wenn ein Skript will - sagen wir - wenn Sie zum Entpacken eines Archivs über genügend freien Speicherplatz haben, statt den Aufrufdf
- das System - Tool - Stattdessen wird die Zwergenfestung 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. :)
quelle
Meine Vermutung ähnelt der von Aleksi , aber ich vermute, dass Sie die Zwergenfestung auf
/usr/local/bin
oder verschoben haben/usr/bin
(und hoffentlich nicht/bin
).Versuchen Sie,
sudo which df
in Ihrem Terminal zu laufen . Wenn dies nicht der Fall ist/bin/df
, verschieben Sie die in derwhich
Ausgabe angegebene Datei in/usr/games/
(Sie können das Spiel in Zukunft ausführen, indem Sie ausführen/usr/games/df
). Apt sollte danach wieder funktionieren.======
Versuchen Sie andernfalls in dem Szenario, in dem es
sudo which df
heißt/bin/df
, auszuführen/bin/df
. Wenn dies mit dem Spiel überschrieben wurde, müssen Sie die Spiel-Binärdatei wie oben beschrieben verschiebensudo apt-get install --reinstall coreutils
.Wenn dies fehlschlägt, weil
df
es fehlt, müssen Sie möglicherweise drastischere Maßnahmen ergreifen (z. B. ein falsches Skript erstellen, um df vorübergehend zu ersetzen, oder das Paket manuell herunterladen und die df-Binärdatei daraus extrahieren).quelle
PATH
wie in dieser Antwort vorzunehmen.sudo which -a df
, alledf
im Pfad gefundenen Befehle anzuzeigen.apt-get
noch?/etc/sudoers
hat einesecure_path
Variable, um Sicherheitsprobleme bei Benutzern zu vermeiden, die ihren PATH ändern). Ich bin damit einverstanden, dass die Erkenntnis, dass die Zwergenfestungs-Binärdatei Vorrang in der PATH-Auflösung hat, die wichtigste Erkenntnis ist.