Red Hat Training

A Red Hat training course is available for RHEL 8

11.5. コマンドラインを使用したユーザーグループの編集

ユーザーは、ファイルおよびフォルダーに同様のアクセスを持つユーザーの論理的な集合を許可する、特定のグループセットに属します。コマンドラインから、プライマリーユーザーグループおよび補助ユーザーグループを編集して、ユーザーの権限を変更できます。

11.5.1. プライマリーユーザーグループおよび補助ユーザーグループ

グループとは、複数のユーザーアカウントを共通目的 (特定のファイルにアクセス権を与えるなど) で統合するエンティティーです。

Linux では、ユーザーグループはプライマリーまたは補助として機能できます。プライマリーグループおよび補助グループには、以下のプロパティーがあります。

プライマリーグループ
  • すべてのユーザーに、常に 1 つのプライマリーグループのみが存在します。
  • ユーザーのプライマリーグループは変更できます。
補助グループ
  • 既存の補助グループに既存のユーザーを追加して、グループ内で同じセキュリティーおよびアクセス権限を持つユーザーを管理できます。
  • ユーザーは、ゼロまたは複数の補助グループのメンバーになります。

11.5.2. ユーザーのプライマリーグループおよび補助グループのリスト表示

ユーザーのグループをリスト表示して、どのプライマリーグループおよび補助グループに属しているかを確認できます。

手順

  • ユーザーのプライマリーおよび補助グループの名前を表示します。

    $ groups user-name

    user-name は、ユーザー名に置き換えます。ユーザー名を指定しないと、コマンドは現在のユーザーのグループメンバーシップを表示します。最初のグループはプライマリーグループで、その後に任意の補助グループが続きます。

    例11.4 ユーザー sarah のグループのリスト表示

    $ groups sarah

    この出力では、以下が表示されます。

    sarah : sarah wheel developer

    ユーザー sarah にはプライマリーグループ sarah があり、補助グループ wheel および developer のメンバーになります。

    例11.5 ユーザー marc のグループのリスト表示

    $ groups marc

    この出力では、以下が表示されます。

    marc : marc

    ユーザー marc には、プライマリーグループ marc のみがあり、補助グループはありません。

11.5.3. ユーザーのプライマリーグループの変更

既存ユーザーのプライマリーグループを、新しいグループに変更できます。

前提条件:

  1. root アクセス
  2. 新しいグループが存在する必要があります。

手順

  • ユーザーのプライマリーグループを変更します。

    # usermod -g group-name user-name

    group-name を、新しいプライマリーグループの名前に置き換え、user-name を、ユーザーの名前に置き換えます。

    注記

    ユーザーのプライマリーグループを変更すると、コマンドは、ユーザーのホームディレクトリーにあるすべてのファイルのグループ所有権も、自動的に新しいプライマリーグループに変更します。ユーザーのホームディレクトリー外のファイルのグループ所有権を手動で修正する必要があります。

    例11.6 ユーザーのプライマリーグループを変更する例:

    ユーザー sarah がプライマリーグループ sarah1 に所属しており、ユーザーのプライマリーグループを sarah2 に変更する場合は、以下を使用します。

    # usermod -g sarah2 sarah

検証手順

  • ユーザーのプライマリーグループを変更したことを確認します。

    $ groups sarah

    この出力では、以下が表示されます。

    sarah : sarah2

11.5.4. コマンドラインから補助グループにユーザーを追加

補助グループにユーザーを追加して、権限を管理したり、特定のファイルまたはデバイスへのアクセスを有効にしたりできます。

前提条件

  • root アクセス

手順

  • ユーザーの補助グループにグループを追加するには、以下を使用します。

    # usermod --append -G group-name username

    group-name はグループ名に、username はユーザー名に置き換えます。

    例11.7 補助グループへのユーザーの追加

    ユーザーの sysadmin をグループ system-administrators に追加するには、以下を使用します。

    # usermod --append -G system-administrators sysadmin

検証手順

  • ユーザー sysadmin の補助グループに新規グループが追加されていることを確認するには、以下を使用します。

    # groups sysadmin

    この出力では、以下が表示されます。

    sysadmin : sysadmin system-administrators

11.5.5. 補助グループからユーザーの削除

補助グループから既存のユーザーを削除して、権限や、ファイルやデバイスへのアクセスを制限できます。

前提条件

  • root アクセス

手順

  • 補助グループからユーザーを削除します。

    # gpasswd -d user-name group-name

    user-name をユーザー名に置き換え、group-name を、補助グループの名前に置き換えます。

    例11.8 補助グループからユーザーの削除

    ユーザー sarah にプライマリーグループ sarah2 があり、セカンダリーグループ wheel および developers に属し、そのユーザーをグループ developers から削除する場合は、次のコマンドを実行します。

    # gpasswd -d sarah developers

検証手順

  • セカンダリーグループの開発者からユーザー sarah を削除したことを確認します。

    $ groups sarah

    この出力では、以下が表示されます。

    sarah : sarah2 wheel

11.5.6. ユーザーの補助グループのすべての変更

ユーザーをメンバーとして残す補助グループのリストを上書きできます。

前提条件

  • root アクセス
  • 補助グループが存在している

手順

  • ユーザーの補助グループのリストを上書きします。

    # usermod -G group-names username

    group-names を、1 つ以上の補助グループの名前に置き換えます。ユーザーを複数の補助グループに一度に追加するには、グループ名をコンマで区切り、スペースを使用しないでください。たとえば、wheel,developer です。

    user-name は、ユーザー名に置き換えます。

    重要

    ユーザーが、指定しないグループのメンバーである場合は、グループからそのユーザーが削除されます。

    例11.9 ユーザーの補助グループのリストの変更

    ユーザー sarah にプライマリーグループ sarah2 があり、補助グループ wheel に属し、さらに 3 つの補助グループ developersysadmin、および security に属するユーザーにする場合は、次のコマンドを実行します。

    # usermod -G wheel,developer,sysadmin,security sarah

検証手順

  • 補助グループのリストが正しく設定されていることを確認します。

    # groups sarah

    この出力では、以下が表示されます。

    sarah : sarah2 wheel developer sysadmin security