Shell
在沒有 SUDO 且不作為 root 使用者的情況下執行具有 root 權限的命令
如何執行需要非 root 使用者的 root 權限且不使用前面的 SUDO 的命令(例如 iftop 或類似命令)?
或者,如何在不成為 root 的情況下為使用者授予 root 權限?
理想情況下,我想通過以下方式執行 iftop 命令:
[user@pc]$ iftop
而且不喜歡:
[user@pc]$ sudo iftop [root@pc]$ iftop
如何執行需要非 root 使用者的 root 權限且不使用前面的 SUDO 的命令(例如 iftop 或類似命令)?
您可以使用至少 2 種方法來允許非 root 使用者使用 iftop,但它們都需要 root 訪問權限。
更安全的方法是將
cap_net_raw
功能分配給 iftop 二進製文件:sudo setcap cap_net_raw+ep "$(command -v iftop)"
不太安全的方法是分配 setuid root:
sudo chmod +s "$(command -v iftop)"
或者,如何在不成為 root 的情況下為使用者授予 root 權限?
你不能。