Linuxのユーザー情報を一覧で見てみよう

    • このページをはてなブックマークに追加

    前回の記事にて、Linuxで新しいユーザーを作成する方法を解説しました。
    今回は、作成したユーザー情報がどのファイルに格納されているのか、またそのファイルの中身について解説します。
    Linuxの主なディレクトリ構成についても触れていますので、Linuxの入門記事として、是非参考にしてください。

    1.Linuxのファイルとディレクトリ

    1.1 ファイルの種類とファイル名

    Linuxで扱うファイルは、大きく分けて以下の4つに分類することができます。

    ・通常ファイル
    ・ディレクトリ
    ・リンクファイル
    ・特殊ファイル

    ① 通常ファイル

    通常使用する、データやプログラムなどが格納されたファイルです。
    人間が読むことが可能なテキストファイルのほか、プログラムなどのバイナリファイルなどがあります。

    ② ディレクトリ

    様々なファイルをまとめて管理するためのファイルで、Windowsでいう「フォルダ」に該当するファイルです。

    ③ リンクファイル

    ファイル名と、ファイルそのものを関連付けるためのファイルです。
    Windowsでいうショートカットに該当する「シンボリックリンク」と、1つのファイルに対して複数のファイル名でアクセスすることが可能な「ハードリンク」の2種類があります。

    ④ 特殊ファイル

    デバイスファイルとも呼ばれ、Linuxではハードウェア、プリンタなどのあらゆる周辺装置をデバイスファイルとして扱います。

    Linuxでは、ファイル名は大文字と小文字は区別されます。
    また、拡張子という概念がないので、どのようなファイルかが理解しやすいように、ファイル名に「.txt」などを含めると良いでしょう。

    1.2 Linuxのファイルとディレクトリ

    Linuxでは、Windowsでいうフォルダに該当するディレクトリという概念があります。

    多くのLinuxディストリビューションにおいて、そのディレクトリ階層はFHS(Filesystem Hierarchy Standart)という仕様に基づいて決められています。
    FHSはバージョンがあり、2017年9月現在の最新バージョンは2.3となっています。

    ディレクトリは、ルートディレクトリ(/)を頂点とした、ツリー構造となっています。
    ルートディレクトリ配下の主なディレクトリは、以下のとおりです。

    ディレクトリ名 概要
    bin 一般ユーザーも使用できるコマンド
    boot 起動に必要なファイルやカーネル
    dev デバイスファイル
    etc システムの設定ファイル
    home ユーザー毎のホームディレクトリ
    lib 共有のライブラリファイル
    lib64 64ビット環境の共有ライブラリファイル
    media CDやDVDのデータ
    mnt マウントポイントとなるディレクトリ
    opt ソフトウェアのインストール先
    proc カーネルが保持する情報(仮想ファイル)
    root rootのホームディレクトリ
    run boot後のシステム情報
    sbin 主にrootのみ使用できるシステム管理のコマンド
    srv サービス用データ
    sys 仮想ファイル
    tmp 一時ファイル
    usr 共有データ
    var 可変データ

    2.ユーザー情報ファイル

    前述したFHS(ファイルシステム階層標準)において、「etcディレクトリ」配下にユーザー情報が格納されており、次の2つのファイルに書き込まれています。

    2.1 /etc/passwd ユーザー情報一覧ファイル

    etc/passwdファイルでは、ユーザー情報を一覧で確認することができます。

    (例)catコマンドを実行して、/etc/passwdファイルを参照する

    1ユーザー1行で表示されます。
    セミコロン(:)で区切られた7つのフィールドからなっており、それぞれの意味は次のとおりです。

    ①ユーザー名
    ②パスワード(/etc/shadowを使っている場合はx、使用しない場合は暗号化パスワード)
    ③ユーザー番号(uid)
    ④グループ番号(gid)
    ⑤コメント
    ⑥ホームディレクトリ
    ⑦ログインシェル

    2.2 /etc/shadow ユーザーのパスワード情報一覧ファイル

    /etc/shadowファイルでは、ユーザーのパスワード情報を一覧で確認することが可能です。
    このファイルは、rootユーザーのみ閲覧編集ができます。

    (例)catコマンドを実行して、/etc/shadowファイルを参照する

    shadowファイルもセミコロン(:)で区切られた9つのフィールドからなっており、それぞれの意味は次のとおりです。

    ①ユーザー名
    ②暗号化パスワード(パスワードが未設定の場合は「!!」で表示される)
    ③1970年1月1日から、パスワードを最後に変更した日までの日数
    ④パスワードの変更が可能になる日までの日数
     ※「0」の場合は常に変更が可能
    ⑤パスワードの変更期限までの日数
     ※99999は無期限を意味する
    ⑥パスワードの有効期限が切れる、何日前からユーザーに警告を出すかの日数
    ⑦パスワードの有効期限が切れてから、何日後にアカウントを利用できなくするかの日数
    ⑧1970年1月1日から、アカウントが利用できなくなるまでの日数
    ⑨予約されたフィールド

    • このページをはてなブックマークに追加

    おすすめ記事

  • OCTPASS

    ピックアップ

    フリーランス

    【Shellscript】サーバーエンジニア★メール配信システム運用ツール開発

    月額単価 :70万円〜

    大規模メール配信システムにおいて 主に以下のような業務をご担当頂きます。 ・運用業務 ・定型作...

    フリーランス

    【Linux/AWS】インフラエンジニア★入札情報サービスリプレイス

    月額単価 :70万円〜100万円

    官公庁・自治体等の入札・落札情報を探せるサービスの リプレイスプロジェクトをご担当いただきます。 ...

    フリーランス

    【Linux】インフラエンジニア★大手ディスカウントストア向けインフラ構築

    全国に展開している大手ディスカウントストアで用いられる サービスに関するインフラの設計、構築に携...

    フリーランス

    【Linux】インフラエンジニア★Webサイトのインフラ構築・運用サポート

    大規模Webサイトのインフラ構築・運用保守サポート および社内システムサポート、 Linuxサーバの構築...

    フリーランス

    【Linux】インフラエンジニア★ファイルストレージ(ownCloud)の大型導入

    月額単価 :70万円〜

    ownCloudというファイルストレージの大型導入案件を ご担当いただきます。