usermod は、ユーザーのログイン情報を変更できるコマンドラインユーティリティです。
この記事では、 usermodの使用方法について説明します。 ユーザーをグループに追加したり、ユーザーシェル、ログイン名、ホームディレクトリなどを変更したりするコマンド。
usermod コマンド#
usermodの構文 コマンドの形式は次のとおりです。
usermod [options] USER
rootまたはsudoを持つユーザーのみ アクセスはusermodを呼び出すことができます ユーザーアカウントを変更します。成功すると、コマンドは出力を表示しません。
ユーザーをグループに追加する#
usermodの最も一般的な使用例 グループにユーザーを追加しています。
既存のユーザーをセカンダリグループに追加するには、 -a -Gを使用します オプションは、グループの名前とユーザー名の後に続きます:
usermod -a -G GROUP USER
ユーザーを一度に複数のグループに追加する場合は、 -Gの後にグループを指定します 、で区切られたオプション (カンマ)空白が介在しない。
たとえば、ユーザーを追加するには linuxize ゲームへ グループの場合、次のコマンドを実行します:
sudo usermod -a -G games linuxize
常に-aを使用してください (追加)ユーザーを新しいグループに追加するときのオプション。 -aを省略した場合 オプションの場合、ユーザーは -Gの後にリストされていないグループから削除されます オプション。
ユーザーまたはグループが存在しない場合、コマンドは警告を表示します。
ユーザーのプライマリグループを変更するには、 usermodを呼び出します -gによるコマンド オプションは、グループの名前とユーザー名の後に続きます:
sudo usermod -g GROUP USER
次の例では、ユーザー linuxizeのプライマリグループを変更しています。 開発者へ :
usermod -g developers linuxize 各ユーザーは、正確に1つのプライマリグループと0個以上のセカンダリグループに属することができます。
ユーザー情報の変更#
GECOS(ユーザーのフルネーム)情報を変更するには、 -cを指定してコマンドを実行します。 オプションの後に新しいコメントとユーザー名が続きます:
usermod -c "GECOS Comment" USER linuxizeユーザーに追加情報を追加する方法を示す例を次に示します。
usermod -c "Test User" linuxize
この情報は/etc / passwdに保存されます ファイル。
ほとんどのLinuxシステムでは、ユーザーのホームディレクトリはユーザーの名前にちなんで名付けられ、 / homeの下に作成されます。 ディレクトリ。
何らかの理由でユーザーのホームディレクトリを変更する場合は、 usermodを呼び出します。 -dによるコマンド オプションは、新しいホームディレクトリの絶対パスとユーザーの名前に従いました:
usermod -d HOME_DIR USER
デフォルトでは、このコマンドはユーザーのホームディレクトリのコンテンツを新しいディレクトリに移動しません。コンテンツを移動するには、 -mを使用します オプション。新しいディレクトリがまだ存在しない場合は、次のように作成されます。
usermod -d HOME_DIR -m USER
これは、ユーザー www-dataのホームディレクトリを変更する方法を示す例です。 / var / wwwへ :
usermod -d /var/www www-data ユーザーのデフォルトシェルの変更#
デフォルトのシェルは、システムにログインした後に実行されるシェルです。デフォルトでは、ほとんどのLinuxシステムでは、デフォルトのシェルはBashシェルに設定されています。
ユーザーのデフォルトシェルを変更するには、 -sを指定してコマンドを実行します オプションは、シェルの絶対パスとユーザーの名前に従いました:
usermod -s SHELL USER 以下の例では、ユーザーシェルをZshに変更しています:
sudo usermod -s /usr/bin/zsh linuxize
/ etc / shells を表示すると、システムで使用できるシェルを確認できます。 ファイルの内容。
UID(ユーザーID)は、各ユーザーに割り当てられた番号です。オペレーティングシステムがユーザーを参照するために使用します。
ユーザーUIDを変更するには、 -uを使用してコマンドを呼び出します。 オプションは、新しいUIDとユーザー名の後に続きます:
usermod -u UID USER 以下の例は、「UID」番号を「1050」に変更する方法を示しています。
sudo usermod -u 1050 linuxize ユーザーが所有し、ユーザーのホームディレクトリにあるファイルのUID。ユーザーのメールボックスファイルは自動的に変更されます。他のすべてのファイルの所有権は手動で変更する必要があります。
それほど頻繁ではありませんが、既存のユーザーの名前を変更したい場合があります。 -l </ code> オプションはユーザー名を変更するために使用されます:
usermod -l NEW_USER USER
以下の例では、ユーザーの名前を linuxizeに変更しています。 lisaへ 「1050」へ:
sudo usermod -l linuxize lisa ユーザー名を変更するときは、新しいユーザー名を反映するようにユーザーのホームディレクトリを変更することもできます。
有効期限は、ユーザーアカウントが無効になる日付です。ユーザーの有効期限を設定するには、 -eを使用します オプション:
sudo usermod -e DATE USER
有効期限は、 YYYY-MM-DDの形式を使用して設定する必要があります 。
たとえば、ユーザーを無効にするには linuxize 2022-02-21に 、次のコマンドを実行します:
sudo usermod -e "2022-02-21" linuxize アカウントの有効期限を無効にするには、空の有効期限を設定します:
sudo usermod -e "" linuxize
chage -lを使用します ユーザーの有効期限を表示するコマンド:
sudo chage -l linuxize Last password change : Jul 24, 2018
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
有効期限は/etc / shadowに保存されます ファイル。
ユーザーアカウントのロックとロック解除#
-L オプションを使用すると、ユーザーアカウントをロックできます:
usermod -L USER
コマンドは感嘆符(!)を挿入します )暗号化されたパスワードの前にマークを付けます。 / etc / shadowのパスワードフィールドの場合 ファイルに感嘆符が含まれている場合、ユーザーはパスワード認証を使用してシステムにログインできなくなります。キーベースの認証やユーザーへの切り替えなど、他のログイン方法は引き続き許可されます。アカウントをロックしてすべてのログイン方法を無効にする場合は、有効期限も1に設定する必要があります。
次の例は、ユーザーをロックする方法を示しています linuxize :
sudo usermod -L linuxize sudo usermod -L -e 1 linuxize
ユーザーのロックを解除するには、 usermodを実行します -Uを使用 オプション:
usermod -U USER 結論#
usermodの使用方法を説明しました ユーザーアカウント情報を設定するコマンド。
ご不明な点がございましたら、お気軽にコメントをお寄せください。