Group

如何使用特定組執行程序?

  • August 19, 2019

我必須以自己的使用者權限啟動應用程序,但組必須不同。所以,而不是:

$ ps -eo "user,group,args" | grep qbittorrent
morfik   morfik      /usr/bin/qbittorrent

例如應該是:

$ ps -eo "user,group,args" | grep qbittorrent
morfik   p2p      /usr/bin/qbittorrent

它也必須在不詢問密碼的情況下完成。有沒有辦法做到這一點?

使用sg.

例如,以下命令將為sleep組呼叫group-name

sg group-name -c 'sleep 100'

從手冊頁:

NAME
  sg - execute command as different group ID

SYNOPSIS
  sg [-] [group [-c ] command]

DESCRIPTION
  The sg command works similar to newgrp but accepts a command. The
  command will be executed with the /bin/sh shell...

sg 詢問組密碼

sudo 有選項 -g 可以通過使用者密碼執行相同的操作。

它需要在 sudoers 中提及組

我改變了 /etc/sudoers

%wheel All=(ALL) ALL

%wheel All=(ALL:ALL) ALL

有時候更方便

編輯 sudoers 的安全方法是:

sudo sudoedit /etc/sudoers

引用自:https://unix.stackexchange.com/questions/112225