web-dev-qa-db-ja.com

Usermod -aG vs gpasswd -aをベストプラクティスとして

私はusermod -gが多くの このような投稿 からのベストプラクティスではないことを認識していますが、それらは通常、usermodがユーザーのプライマリグループを変更するため使用されるべきではないと説明しています。これらの投稿は、グループを追加するだけの-aGスイッチを考慮していないようです。

これはまだ悪い習慣ですか、それともgpasswd -aを使用することと違いはありませんか?

16
ZZ9

どちらも同じようにできますが、usermodを使用すると、十分な注意を払わなければ、間違ってしまう可能性があります。

this wiki からArch Linux(これは他のディストリビューションでも同じです)で説明されています:

ユーザーを他のグループに追加するには、次を使用します(additional_groupsはコンマ区切りのリストです):

# usermod -aG additional_groups username

警告:-aオプションが上記のusermodコマンドで省略されている場合、ユーザーはadditional_groupsにリストされていないすべてのグループから削除されます(つまり、ユーザーはadditional_groupsにリストされているグループのメンバーのみになります) )。

または、gpasswdを使用することもできます。ただし、ユーザー名は一度に1つのグループからしか追加(または削除)できません。

# gpasswd --add username group
16
whoan