it-swarm.com.de

Erlaubnis für einige Dateien verweigert, auch mit Sudo und chmod 777

Ich hatte mehrere Male die Erlaubnis, eine Datei nicht zu bearbeiten. Auch wenn ich auf 777 gewechselt und die Datei mit Sudo geöffnet habe. Z.B. die Datei /sys/kernel/debug/vgaswitcheroo/switch in this Tutorial.

Erstens, wie ist das möglich? Zweitens, wie kann ich auf diese Art von Dateien zugreifen?

5
OrangeTux

Es reicht nicht aus, eine Leseberechtigung für eine Datei zu haben, um sie zu lesen. Sie müssen auch Leseberechtigung für das Verzeichnis haben, zu dem es gehört. Bei /sys/kernel/debug/vgaswitcheroo/switch ist das Problem /sys/kernel/debug, das standardmäßig nur von root gelesen werden kann:

$ ls -ld /sys/kernel/debug
drwx------ 22 root root 0 Nov 20 18:25 /sys/kernel/debug

Sie müssen chmod a+r /sys/kernel/debug eingeben, um auf den Inhalt dieses Verzeichnisses zugreifen zu können.

(Ich würde es nicht empfehlen, da der globale Zugriff auf /sys/kernel/debug nicht sicher ist, aber dies ist ein anderes Problem.)

Der häufigste Weg, auf solche Dateien zuzugreifen, ist die Verwendung einer Root-Shell:

Sudo -i
5