【Linux】ユーザーとグループの概要

 Linuxシステムにおけるユーザーとグループの管理は、セキュリティとアクセス制御の基盤を成す重要な要素です。ユーザーとは、システムにアクセスできる個々のアカウントを指し、各ユーザーには固有のIDや認証情報が割り当てられます。一方、グループは複数のユーザーをまとめて管理するための仕組みであり、特定のリソースへのアクセス権限を一括して設定することができます。

Linuxのマルチユーザー環境

 Linuxは多くのユーザーが同時に利用できるように設計されたマルチユーザーオペレーティングシステムです。これは、複数のユーザーが一つのシステム上で同時に動作し、各ユーザーが独自の環境とリソースを持つことを可能にします。

ユーザーとは

 ユーザーとは、Linuxシステムを利用するためのアカウントです。各ユーザーは個別のユーザー名とパスワードを持ち、システムにログインしてファイルやディレクトリにアクセスしたり、アプリケーションを実行したりすることができます。ユーザーはシステム管理者(root)によって作成・管理されます。

ユーザーの種類

Linuxでは、ユーザーは大きく分けて2種類存在します。

スーパーユーザー(root)

 システム全体の管理を行うための特権を持つユーザーです。rootユーザーはシステムの全てのファイルやプロセスにアクセスでき、システムの設定や管理を行います。

通常ユーザー

 日常的な作業を行うための一般ユーザーです。通常ユーザーは、自分のホームディレクトリや自身の所有するファイルにアクセスできますが、システム全体に影響を与える操作は制限されています。

グループとは

 グループは複数のユーザーをまとめて管理するための仕組みです。グループを使うことで、ファイルやディレクトリのアクセス権限をまとめて設定することができます。たとえば、同じプロジェクトに取り組むユーザーを一つのグループにまとめ、そのグループに対して特定のディレクトリの読み書き権限を付与することができます。

プライマリグループとサブグループ

 ユーザーは少なくとも一つのプライマリグループに所属します。プライマリグループは、ユーザーがファイルを作成したときにそのファイルに対して自動的に設定されるグループです。ユーザーはまた、複数のサブグループに所属することもできます。サブグループは、追加で所属するグループで、特定の権限やアクセス権を得るために使用されます。

Linuxのグループの例

  • user01とyamadaという2人のユーザーがいます。
  • user01のプライマリグループはuser01、yamadaのプライマリグループはyamadaです。
  • 両者は共にstaffというサブグループにも所属しています。

 この場合、user01が作成したファイルは、デフォルトでuser01グループに属します。同様に、yamadaが作成したファイルは、デフォルトでyamadaグループに属します。しかし、user01とyamadaは共にstaffグループに属しているため、staffグループに対して設定された権限も適用されます。