GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie chmod ohne /usr/bin/chmod?

Heute wurde mir von einem Unix-Trainer eine Geschichte erzählt, in der das Root-Passwort an die Schüler weitergegeben wurde und einer der Jungs die Ausführungserlaubnis von /usr/bin/chmod entfernte selbst. Wie stellt man chmod wieder her in diesem Fall wieder ausführbar machen? Nehmen wir an, es von einer externen Quelle zu bekommen oder es neu zu kompilieren ist keine bevorzugte Option, gibt es einen intelligenten Hack, der diesen chmod wiederherstellen kann selbst?

Beachten Sie, dass dies vor langer Zeit passiert ist und ich nicht nach einer Lösung für ein aktuelles Problem suche, sondern nur neugierig bin, welche Möglichkeiten Unix uns bietet, um ein solches Problem zu umgehen.

Akzeptierte Antwort:

Sie können den Loader direkt ausführen und ihm den Befehl übergeben, den Sie ausführen möchten:

/lib/ld-linux.so /bin/chmod +x /bin/chmod

Ihr Pfad zum Loader kann variieren. Auf einem 64-Bit-System müssen Sie das richtige auswählen, basierend darauf, wie chmod wurde zusammengestellt; die 64-Bit-Version heißt so etwas wie /lib64/ld-linux-x86-64.so.2


Linux
  1. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  2. Wie man einen Knall wiederholt!?

  3. Wie verwende ich chmod, um die Dateiberechtigung zu ändern?

  4. Installieren Sie Binärdateien in /bin, /sbin, /usr/bin und /usr/sbin, Interaktionen mit --prefix und DESTDIR

  5. Berechtigung für Composer in /usr/local/bin/ verweigert

Was ist der Unterschied zwischen #!/usr/bin/env bash und #!/usr/bin/bash?

Was bedeuten /usr/sbin, /usr/local/sbin und /usr/local/bin?

Wie kann ich ein chmod im etc-Verzeichnis zurücksetzen?

/bin Inhalt nach /usr/bin verschoben, rückgängig machen möglich?

Sollten Websites gemäß der empfohlenen Verwendung in /var/ oder /usr/ leben?

#!/bin/sh vs. #!/bin/bash für maximale Portabilität