• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

kein Zugriff mehr auf System

Crashy

Newbie
Ich hatte das Problem, dass ich einen Ordner nicht löschen konnte, weil die Berechtigung fehlte.
Also habe ich Terminal geöffnet, zu dem Pfad gewechselt und dann Folgendes eingegeben:
sudo chmod 0644 /.*
danach konnte ich auf keinen Ordner mehr zugreifen und nach Neustart bekomme ich den Desktop von suse nicht mehr.
Was war falsch daran und wie kann ich das beheben ?
Danke im Voraus.
 

Sauerland

Ultimate Guru
https://www.opensuse-forum.de/thread/39311-kein-zugriff-mehr-auf-system/?postID=114028#post114028

Bitte mal lesen:
http://linux-club.de/forum/viewtopic.php?f=86&t=76935&sid=81bd6269627559f83a84b797e5a4c632
 

marce

Guru
Du bist sicher, daß das der exakte Befehl war, den Du eingegeben hast? (und das zu 100%, beim Barte Deiner Mutter)?

Davon hängt nämlich ab, ob Du noch eine Chance hast, mit vertretbarem Aufwand die Installation zu retten...
 
OP
C

Crashy

Newbie
Zitat eines Users aus einem anderen Forum:
/.* bezeichnet alle Dateien im Wurzelverzeichnis, deren Namen mit einem Punkt beginnen.
Du wolltest ./* schreiben, was im aktuellen Verzeichnis ./ und dort * alle Dateien meint.

Da du das bei openSUSE verpönte sudo angewendet hast, hast du damit im Wurzelverzeichnis wirksam gepfuscht.
Du wirst du als root das wieder rückgängig machen müssen.

Eigentlich wolltest du chmod -R 644 ./*
-R meint "recursiv"

Nun soll ich das machen:
Du kannst unter dem Menupunkt "erweitert ...." mit e in den Grub- Editor wechseln.
Dort mit dem Cursor bis zu der Zeile scrollen, die mit "linux" beginnt, dort an das Ende springen und init 3 (beachte das Leerzeichen vor init) anfügen.
Mit f10 bootest du dann in eine bash, bist root und kannst weiter putt machen.

Ich weiß aber nicht, mit welchem Befehl ich das rückgängig machen kann.
 

marce

Guru
welche Linux-Distribution hast Du genau? Und nochmals - war das exkt der Befehl den Du abgesetzt hast?

Hier bei mir sieht's so aus:
Code:
marce@radagast /]$ ls -la
insgesamt 72
dr-xr-xr-x.  18 root root  4096 24. Sep 12:16 .
dr-xr-xr-x.  18 root root  4096 24. Sep 12:16 ..
-rw-r--r--    1 root root     0 29. Aug 00:45 .autorelabel
lrwxrwxrwx    1 root root    20 24. Sep 12:16 backup -> /mnt/backup/radagast
lrwxrwxrwx.   1 root root     7 10. Feb 2017  bin -> usr/bin
dr-xr-xr-x.   7 root root  4096 26. Okt 15:49 boot
drwxr-xr-x   20 root root  4040 26. Okt 15:51 dev
drwxr-xr-x. 140 root root 12288 26. Okt 15:59 etc
drwxr-xr-x.   5 root root  4096 29. Aug 14:59 home
lrwxrwxrwx.   1 root root     7 10. Feb 2017  lib -> usr/lib
lrwxrwxrwx.   1 root root     9 10. Feb 2017  lib64 -> usr/lib64
drwx------.   2 root root 16384  5. Jul 23:50 lost+found
drwxr-xr-x.   2 root root  4096 10. Feb 2017  media
drwxr-xr-x.   3 root root  4096 24. Sep 12:16 mnt
drwxr-xr-x.   3 root root  4096 29. Aug 19:27 opt
dr-xr-xr-x  177 root root     0 26. Okt 15:50 proc
dr-xr-x---.  19 root root  4096 26. Okt 15:50 root
drwxr-xr-x   41 root root  1180 26. Okt 16:13 run
lrwxrwxrwx.   1 root root     8 10. Feb 2017  sbin -> usr/sbin
drwxr-xr-x.   2 root root  4096 10. Feb 2017  srv
dr-xr-xr-x   13 root root     0 26. Okt 15:51 sys
drwxrwxrwt   14 root root   320 26. Okt 18:02 tmp
drwxr-xr-x.  12 root root  4096  6. Jul 00:01 usr
drwxr-xr-x.  22 root root  4096  1. Sep 15:52 var
- Fedora.

... sprich dann per chmod und entsprechender Maske die jeweiligen Verzeichnisse korrigieren. Aber nur das Verzeichnis, nichts rekursiv und so... - wenn der Befehl oben so abgesetzt wurde.
 
OP
C

Crashy

Newbie
Kannst Du mir die Befehle für z.B. sbin und root nennen ?
habe es z.B. mit chmod ugo=rwxrwxrwx /root und bei den anderen entsprechend gemacht.

Leider steht überall d und nicht bei manchen l

Bin gut beim Kaputtmachen, aber nicht beim Reparieren :irre:
 

marce

Guru
hm, das sieht aber nicht nach chmod 644 aus, was dort zu sehen ist.

Prüf man das Home-Verzeichnis des Users.
 
OP
C

Crashy

Newbie
Habe einen Snapshot gestartet und die Rechte so vergeben, wie dort.
Nun geht es wieder
 
A

Anonymous

Gast
Crashy schrieb:
Der Befehl war:
sudo chmod 0644 /.*
Auch wenn das Problem schon behoben, hier noch die Erklärung was das Problem war.

Hier ist folgendes passiert, der Befehl ist auf alle Dateien im Rootverzeichnis selbst, mit einem Punkt am Anfang ausgeführt worden.

Versteckte Dateien und Verzeichnisse die normalerweise einen Punkt am Anfang haben, kann es dort geben( passiert zB schonmal manchmal beim arbeiten als root) , solche Dateien muss es dort nicht geben, und wenn es sie gibt sind sie ehr unwichtig und haben nicht das Potential größere Probleme zu erzegen. Wenn es solche Dateien gegeben hätte und du dort die Rechte geändert hättest, hättest du keinen Problem bemerkt, wahrscheinlich hättest du dabei nur zufällig und unbeabsichtigt entstandene versteckter Dateien oder Verzeichnisse von Root zusätzliche Rechte vergeben, so das sie anschließend auch als andere User lesbar gewesen währen.

Allerdings hat jedes Verzeichnis einen Dateinamen auf sich selbst, das ist bei der Ausgabe von "ls -la" die Zeile mit dem Punkt.
und einen Dateinamen der ein Hardlink auf das darunterliegende Verzeichnis ist. das ist bei "ls -la" die Zeile mit dem PunktPunkt.

Code:
ULTRA-01:/ # ls -al
total 316
drwxr-xr-x  32 root root  4096 Oct 26 19:56 .
drwxr-xr-x  32 root root  4096 Oct 26 19:56 ..
Im der Wurzel jedes Verzeichnisses, ist die Inode dabei die gleiche und bei ext-Dateisysteme immer Inode 2 , in Unterverzeichnissen sind die Inode dieser beiden Verzeichnisdateien unterschiedlich.
Was bei dir passiert ist, du hast diese beiden (eigentlich ist es nur eine, da ja hier auf die selbe Inode 2 zugegriffen wird) die Ausführungsrechte entzogen.
genau das ist auch in deinem Bild so ersichtlich.

Siehe hier für die Funktion der Ausführungsrechte bei Verzeichnissen.
Das macht natürlich Probleme

robi
 
Oben