各ログインセッションのデフォルトのデフォルトGIDを変更する

各ログインセッションのデフォルトのデフォルトGIDを変更する

私は次を読んだnewgrp:

The newgrp command is used to change the current group ID during a
       login session. 

これにより、デフォルトのデフォルトグループを変更する方法について考えました。永久的な

newgrpシェルの起動ファイルに1行を含めることができるようですが、に依存せずに各ログインセッションのデフォルトIDを変更する方法はありますかnewgrp

一般的な解決策に興味がありますが、分布に依存する場合は、次の解決策に興味があります。Ubuntu11.10そしてRed Hat Enterprise Linuxサーバー(電子には管理者権限がありますが、後者には管理者権限はありません)。

付録:

以下の質問に対する@Shawnの優れた答えで、「rootアクセスなしではこれを行うことはできません」を読んでいます。

これが私を気にする:なぜ?newgrpログインするとすぐに実行する権限があると仮定すると、これはすべての実際の目的でデフォルトのデフォルトGUIDを変更するのと同じですか?

答え1

Linux(BusyBoxではない)、Solaris、NetBSD、OpenBSD: usermod -g group

usermodコマンドは、コマンドラインで指定された変更を反映するようにシステムアカウントファイルを変更します。

-g, --gid グループ

ユーザーの新しい初期ログイングループのグループ名または番号。グループが存在する必要があります。ユーザーの以前の基本グループが所有していたユーザーのホームディレクトリ内のすべてのファイルは、新しいグループの所有になります。

ユーザーのホームディレクトリ外のファイルのグループ所有権は手動で回復する必要があります。

FreeBSDから: pw usermod -g group

BusyBoxから: addgroup -g user group

root権限がないと、これはできません。

関連情報