Khi nào tôi nên sử dụng pkexec và khi sudo -i?


21

Tôi đã viết một câu trả lời tư vấn cho việc sử dụng sudo -i nautilus. Tôi biết điều đó gksukhông được chấp nhận và tôi có ấn tượng rằng đó sudo -ilà cách chúng ta nên chạy các ứng dụng đồ họa như root mà không giết mèo con , nhưng ai đó đã nhận xét ' pkexeclà cái mới gksu'. Hiểu biết của tôi pkexeclà không giống như sử dụng bất kỳ hình thức sudo:

Khi nào nên sử dụng pkexec vs gksu / gksudo?

và yêu cầu thiết lập, đặc biệt là sử dụng với các ứng dụng đồ họa:

Làm thế nào để cấu hình pkexec?

Khi tôi làm sudo -imọi thứ luôn hoạt động, vậy tại sao tôi phải gặp rắc rối với việc cấu hình pkexec? Tôi có thể thấy rằng để viết một kịch bản khởi chạy một cái gì đó là root tôi sẽ cần phải làm nó:

Tôi có thể sử dụng pkexec trong tệp Python Script hoặc .desktop không?

Nhưng nếu không, tôi có được gì khi sử dụng pkexec? Khi nào tôi nên sử dụng các lệnh này? Hiện tại cách tốt nhất để mở các ứng dụng đồ họa là root là gì?

(Tôi đã đọc ... mantrang, nhưng tôi cảm thấy không khôn ngoan hơn.)


5
Cá nhân tôi bỏ qua sự phản đối và luôn cài đặt gksutrên mọi hệ thống để chạy các ứng dụng GUI gksudonếu cần. Không có gì khác.
Chỉ huy Byte

1
Liên quan: Bài đăng cũ này trên meta đã có cuộc thảo luận có liên quan và câu trả lời sudo -iđược đánh giá cao nhất được đề xuất là một giải pháp an toàn; Nhưng không giải thích nhiều cho pkexec.
Clearkimura

1
Trong trường hợp sử dụng trình soạn thảo văn bản GUI để chỉnh sửa tệp dưới dạng root, vậy còn sử dụng sudoedit(AKA sudo -e) thì sao?
edwinksl

1
@edwinksl bạn có nghĩa là bạn có thể đặt trình chỉnh sửa đồ họa làm mặc định cho sudoedit? Ý tưởng thú vị
Zanna

1
@Zanna Vâng, xem unix.stackexchange.com/a/356443/6949 chẳng hạn.
edwinksl

Câu trả lời:


2

Việc sử dụng cơ bản là như nhau - các chương trình trong câu hỏi cho phép bạn chạy các chương trình khác như một người dùng khác, thường là root. Tuy nhiên, sự khác biệt giữa sudocác biến thể và pkexecsudomang lại cho chương trình toàn quyền kiểm soát mọi thứ, trong khi với pkexecbạn có quyền kiểm soát chi tiết hơn nhiều bằng cách xác định chính sách cho từng chương trình.

Nếu bạn tin tưởng các chương trình mà bạn chạy, sudo hoàn toàn ổn. Nếu bạn muốn thực sự khóa tất cả mọi thứ và cho phép các chương trình chỉ làm những gì bạn cho phép, thì hãy sử dụng pkexecđi kèm với polkit .

Mặc dù ý tưởng đằng sau pkexeclà tốt đẹp, tôi sẽ không đi xa đến mức gọi nó là tiếp theo gksu, do sự phức tạp cần thiết.

Tham khảo: sự khác biệt giữa sudo và pkexec trên Quora .

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.