GNU/Linux >> Linux の 問題 >  >> Linux

LinuxのUsermodコマンド

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番号の変更

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の使用方法を説明しました ユーザーアカウント情報を設定するコマンド。

ご不明な点がございましたら、お気軽にコメントをお寄せください。


Linux
  1. Linuxsuコマンド

  2. Linuxmvコマンド

  3. Linuxduコマンド

  1. Linuxipコマンド

  2. Linuxcdコマンド

  3. Linux での usermod コマンドの例

  1. Linux での login コマンドの例

  2. Linux での adduser コマンドの例

  3. Linux での userdel コマンドの例