Wie melde ich mich als anderer Bash-Benutzer im Terminal an?

16

Ich muss überprüfen, ob meine lokal auf nginx ausgeführte Webseite aufgrund von Berechtigungsproblemen nicht funktioniert. Meine Web-Skripte werden als _wwwBenutzer ausgeführt, daher habe ich versucht, zu zu wechseln. _wwwDies funktioniert jedoch nicht:

maciek@macus:~$ sudo su - _www
Password:
maciek@macus:~$ whoami
maciek

Wie kann ich das in 10.8.5 machen?

Maciej Sz
quelle

Antworten:

12

Das sudoschlägt fehl , weil der _wwwBenutzer hat /usr/bin/falseals seine Schale, so dass die Sitzung zu Ende, sobald Sie haben schalten Benutzer.

Die Lösung besteht darin, die -sOption zu verwenden, die Ihre aktuelle Shell anstelle der Shell von ausführt _www:

$ sudo -s -u _www
Password:
$ whoami
_www

Ich habe es gerade auf einem 10.9-System getestet, aber es sollte auf 10.8 gut funktionieren.

mjturner
quelle
normale Benutzer sollten nicht verwenden sudo.
CousinCocaine
1
@CousinCocaine normal definieren? sind wir normal
Ray Foss
16

Verwendung login:

$ login
login: username
Password:
Last login: Day Month Date HH:MM:SS on ttys000
$ whoami
username

GRG
quelle
1
Ich glaube nicht, dass Systembenutzer Passwörter haben. Es fordert zur Eingabe eines Kennworts auf und leer funktioniert nicht.
Maciej Sz
3
Dies ist der richtige Weg, um es zu tun.
CousinCocaine
Wie das OP kommentierte, funktioniert dies nicht für Benutzer, die keine Passwörter haben (die der _wwwBenutzer standardmäßig nicht haben wird oder sollte).
MJTURNER