Linuxシステムで使用できるいくつかの異なる認証スキームがあります。最も一般的に使用される標準的なスキームは、/etc/passwd
に対して認証を実行することです。 および/etc/shadow
ファイル。
/etc/passwd
は、システム上のすべてのユーザーアカウントの情報を含むプレーンテキストベースのデータベースです。 rootが所有し、644の権限があります。このファイルは、rootまたはsudoprivilegesを持つユーザーのみが変更でき、すべてのシステムユーザーが読み取ることができます。
/etc/passwd
を変更する 自分が何をしているのかわからない限り、手作業でのファイルは避けてください。常に目的に合わせて設計されたコマンドを使用してください。たとえば、ユーザーアカウントを変更するには、usermod
を使用します コマンドを実行し、新しいユーザーアカウントを追加するには、useradd
を使用します コマンド。
/etc/passwd
フォーマット#
/etc/passwd
fileは、ユーザーアカウントを表す、1行に1つのエントリを持つテキストファイルです。ファイルの内容を表示するには、テキストエディタまたはcat
などのコマンドを使用します :
cat /etc/passwd
通常、最初の行はrootユーザーを表し、その後にシステムアカウントと通常のユーザーアカウントが続きます。新しいエントリはファイルの最後に追加されます。
/etc/passwd
の各行 ファイルには7つのカンマ区切りフィールドが含まれています:
mark:x:1001:1001:mark,,,:/home/mark:/bin/bash
[--] - [--] [--] [-----] [--------] [--------]
| | | | | | |
| | | | | | +-> 7. Login shell
| | | | | +----------> 6. Home directory
| | | | +--------------------> 5. GECOS
| | | +--------------------------> 4. GID
| | +-------------------------------> 3. UID
| +-----------------------------------> 2. Password
+----------------------------------------> 1. Username
- ユーザー名。システムにログインするときに入力する文字列。各ユーザー名は、マシン上で一意の文字列である必要があります。ユーザー名の最大長は32文字に制限されています。
- パスワード。古いLinuxシステムでは、ユーザーの暗号化されたパスワードは
/etc/passwd
に保存されていました。 ファイル。最近のほとんどのシステムでは、このフィールドはx
に設定されています 、およびユーザーパスワードは/etc/shadow
に保存されます ファイル。 - UID。ユーザーIDは、各ユーザーに割り当てられた番号です。オペレーティングシステムがユーザーを参照するために使用します。
- GID。ユーザーのプライマリグループを参照する、ユーザーのグループID番号。ユーザーがファイルを作成すると、ファイルのグループがこのグループに設定されます。通常、グループの名前はユーザーの名前と同じです。ユーザーのセカンダリグループは、
/etc/groups
に一覧表示されます ファイル。 - GECOSまたはユーザーのフルネーム。このフィールドには、次の情報を含むコンマ区切り値のリストが含まれています。
- ユーザーのフルネームまたはアプリケーション名。
- 部屋番号。
- 勤務先の電話番号。
- 自宅の電話番号。
- その他の連絡先情報。
- ホームディレクトリ。ユーザーのホームディレクトリへの絶対パス。これには、ユーザーのファイルと構成が含まれています。デフォルトでは、ユーザーのホームディレクトリはユーザーの名前にちなんで名付けられ、
/home
の下に作成されます。 ディレクトリ。 - ログインシェル。ユーザーのログインシェルへの絶対パス。これは、ユーザーがシステムにログインしたときに開始されるシェルです。ほとんどのLinuxディストリビューションでは、デフォルトのログインシェルはBashです。
結論#
/etc/passwd
ファイルは、システム上のすべてのユーザーを追跡します。
ご質問やご意見がございましたら、お気軽にコメントをお寄せください。