sudo
chỉ có thể làm điều đó cho bạn :)
Nó cần một chút cấu hình, nhưng một khi đã hoàn thành, bạn sẽ chỉ làm điều này:
sudo -u user2 -s
Và bạn sẽ đăng nhập với tên user2 mà không cần nhập mật khẩu.
Cấu hình
Để cấu hình sudo, bạn phải chỉnh sửa tệp cấu hình của nó thông qua : visudo
. Lưu ý: lệnh này sẽ mở cấu hình bằng vi
trình soạn thảo văn bản, nếu bạn không thích điều đó, bạn cần đặt một trình soạn thảo khác (sử dụng export EDITOR=<command>
) trước khi thực hiện dòng sau. Một trình soạn thảo dòng lệnh khác đôi khi được coi là dễ dàng hơn nano
, vì vậy bạn sẽ làm export EDITOR=/usr/bin/nano
. Bạn thường cần đặc quyền siêu người dùng cho visudo
:
sudo visudo
Tập tin này được cấu trúc trong các phần khác nhau, các bí danh, sau đó mặc định và cuối cùng ở cuối bạn có các quy tắc. Đây là nơi bạn cần thêm dòng mới. Vì vậy, bạn điều hướng ở cuối tập tin và thêm điều này:
user1 ALL=(user2) NOPASSWD: /bin/bash
Bạn có thể thay thế cũng /bin/bash
bằng ALL
và sau đó bạn có thể khởi chạy bất kỳ lệnh như user2 mà không có một mật khẩu: sudo -u user2 <command>
.
Nếu bạn muốn có thể chuyển sang bất kỳ người dùng nào, chỉ cần sử dụng
user1 ALL=(ALL) NOPASSWD: /bin/bash
Cập nhật
Tôi vừa thấy bình luận của bạn về Skype. Bạn có thể xem xét thêm Skype trực tiếp vào tệp cấu hình của sudo. Tôi giả sử bạn đã cài đặt Skype trong thư mục Ứng dụng của mình :
user1 ALL=(user2) NOPASSWD: /Applications/Skype.app/Contents/MacOS/Skype
Sau đó, bạn sẽ gọi từ thiết bị đầu cuối:
sudo -u user2 /Applications/Skype.app/Contents/MacOS/Skype