Hallo,
ich hatte gerade durch eine Unatchsamkeit ein
rsync /foo/bar/ /
angestoßen. An sich kein Problem, da innerhalb des Quellverzeichnisses nichts ist, was wichtige Dateien hätte überschreiebn können. Allerdings wurden scheinbar Eigentum und Rechte von /foo/bar/ (770 und im Besitz von bar:bar) auf / übertragen, was dummerweise dazu führte, dass sich Nutzer nicht mehr einloggen konnten (Permission denied etc.). Ich habe dann kurzerhand die Rechte von /foo/bar/ auf 755 und das Eigentum auf Root übertragen und den rsync-Befehl noch einmal aufgerufen, um / zu korrigieren. Hat geklappt. Aber wie hätte ich die Rechte von / setzen können? Wie kann ich sie überhaupt überprüfen, ohne die Platte extern zu mounten?
Gruß, Daniel
Am 13.12.21 um 14:30 schrieb Daniel Leidert:
Hallo,
ich hatte gerade durch eine Unatchsamkeit ein
rsync /foo/bar/ /
angestoßen. An sich kein Problem, da innerhalb des Quellverzeichnisses nichts ist, was wichtige Dateien hätte überschreiebn können. Allerdings wurden scheinbar Eigentum und Rechte von /foo/bar/ (770 und im Besitz von bar:bar) auf / übertragen, was dummerweise dazu führte, dass sich Nutzer nicht mehr einloggen konnten (Permission denied etc.). Ich habe dann kurzerhand die Rechte von /foo/bar/ auf 755 und das Eigentum auf Root übertragen und den rsync-Befehl noch einmal aufgerufen, um / zu korrigieren.
$ ls -ld / drwxr-xr-x 26 root root 4096 13. Dez 00:06 /
Hat geklappt. Aber wie hätte ich die Rechte von / setzen können?
Also ich kann als root mit chmod und chown die Rechte und Eigentümer von / setzen. Wenn / irgendjemand anderem gehört kann der das dann auch. Wenn Du also noch irgendwo eine root-shell offen gahabt hättest wäre das kein Problem gewesen. Aber nur von dort oder als bar oder jemand mit Gruppe bar.
Wie kann ich sie überhaupt überprüfen, ohne die Platte extern zu mounten?
Siehe oben. In Deinem Fall vermutlich nur mit dem Kernel-Parameter init=/bin/sh (oder eine andere Dir genehme Shell) booten, die Rechte von / anpassen
Dann bist Du erstmal UID 0 und darfst alles.
Zum Schluss nochmal booten (mount -o remount,ro und sync nicht vergessen). Das ist halt blöd bei einem Server.
Am Montag, dem 13.12.2021 um 15:44 +0100 schrieb Tobias Schlemmer:
[..]
$ ls -ld / drwxr-xr-x 26 root root 4096 13. Dez 00:06 /
Hat geklappt. Aber wie hätte ich die Rechte von / setzen können?
Also ich kann als root mit chmod und chown die Rechte und Eigentümer von / setzen.
Ich habe mich davon leiten lassen, dass ich sie mit ls nicht angezeigt bekam und stand jetzt wirklich einfach ahnungslos da. Danke für deine Hinweise.
Wenn / irgendjemand anderem gehört kann der das dann auch. Wenn Du also noch irgendwo eine root-shell offen gahabt hättest wäre das kein Problem gewesen.
Hatte ich. Nun weiß ich auch, dass ich chown/chmod nutzen kann, wenn mir das nochmal passiert.
[..]
Siehe oben. In Deinem Fall vermutlich nur mit dem Kernel-Parameter init=/bin/sh (oder eine andere Dir genehme Shell) booten, die Rechte von / anpassen
Oh, wow. Das wusste ich bisher nicht, dass das geht. Das ist nützlich.
Gruß, Daniel
lug-dd@mailman.schlittermann.de