Linuxにおけるホームディレクトリの説明と確認方法

Linuxにユーザーがログインした際のディレクトリは、「ホームディレクトリ」とされています。このホームディレクトリについて説明します。

ホームディレクトリを変更する方法は以下を参照してください。
参考:【usermod】Linuxでユーザーのホームディレクトリを変更する

Linuxにおけるホームディレクトリとは

Linuxでは、useraddコマンドなどで追加されたユーザーには、それぞれホームディレクトリが作成されます。移動しない限り、ホームディレクトリは「/home/ユーザー名」となります。このホームディレクトリが存在しないと、ユーザはログインすることができません。

自分のホームディレクトリではファイルの読み書きが自由にできますが、他のユーザーのホームディレクトリは、権限が変更されていない限り読み書きができません。

rootユーザーだけは特別

ただし、管理者特権を持つrootユーザーだけは別で、全てのホームディレクトリに関して読み書きを行うことができます。また、rootユーザーのホームディレクトリも他のユーザーとは異なり、「/root」がホームディレクトリとなります。

apacheユーザーやnginxユーザーのホームディレクトリ

また、apacheやnginxをインストールすると追加されるapacheユーザーやnginxユーザーもホームディレクトリを持ちます。ただし、ホームディレクトリの場所は「/home/ユーザー名」ではありません。

nginxユーザーのホームディレクトリ

/var/cache/nginx

apacheユーザーのホームディレクトリ

/var/www

ホームディレクトリを確認する方法

ログインしているユーザーのホームディレクトリを確認するには、cdコマンドでホームディレクトリに移動し、pwdコマンドで確認するのが最も簡単です。

# ホームディレクトリに移動
$ cd 
# 現在のディレクトリを表示
$ pwd

他のユーザーのホームディレクトリを確認

また、すべてのユーザーのホームディレクトリの場所は、/etc/passwdに保存されています。そのため、このファイルを確認することで 他のユーザーのディレクトリを確認できます。

lessコマンドで/etc/passwdを確認

$ less /etc/passwd

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
(省略)

イベント