一般ユーザーとシステムユーザーの違いは何ですか?

一般ユーザーとシステムユーザーの違いは何ですか?

一部文書ユーザーが「システム」ユーザーか「一般」ユーザー(デフォルトは「一般」)であるかを決定するブールスイッチを見てみましょう。

これら2つのユーザーモードの違いは何ですか?ユーザーが何であるか、なぜ必要なのか(「偽の」ユーザーでも)理解する必要はありませんが、これらの特別な区別は私にとって直感的ではありません。

答え1

これは技術的な違いではなく、組織の決定です。たとえば、ログインダイアログボックスに一般ユーザーを表示することは意味がありますが(ユーザー名を入力せずにクリックできるように)、システムアカウント(デーモンや他の自動化プロセスが実行されているUID)は表示しないことをお勧めします。

したがって、2つのUIDグループに対して境界または2つの範囲が定義される。 openSUSEでは、このファイルには/etc/login.defs次の行が含まれています。

#useraddで、uidの最小/最大値を自動的に選択します。
#
# SYS_UID_MINからSYS_UID_MAXまでの範囲。
#管理アカウントとシステムアカウントに動的に割り当てられたUID。
# UID_MIN から UID_MAX までが動的 UID 範囲です。
#割り当てられたユーザーアカウント。
#
UID_MIN 1000
UID_MAX 60000
#システムアカウント
SYS_UID_MIN 100
SYS_UID_MAX 499

そして

#groupaddで、gidの最小/最大値を自動的に選択します。
#
# SYS_GID_MIN から SYS_GID_MAX までの範囲です。
#動的に割り当てられた管理グループとシステムグループのGID。
# GID_MINからGID_MAXまでは動的GIDの範囲です。
#割り当てられたグループ。
#
GID_MIN 1000
GID_MAX 60000
#システムアカウント
SYS_GID_MIN 100
SYS_GID_MAX 499

答え2

主な違いはアカウントの目的なので、これは主に管理者と監査人にとって有用な区別です。いくつかの技術的な違いがあります。adduser文書:

エージング情報を持たないシステムユーザーは、(代わりに定義されている)範囲内の数値識別子が生成および選択されます/etc/shadow(グループの作成に使用されるGID対応も含まれます)。SYS_UID_MINSYS_UID_MAX/etc/login.defsUID_MINUID_MAX

私が知っている限り(Puppetはわかりません)Puppetの視点との違いはオプション-rですadduser

より広い視点については、以下を参照してください。/etc/passwdでアカウントを「隠す」ことはできますか?

答え3

違いは、アカウント UID 値の割り当て方法とアカウントの使用方法です。

詳細な手順は次の場所にあります。ウィキペディア:ユーザー識別子:

Linux標準の基本コア仕様では、0〜99の範囲のUID値を指定します。システム、アプリケーションで生成してはいけませんが、100から499までのUIDは動的割り当てのために予約する必要があります。システム管理者とインストール後のスクリプト。 [4]

一般に、エンドユーザーは通常、1000から始まるこれらの範囲外のUIDを持ちます。

関連情報