Làm thế nào để đăng nhập như một người dùng bash khác trong thiết bị đầu cuối?


16

Tôi phải kiểm tra xem trang web của tôi chạy cục bộ trên nginx không hoạt động do vấn đề cấp phép. Các tập lệnh web của tôi đang chạy với tư cách là _wwwngười dùng, vì vậy tôi đã cố gắng chuyển sang _wwwnhưng điều này không hoạt động:

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

Làm thế nào tôi có thể làm điều này trong 10.8.5?

Câu trả lời:


12

Việc sudonày không thành công vì _wwwngười dùng có /usr/bin/falsevỏ của nó, khiến phiên kết thúc ngay khi bạn chuyển người dùng.

Giải pháp là sử dụng -stùy chọn, sẽ thực thi trình bao hiện tại của bạn thay vì trình _wwwbao:

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

Chỉ cần thử nghiệm trên hệ thống 10.9 nhưng nó sẽ hoạt động tốt vào ngày 10.8.


Người dùng bình thường không nên sử dụng sudo.
CousinCocaine

1
@CousinCocaine định nghĩa bình thường? chúng ta có bình thường không
Ray Foss

16

Sử dụng login:

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


1
Tôi không nghĩ rằng người dùng hệ thống có mật khẩu. Nó nhắc mật khẩu và trống không hoạt động.
Maciej Sz

3
Đây là cách chính xác để làm điều đó.
CousinCocaine

Như OP đã nhận xét, điều này sẽ không hoạt động đối với người dùng không có mật khẩu ( _wwwtheo mặc định người dùng sẽ không có mật khẩu ).
mjturner
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.