Ich versuche, einen neuen Benutzer auf einem Centos 6-System zu erstellen.
Zuerst tue ich
useradd kevin
Dann habe ich versucht, Befehle als dieser Benutzer auszuführen
su - kevin
Ich erhalte jedoch die folgenden Fehlermeldungen
-bash: /dev/null: Permission denied
-bash: /dev/null: Permission denied
-bash: /dev/null: Permission denied
-bash: /dev/null: Permission denied
-bash: /dev/null: Permission denied
-bash: /dev/null: Permission denied
[kevin@gazelle ~]$
Und ich kann nicht viel als dieser Benutzer tun.
Die Berechtigungen für /dev/null
sind wie folgt:
-rwxr-xr-x 1 root root 9 Jul 25 17:07 null
Etwa genauso wie auf meinem Mac,
crw-rw-rw- 1 root wheel 3, 2 Jul 25 14:08 null
Es ist möglich , aber sehr unwahrscheinlich, dass ich dev berührt habe.
Als Root-Benutzer habe ich versucht, Folgendes kevin
zur root
Gruppe hinzuzufügen :
usermod -a -G root kevin
Ich erhalte jedoch immer noch die /dev/null
Erlaubnis, Fehler zu verweigern.
Warum kann der neue Benutzer nicht schreiben /dev/null
?
Zu welchen Gruppen soll der neue Benutzer gehören?
Bin ich nicht korrekt imitiert?
Gibt es eine Anleitung für Anfänger zum Einrichten von Benutzern / Berechtigungen unter Linux?
quelle
cat /dev/null
, sieht es nach etwas aus, das Sie kürzlich benutzt haben?Antworten:
Offensichtlich hat jemand eine reguläre Datei nach / dev / null verschoben. Durch einen Neustart wird es neu erstellt oder ausgeführt
Wie @Flow in einem Kommentar vermerkt hat, müssen Sie dies
root
tun.quelle
Dies sollte das Problem beheben (als root):
quelle
Die von Mark vorgeschlagene Lösung funktionierte unter OpenBSD nicht. jedoch
hat den Trick gemacht. Ich habe dies unter OpenBSD 5.6 getestet. Wenn die akzeptierte Antwort ausgeführt wird, blockiert / dev / null jeden Code, der daraus gelesen wird, und macht ihn unsicher.
quelle
/dev/null
und es gibt keinen Standard. OP fragte nach CentOS 6. Linux verwendet hat1,3
für / dev / null zu gehen zurück mindestens 2001 auf FreeBSD, ich habe gesehen0,6
,15,0
,17,0
, und20,0
. OpenBSD verwendet2,2
. Unter OpenBSD müssen Sie die Zahlen eigentlich nicht kennen. du kannst rennen# cd /dev; ./MAKEDEV std
.mknod
Befehl finden, indem Sie die Handbücher überprüfen (wenn Sie Glück haben, sind die Informationen dort) oder indem Sie die Kernel-Header überprüfen.Dies passierte mir unter Windows in der Ubuntu-Anwendung, als ich versuchte, ein Skript auszuführen, in das geschrieben wurde
/dev/null
. Berechtigungen waren für beide/dev
und korrekt/dev/null
.Es stellte sich heraus, dass das Problem Windows-Zeilenumbrüche in der Skriptdatei waren. Laufen :
dos2unix.exe c:\path\to\script.sh
Löste das Problem für mich.
quelle
Die Antwort von Mac OS X für die Nachwelt veröffentlichen ...
quelle