如何在终端中以其他bash用户身份登录?


16

我必须检查我的在nginx上本地运行的网页是否由于权限问题而无法正常工作。我的Web脚本以_www用户身份运行,因此我尝试切换到,_www但是这不起作用:

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

我如何在10.8.5中做到这一点?

Answers:


12

sudo失败,因为_www用户/usr/bin/false作为其外壳,从而导致会话结束,只要您切换用户。

解决方案是使用-s选项,该选项将执行您当前的shell而不是_www的shell:

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

刚刚在10.9系统上测试过,但在10.8上应该可以正常工作。


普通用户不宜使用sudo
CousinCocaine

1
@CousinCocaine定义正常吗?我们正常吗?
雷·福斯

16

用途login

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


1
我认为系统用户没有密码。它提示您输入密码,并且不起作用。
Maciej Sz 2014年

3
这是正确的方法。
CousinCocaine

正如OP所评论的那样,这对于没有密码的_www用户将不起作用(默认情况下,该用户将没有密码,也应该没有密码)。
mjturner
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.