ホーム > パッケージ・システム管理 > useradd

useradd コマンドガイド: 新しいユーザーアカウントの作成

`useradd` コマンドは、Linux システムで新しいユーザーアカウントを作成するために使用されます。このコマンドは単にユーザー名を追加するだけでなく、ユーザーのホームディレクトリ、シェル、グループメンバーシップなど、アカウントのさまざまな属性を設定することを可能にします。システム管理者が新しいユーザーを登録したり、サービスアカウントを作成する際に必須となります。このガイドを通じて `useradd` の基本的な使い方とさまざまなオプションを学びましょう。

useradd 概要

`useradd` コマンドは、ユーザーのアカウント情報を `/etc/passwd`、`/etc/shadow`、`/etc/group`、`/etc/gshadow` などのシステムファイルに追加し、ユーザーのホームディレクトリを作成し、基本設定ファイル(スケルトンファイル)をコピーするなどの作業を実行します。このすべてのプロセスには管理者権限(`sudo`)が必要です。

useradd の主要な役割

`useradd` コマンドは主に次の目的で使用されます:

主要な活用分野

  • 新しいユーザーの登録: システムに新しい一般ユーザーを追加し、ログインやファイルアクセスを許可します。
  • サービスアカウントの作成: 特定のアプリケーションやサービスが動作する際に使用する非ログインアカウントを作成します。
  • セキュリティ管理: 各ユーザーに固有のアカウントを付与することで、システムアクセスを制御し、責任を強化します。

ユーザーアカウント作成時の主要な構成要素

ユーザーアカウントが作成されると、次の主要な構成要素が設定されます:

主要なアカウント構成要素

  • ユーザー名 (Username): アカウントの固有識別子で、ログイン時に使用されます。
  • ユーザーID (UID): システムがユーザーを識別するための数値IDで、`/etc/passwd` に記録されます。
  • 基本グループ (Primary Group): ユーザーが作成されるときに自動的に割り当てられる主グループです。
  • 補助グループ (Supplementary Groups): ユーザーが追加的に属することができるグループです。
  • ホームディレクトリ (Home Directory): ユーザーの個人ファイルが保存される場所です。通常 `/home/username` 形式です。
  • ログインシェル (Login Shell): ユーザーがログインしたときに実行される基本シェルプログラムです。 (例: `/bin/bash`, `/bin/sh`, `/bin/false`)
  • パスワード: ユーザー認証に使用され、`passwd` コマンドを通じて別途設定する必要があります。

📂 基本設定ファイル (スケルトンディレクトリ)

/etc/skel

新しいユーザーアカウントが作成されると、ユーザーのホームディレクトリにはあらかじめ定義された基本設定ファイル(例: `.bashrc`, `.profile`)がコピーされます。これらのファイルは通常 `/etc/skel` ディレクトリに存在し、これをスケルトンディレクトリと呼びます。

主要な useradd コマンドオプション

`useradd` コマンドは、ユーザーのホームディレクトリ、シェル、グループ、期限日など、さまざまなアカウント属性を設定できるオプションを提供します。

1. アカウント基本設定

2. グループおよび UID/GID 設定

3. アカウントの期限およびその他

生成されたコマンド:

コマンドを組み合わせてみてください。

説明:

`useradd` コマンドを実行します。

これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。

使用例

`useradd` コマンドのさまざまな活用例を通じて、新しいユーザーアカウントを作成し、属性を設定する方法を学びましょう。

新しいユーザーアカウントの作成 (基本設定)

sudo useradd testuser

`testuser` という新しいユーザーアカウントを作成します。このアカウントのホームディレクトリとパスワードはまだ設定されていません。

ホームディレクトリとともに新しいユーザーアカウントを作成

sudo useradd -m devuser
sudo passwd devuser

`devuser` という新しいユーザーアカウントを作成し、`/home/devuser` ホームディレクトリを作成し、`/etc/skel` の基本設定ファイルをコピーします。アカウント作成後に `passwd` コマンドでパスワードを設定する必要があります。

特定のホームディレクトリとシェルを持つユーザーの作成

sudo useradd -m -d /var/www/webuser -s /bin/false webuser

`webuser` というアカウントを作成し、ホームディレクトリを `/var/www/webuser` に、基本シェルを `/bin/false`(ログイン不可)に設定します。ウェブサービス用アカウントに適しています。

ユーザーを複数のグループに追加

sudo useradd -m -G sudo,www-data -c "Administrator for Web" adminuser
sudo passwd adminuser

`adminuser` アカウントを作成し、`sudo` グループと `www-data` グループに追加し、ユーザーの説明も設定します。

期限日があるユーザーアカウントの作成

sudo useradd -m -e 2025-12-31 tempuser
sudo passwd tempuser

`tempuser` アカウントを作成し、ホームディレクトリを作成し、2025年12月31日にアカウントが期限切れになるように設定します。臨時作業者アカウントに便利です。

現在の useradd デフォルトの確認

useradd -D

新しいユーザーを作成する際に適用されるデフォルト(基本グループ、ホームディレクトリ接頭辞、シェルなど)を確認します。


同じカテゴリのコマンド