Tôi muốn tạo một sudo
lệnh ( sudo service smbd restart
) chạy sau 1 phút sau khi đăng nhập. Tôi sẽ đi đâu để tới đó?
PS Đây là hệ thống không có màn hình, chuột, bàn phím hoặc loa được kết nối - đó là máy in và máy chủ tệp.
Tôi muốn tạo một sudo
lệnh ( sudo service smbd restart
) chạy sau 1 phút sau khi đăng nhập. Tôi sẽ đi đâu để tới đó?
PS Đây là hệ thống không có màn hình, chuột, bàn phím hoặc loa được kết nối - đó là máy in và máy chủ tệp.
Câu trả lời:
A) Nếu đó là lúc khởi động hệ thống , hãy thêm phần này vào cuối /etc/rc.local
(1): (trước exit 0
, rõ ràng):
( sleep 60 && service smbd restart )&
Ghi chú:
()
là cần thiết để lệnh phức tạp tự tách ra và đi đến nền, cho phép quá trình khởi động kết thúc;sudo
không cần thiết ở đó, /etc/rc.local
được thực hiện bởi root
;B) nếu đăng nhập người dùng , bạn cần hai bước:
cấu hình của bạn sudo
để nó sẽ không yêu cầu mật khẩu cho service smbd restart
lệnh (xem Làm cách nào để tôi chạy các lệnh sudo cụ thể mà không cần mật khẩu? );
chuẩn bị một tập lệnh với các nội dung sau và thêm nó vào chương trình tự động khởi động / khởi động của bạn (thay đổi theo môi trường máy tính để bàn bạn đang sử dụng).
Kịch bản:
#!/bin/bash
( sleep 60 && service smbd restart )&
Chú thích
(1) kiểm tra nếu /etc/rc.local
có thể thực thi được. Nếu không, làm cho nó vớisudo chmod +x /etc/rc.local
Hãy thử man sleep
:
sleep 60 && sudo service smbd restart
Đặt cái này trong các chương trình autorun hoặc script được thực thi khi đăng nhập.
sudoers
tệp, nó sẽ không hoạt động (sẽ ngừng yêu cầu mật khẩu). Xem Askubfox.com/questions/159007/ cấp