私は最近、Fedora 28とUbuntu 18.04システムをセットアップしました。sudo
パスワードを入力せずにコマンドを実行できるように、両方のシステムでデフォルトのユーザーアカウントを設定したいと思います。
そのシステムでこれをどのように実行しますか?
答え1
Fedoraシステムで呼び出される特別なUnixグループを使用している場合、wheel
これは非常に簡単です。あなたがしなければならないことは次のとおりです。
wheel
グループにデフォルトユーザーを追加する$ sudo gpasswd -a <primary account> wheel
%wheel
グループに対してNOPASSWDを有効にします。/etc/sudoers
$ sudo visudo
次に、次の行をコメントアウトします。
## Allows people in group wheel to run all commands # %wheel ALL=(ALL) ALL
そして、次の行のコメントを外します。
## Same thing without a password %wheel ALL=(ALL) NOPASSWD: ALL
ShiftZこのファイルを保存するには++を使用してくださいZ。
ログアウトしてもう一度ログインしてください。
メモ:デスクトップとその最上位シェルを再実行するには、最後のステップが必須です。これは、デフォルトアカウントが
wheel
Unixグループのメンバーであることを示しています。
答え2
伝統的に、Debian / Ubuntu / Mint / Kali / AntixなどのDebianベースのディストリビューションでは、sudoのデフォルトグループはですsudo
。
したがって、sudo
Debian ベースのシステムにパスワードのないユーザーを追加するには、次の手順に従います。
インストールする
sudo
sudo
Debian では、インストールオプションによっては通常、デフォルトでインストールは終了しません。パッケージがインストールされていない場合
sudo
(パッケージがない場合など/etc/sudoers
)、rootとして実行します。# apt install sudo
sudo グループにユーザーを追加する
ユーザーがまだグループにない場合は、そのユーザーをsudoグループに追加します(Ubuntuとその派生製品は、インストール中に作成されたユーザーをsudoグループに自動的に追加します)。
最初のsudoユーザーを設定するときは、最初のユーザーを次のように設定する必要があります
root
。# gpasswd -a <primary account> sudo
すでにユーザーがいる場合は、
sudo
セキュリティを強化するために、ユーザーを介してsudoグループに別のユーザーを設定することをお勧めします。$ sudo gpasswd -a <primary account> sudo
/etc/sudoers
NOPASSWDディレクティブを追加するように修正されました。/etc/sudoers
その後、次を使用してグループsudo
のデフォルト行を編集できます。$ sudo visudo
次のように変更します。
# Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL
到着する:
# Allow members of group sudo to execute any command, no password %sudo ALL=(ALL:ALL) NOPASSWD:ALL
ログアウトしてもう一度ログインしてください。
システムにログインしている場合、ターゲットユーザーはログアウトしてからログインする必要があり、
sudo
このグループに属するユーザーの変更が適用されます。
メモ:Debian では、グループは、RedHat/SuSE ベースのディストリビューションのようにコマンドで使用するのではなく、wheel
PAM でsu
グループの使用を制限するためによく使用されます。sudo
従来、Debian ベースのディストリビューションでは、グループをsudo
使用してsudo
コマンドを実行していました。
答え3
ほとんどのディストリビューションには次の行があります/etc/sudoers/
。
#includedir /etc/sudoers.d
したがって、ユーザーを追加する簡単な方法は、/etc/sudoers.d/
ディレクトリに適切なファイルを作成することです。私は通常、追加したいユーザーの名前を指定します。
add_sudoer() {
if ! test -n "$1"
then echo "Usage: $0 <user>" >&2; return
fi
printf >"/etc/sudoers.d/$1" '%s ALL= NOPASSWD: ALL\n' "$1"
}
Defaults:%s !lecture, !authenticate\n
ファイルにおよび/または他のオプションを追加することもできます。
答え4
またはPythonを使用することもできますフートパック。
取付ける:
user$ sudo -H pip3 install pudo # you can install using pip2 also
以下は、Pythonオートメーションでroot権限でコマンドを実行するためのコードスニペットです。
user$ python3 # or python2
>>> import pudo
>>> (ret, out) = pudo.run(('ls', '/root')) # or pudo.run('ls /root')
>>> print(ret)
>>> 0
>>> print(out)
>>> b'Desktop\nDownloads\nPictures\nMusic\n'
以下は、root権限でコマンドを実行するcmdの例です。
user$ pudo ls /root
Desktop Downloads Pictures Music