Linux ユーザー アカウント管理 - アカウントの変更
Linux システムでは、ユーザー アカウント管理はシステム管理の重要な側面の 1 つです。ユーザーアカウントの変更とは、ユーザーID、ホームディレクトリ、ユーザーグループ、ログインシェルなどのユーザーの属性を実際の状況に応じて変更することです。この記事では、Linux システムでユーザー アカウントを変更する方法、その構文、実際の操作、およびユーザー アカウントを変更するさまざまな方法の違いについて詳しく紹介します。
usermodコマンド
usermod コマンドを使用して既存のユーザーの情報を変更します。その構文は次のとおりです。
usermod [Option] username
一般的に使用されるオプションには、-c、-d、-g、-G、-s、-u などが含まれます。これらのオプションの意味は、ユーザーの新しいリソース値を指定できる useradd コマンドのオプションと同じです。 。さらに、一部のシステムではオプション -l 新しいユーザー名を使用できます。このオプションは新しいユーザー名を指定します。つまり、元のユーザー名が新しいユーザー名に変更されます。
ユーザー説明情報の変更
ユーザー説明情報は、/etc/passwd
ファイル内のターゲット ユーザー情報の 5 番目のフィールドに保存されます。これは-c
、次のようなオプションを使用して変更できます。
$ sudo usermod -c "This is a new description" username
ユーザーのホームディレクトリを変更する
ユーザーのホーム ディレクトリは、/etc/passwd
ファイル内のターゲット ユーザー情報の 6 番目のフィールドに保存されます。ホーム ディレクトリには絶対パスを使用する必要があることに注意してください。これは、次のオプションを使用して変更できます-d
。
$ sudo usermod -d /home/newdir username
ユーザーの有効期限を変更する
ユーザーの有効期限は/etc/shadow
、ファイル内の対象ユーザーのパスワード情報の 8 番目のフィールドに保存されます。形式は「YYYY-MM-DD」で、次のような-e
オプションを使用して変更できます。
$ sudo usermod -e 2025-12-31 username
ユーザーの初期グループを変更する
/etc/passwd
ユーザーの初期グループは、ファイル内のターゲット ユーザー情報の 4 番目のフィールド (GID)に保存されます。これは-g
、次のようなオプションを使用して変更できます。
$ sudo usermod -g newgroup username
ユーザーUIDを変更する
ユーザー UID は、/etc/passwd
ファイル内のターゲット ユーザー情報の 3 番目のフィールド (UID) に保存されます。これは、-u
次のようなオプションを使用して変更できます。
$ sudo usermod -u 1001 username
ユーザー追加グループの変更
追加のユーザー グループはファイルに保存され、次のようなオプションを/etc/group
使用して-G
変更できます。
$ sudo usermod -G group1,group2 username
このコマンドは、ユーザーをおよびグループにusername
参加させます。group1
group2
ログインシェルを変更する
ユーザー ログイン シェルは、/etc/passwd
ファイル内のターゲット ユーザー情報の 7 番目のフィールドに保存されます。これは-s
、次のようなオプションを使用して変更できます。
$ sudo usermod -s /bin/bash username
ユーザー名を変更する
-l
このオプションを使用してユーザー名を変更します。次に例を示します。
$ sudo usermod -l new_username old_username
このコマンドは、古いユーザー名をold_username
新しいユーザー名に変更しますnew_username
。
ユーザーを一時的にロックおよびロック解除する
-L
ユーザーは、 passwd コマンドと同じオプションである オプションを使用して一時的にロックアウトできます-l
。ユーザーを一時的にロックするには、/etc/shadow
ファイル内の対象ユーザーのパスワード情報の 2 番目のフィールド (暗号化されたパスワード) の前に「!」を追加して、パスワードを無効にします。
$ sudo usermod -L username
-U
ユーザーは、 passwd コマンドと同じオプションを使用してロックを解除できます-u
。
$ sudo usermod -U username
表 1: usermod コマンドのオプション
オプション | 説明 |
---|---|
-c | ユーザー説明情報の変更 |
-d | ユーザーのホームディレクトリを変更する |
-e | ユーザーの有効期限を変更する |
-g | ユーザーの初期グループを変更する |
-u | ユーザーUIDを変更する |
-G | ユーザー追加グループの変更 |
-s | ログインシェルを変更する |
-l | ユーザー名を変更する |
-L | ユーザーを一時的にロックする |
-U | ユーザーのロックを解除する |
表 2: デフォルトの /etc/passwd ファイルの形式
分野 | 説明 |
---|---|
ユーザー名 | システム内でユーザーを一意に識別する文字列 |
パスワード | 暗号化されたユーザーパスワード |
UID | ユーザーの数値識別子 (ユーザー ID) |
性同一性障害 | ユーザーのグループID |
ユーザー情報 | 注意事項 |
メインディレクトリ | ユーザーがログインしているディレクトリ |
ログインシェル | ユーザーのログイン時に実行されるシェルプログラム |
要約する
この記事では、Linux システムでユーザー アカウントを変更する方法と一般的なオプションを詳しく紹介します。これには、ユーザーの説明情報、ユーザーのホーム ディレクトリ、ユーザーの有効期限、ユーザーの初期グループ、ユーザー UID、ユーザーの追加グループ、ログイン シェル、ユーザー名、ユーザーの一時的なロックとロック解除など なお、ユーザーアカウント情報を変更する場合は、システムの正常な動作に影響を与えないよう慎重に操作してください。さらに、実行中のプロセスやサービスについては、変更したユーザー アカウント情報を適用するために再起動する必要があるかどうかにも注意する必要があります。