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

Linuxでユーザーを作成する方法(useraddコマンド)

Linuxはマルチユーザーシステムです。つまり、複数の人が同時に同じシステムと対話できます。システム管理者は、ユーザーを作成および削除してシステムのユーザーとグループを管理し、それらを別のグループに割り当てる責任があります。

この記事では、 useraddを使用して新しいユーザーアカウントを作成する方法について説明します。 コマンド。

useradd コマンド#

useraddの一般的な構文 コマンドは次のとおりです:

useradd [OPTIONS] USERNAME

useradd を使用できるのは、rootまたはsudoprivilegesを持つユーザーのみです。 新しいユーザーアカウントを作成するコマンド。

呼び出されると、 useradd コマンドラインで指定されたオプションと/etc / default / useradd で設定されたデフォルト値に従って、新しいユーザーアカウントを作成します ファイル。

このファイルで定義されている変数はディストリビューションごとに異なり、 useraddが発生します。 異なるシステムで異なる結果を生成するコマンド。

useradd /etc/login.defsのコンテンツも読み取ります ファイル。このファイルには、パスワードの有効期限ポリシー、システムおよび通常のユーザーの作成時に使用されるユーザーIDの範囲など、シャドウパスワードスイートの構成が含まれています。

Linuxで新しいユーザーを作成する方法#

新しいユーザーアカウントを作成するには、 useraddを呼び出します コマンドの後にユーザーの名前が続きます。

たとえば、 usernameという名前の新しいユーザーを作成します 実行します:

sudo useradd username
オプションなしで実行した場合、 useradd / etc / default / useraddで指定されたデフォルト設定を使用して新しいユーザーアカウントを作成します ファイル。

このコマンドは、 / etc / passwdにエントリを追加します 、 / etc / shadow、 / etc / group および/etc / gshadow ファイル。

新しく作成したユーザーとしてログインできるようにするには、ユーザーパスワードを設定する必要があります。これを行うには、 passwdを実行します コマンドの後にユーザー名を入力します:

sudo passwd username

パスワードを入力して確認するように求められます。強力なパスワードを使用してください。

Changing password for user username.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

新しいユーザーを追加してホームディレクトリを作成する方法#

ほとんどのLinuxディストリビューションでは、 useraddを使用して新しいユーザーアカウントを作成する場合 、ユーザーのホームディレクトリは作成されません。

-mを使用します (-create-home )ユーザーのホームディレクトリを / home / usernameとして作成するオプション :

sudo useradd -m username

上記のコマンドは、新しいユーザーのホームディレクトリを作成し、 / etc / skelからファイルをコピーします ディレクトリをユーザーのホームディレクトリに移動します。 / home / usernameにファイルをリストする場合 ディレクトリには、初期化ファイルが表示されます:

ls -la /home/username/
drwxr-xr-x 2 username username 4096 Dec 11 11:23 .
drwxr-xr-x 4 root     root     4096 Dec 11 11:23 ..
-rw-r--r-- 1 username username  220 Apr  4  2018 .bash_logout
-rw-r--r-- 1 username username 3771 Apr  4  2018 .bashrc
-rw-r--r-- 1 username username  807 Apr  4  2018 .profile

ホームディレクトリ内で、ユーザーはファイルやディレクトリの書き込み、編集、削除を行うことができます。

特定のホームディレクトリを持つユーザーの作成#

デフォルトでは、 useradd / homeにユーザーのホームディレクトリを作成します 。他の場所にユーザーのホームディレクトリを作成する場合は、 dを使用します (-home )オプション。

これは、 usernameという名前の新しいユーザーを作成する方法を示す例です。 / opt / usernameのホームディレクトリ :

sudo useradd -m -d /opt/username username
特定のユーザーID番号を持つユーザーの作成

LinuxおよびUnixライクなオペレーティングシステムでは、ユーザーは一意のUIDとユーザー名で識別されます。

ユーザー識別子(UID)は、Linuxシステムによって各ユーザーに割り当てられた一意の正の整数です。 UIDおよびその他のアクセス制御ポリシーは、ユーザーがシステムリソースに対して実行できるアクションのタイプを決定するために使用されます。

デフォルトでは、新しいユーザーが作成されると、システムは login.defsで指定されたユーザーIDの範囲から次に使用可能なUIDを割り当てます。 ファイル。

useraddを呼び出す -uを使用 (-uid )特定のUIDを持つユーザーを作成するオプション。たとえば、 usernameという名前の新しいユーザーを作成します 1500のUID 次のように入力します:

sudo useradd -u 1500 username

id を使用して、ユーザーのUIDを確認できます コマンド:

id -u username
1500
特定のグループID番号を持つユーザーの作成

Linuxグループは、Linuxでユーザーアカウントを整理および管理するために使用される組織単位です。グループの主な目的は、グループ内のユーザー間で共有できる特定のリソースの読み取り、書き込み、実行権限などの一連の特権を定義することです。

新しいユーザーを作成するときのuseraddのデフォルトの動作 コマンドは、ユーザー名と同じ名前、UIDと同じGIDでグループを作成することです。

-g -gid )オプションを使用すると、特定の初期ログイングループを持つユーザーを作成できます。グループ名またはGID番号のいずれかを指定できます。グループ名またはGIDがすでに存在している必要があります。

次の例は、 usernameという名前の新しいユーザーを作成する方法を示しています。 ログイングループをusersに設定します タイプ:

sudo useradd -g users username

ユーザーのGIDを確認するには、 idを使用します コマンド:

id -gn username
users

ユーザーの作成と複数のグループの割り当て#

Linuxオペレーティングシステムには、プライマリグループとセカンダリ(または補足)グループの2種類のグループがあります。各ユーザーは、正確に1つのプライマリグループと0個以上のセカンダリグループに属することができます。

-G を使用して、ユーザーがメンバーになる補足グループのリストを指定します。 (-グループ )オプション。

次のコマンドは、 usernameという名前の新しいユーザーを作成します プライマリグループusers および二次グループwheel およびdocker

sudo useradd -g users -G wheel,developers username

次のように入力すると、ユーザーグループを確認できます

id username
uid=1002(username) gid=100(users) groups=100(users),10(wheel),993(docker)
特定のログインシェルを持つユーザーの作成#

デフォルトでは、新しいユーザーのログインシェルは / etc / default / useraddで指定されたものに設定されています ファイル。一部のディストリビューションでは、デフォルトのシェルが / bin / shに設定されています 他の場合は/bin / bashに設定されています 。

-s -shell )オプションを使用すると、新しいユーザーのログインシェルを指定できます。

たとえば、 usernameという名前の新しいユーザーを作成するには / usr / bin / zshを使用 ログインシェルタイプとして:

sudo useradd -s /usr/bin/zsh username

/ etc / passwdのユーザーエントリを確認してください ユーザーのログインシェルを確認するためのファイル:

grep username /etc/passwd
username:x :1001:1001::/home/username:/usr/bin/zsh
カスタムコメントを使用したユーザーの作成#

-c -コメント )オプションを使用すると、新しいユーザーの簡単な説明を追加できます。通常、ユーザーのフルネームまたは連絡先情報はコメントとして追加されます。

次の例では、 usernameという名前の新しいユーザーを作成しています。 テキスト文字列TestUser Account コメントとして:

sudo useradd -c "Test User Account" username

コメントは/etc / passwdに保存されます ファイル:

grep username /etc/passwd
username:x :1001:1001:Test User Account:/home/username:/bin/sh

コメントフィールドは、 GECOSとも呼ばれます。 。

有効期限のあるユーザーの作成#

新しいユーザーアカウントの有効期限が切れる時間を定義するには、 -eを使用します (-expiredate ) オプション。これは、一時的なアカウントを作成するのに役立ちます。

日付はYYYY-MM-DDを使用して指定する必要があります フォーマット。

たとえば、 usernameという名前の新しいユーザーアカウントを作成します 有効期限を2019年1月22日に設定すると、次のように実行されます。

sudo useradd -e 2019-01-22 username

chageを使用する ユーザーアカウントの有効期限を確認するコマンド:

sudo chage -l username

出力は次のようになります:

Last password change					: Dec 11, 2018
Password expires					: never
Password inactive					: never
Account expires						: Jan 22, 2019
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
システムユーザーの作成#

システムと通常の(通常の)ユーザーの間に実際の技術的な違いはありません。通常、システムユーザーは、OSと新しいパッケージをインストールするときに作成されます。

-rを使用します (-システム )システムユーザーアカウントを作成するオプション。たとえば、 usernameという名前の新しいシステムユーザーを作成するには 実行します:

sudo useradd -r username

システムユーザーは、有効期限なしで作成されます。それらのUIDは、 login.defsで指定されたシステムユーザーIDの範囲から選択されます。 ファイル。通常のユーザーが使用する範囲とは異なります。

デフォルトのuseradd値の変更#

デフォルトのuseraddオプションは、 -Dを使用して表示および変更できます。 、-デフォルト オプション、または / etc / default / useraddの値を手動で編集する ファイル。

現在のデフォルトオプションを表示するには、次のように入力します。

useradd -D

出力は次のようになります:

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no

デフォルトのログインシェルを/bin / shから変更するとします。 / bin / bashへ 。これを行うには、以下に示すように新しいシェルを指定します。

sudo useradd -D -s /bin/bash

次のコマンドを実行して、デフォルトのシェル値が変更されていることを確認できます。

sudo useradd -D | grep -i shell
SHELL=/bin/bash

結論#

useraddを使用して新しいユーザーアカウントを作成する方法を説明しました 指図。同じ手順が、Ubuntu、CentOS、RHEL、Debian、Fedora、ArchLinuxなどのすべてのLinuxディストリビューションに適用されます。

useradd は低レベルのユーティリティであり、DebianおよびUbuntuユーザーは代わりに使いやすいadduserコマンドを使用できます。

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


Linux
  1. Linuxで複数のユーザーアカウントを作成する方法

  2. Linuxコマンドのスクリプトを作成する方法

  3. Ansibleを使用してLinuxユーザーを作成する方法

  1. Linuxでユーザー名を変更する方法

  2. Linuxでユーザーを作成する方法[ユーザー管理]

  3. Linuxでuseraddを使用してユーザーを管理する方法

  1. Linuxでidコマンドを使用する方法

  2. RockyLinux8でSudoユーザーを作成する方法

  3. Linux でユーザー コマンドを制限する方法