Tại sao chạy kill trong linux cần truy cập sudo


0

Trên một máy chủ (máy tính để bàn phát triển của tôi), tôi có thể thực thi killlệnh mà không cần sudo, nhưng trên máy chủ khác, tôi sẽ nhận được kill: kill 1 failed: operation not permitted.

Tôi giả sử rằng killlệnh sẽ thực thi /usr/bin/kill.

Khi tôi kiểm tra sự cho phép của tệp trên cả hai máy chủ, nó sẽ hiển thị giống nhau cho phần quyền như lrwxrwxrwx 1 root root, điều đó có nghĩa là mọi người dùng đều đã đọc, viết và thực thi quyền của tệp này. Vậy thì tại sao tôi cần phải làm sudotrên máy chủ khác? Tôi tò mò về phần nào giữa hai máy chủ tạo ra sự khác biệt này.


type killnói lệnh là một dựng sẵn hoặc bên ngoài? Nhân tiện, symlink không có quyền trên Linux, đó là lý do tại sao chúng hiển thị như lrwxrwxrwx.
dsstorefile1

Câu trả lời:


5

Thông báo lỗi kill: kill 1 failed: operation not permittednói rằng nó xuất phát từ killlệnh chứ không phải shell đã cố gắng thực thi nó. Nếu không, bạn sẽ thấy một thông báo như bash: /usr/bin/kill: Permission denied(đứng đầu là "bash").

Thay vào đó hãy tự hỏi quá trình bạn đã cố giết, và ai là người dùng đang chạy quy trình nói trên. Bạn không thể giết các tiến trình của người khác như một người dùng bị hạn chế và killchính lệnh sẽ cho bạn biết rằng nó không được phép làm như vậy ...

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.