【Linuxコマンド】chownでファイル・ディレクトリの所有権を変更する

こんにちは!エンジニア兼ライターのヤマシタです。

Linuxにはファイルやディレクトリのユーザーの所有権やグループの所有権を変更できる「chown」コマンドがあります。

ここでは「chown」コマンドについて以下の内容で解説していきます。

chown_image

この記事では「chown」コマンドについてわかりやすく解説していますので、ぜひ使い方を覚えておきましょう!

chownコマンドとは

「chown」コマンドはファイルやディレクトリのユーザーやグループの所有権を変更するためのコマンドです。

「chown」コマンドは以下のように記述します。

$ chown [オプション] ユーザー又はグループ ファイル又はディレクトリ

ユーザーとは

そもそもユーザーの所有権とは、ファイルへの読み込みや書き込み、プログラムの実行などをどのユーザーが可能であるか明確にするために識別されます。

ユーザーの所有権はそのファイルやディレクトリを作成したユーザーのIDによって割り当てられます。

グループとは

グループとは複数のユーザーをまとめて管理するためのものです。

通常Linuxは複数のユーザーがリモートでログインして使用するため、複数のユーザーをグループでひとまとめにして管理します。

chownコマンドの使い方

ここでは実際に「chown」コマンドの使い方を見ていきましょう。

まずは対象のファイルのユーザーとグループ所有権を確認する方法を紹介します。

対象のファイルのユーザー・グループの所有権を確認するには、「ls -l」コマンドを実行します。

$ ls -l
-rw-rw-r— 1 samurai samurai 47 5月 21 08:42 test01.txt

実行結果からユーザー所有権は「samurai」グループ所有権「samurai」であることがわかります。

ではユーザー所有権とグループ所有権を変更してみましょう。

所有権を変更するためには「su」コマンドでスーパーユーザー(ルート権限)に変更する必要があります。

「su」コマンドについては以下の記事で詳しく解説しています!

ファイルtest01.txtのユーザー所有権を変更するには以下のように実行します。

# chown root test01.txt

実行結果:

# ls -l
-rw-rw-r— 1 root samurai 47 5月 21 08:42 test01.txt

ユーザー所有権が「samurai」から「root」に変更されました。

グループの所有権も変更する場合には引数にセミコロン「:」をはさんで「ユーザー:グループ」とします。

# chown root:root test01.txt

実行結果:

# ls -l
-rw-rw-r— 1 root root 47 5月 21 08:42 test01.txt

これでユーザー所有権、グループ所有権ともに「root」に変更されました。

chownのオプション

「chown」コマンドで使用するオプションは以下となります。

オプション説明
-c所有者情報を変更された場合に詳細を表示する
-fエラーメッセージを表示しない
-hシンボリックリンクの所有権も変更する
-Rディレクトリ内の所有権も変更する
-v所有者変更情報の詳細を表示する(変更されなかった場合も表示)

-cで詳細を表示する

「chown」コマンドでユーザーやグループの所有権が変更された場合、詳細を表示するには「-c」オプションを使用します。

# chown -c samurai:samurai test01.txt
`test01.txt’ の所有者を root:root から samurai:samurai へ変更しました

このように変更情報が表示されます。

-Rでディレクトリ内の所有権も変更する

ディレクトリとディレクトリ内の全てファイルの所有権を変更する場合には「-R」オプションを使用します。

以下の例ではディレクトリsamuraiを指定して所有権を変更しています。

# chown -R root:root samurai/

実行結果:

# ls -l samurai
-rw-rw-r— 1 root root 47 5月 21 08:42 test01.txt
-rw-rw-r— 1 root root 47 5月 21 08:42 test02.txt
-rw-rw-r— 1 root root 47 5月 21 08:42 test03.txt

全てのファイルの所有権が変更されました。

chmodコマンドで アクセス権を変更する

「chown」コマンドに似ているコマンドとしては「chmod」コマンドがあります。

「chmod」コマンドはファイルやディレクトリのアクセス権(パーミッション)を変更することができます。

「chmod」コマンドについては以下の記事で詳しく解説しています!

Linuxについてもっと知りたい方へ

そもそもLinuxについて、

「実はなんとなくしか理解していない…」
「Linuxを効率よく学習する方法が知りたい」

といった情報を知りたい方は、以下の記事も参考にしてみてくださいね!



まとめ

ここでは、Linuxでファイルやディレクトリのユーザーとグループの所有権を変更する「chown」コマンドについて、

  • chownとは
  • chownの使い方
  • chownのオプションと使い方
  • chmodとは

などについて解説しました。

Linuxではユーザーごとに所有権を割当てることはよくありますので「chown」コマンドの使い方はよく理解しておきましょう。

もしchownコマンドの使い方を忘れてしまったら、この記事を参考にしてくださいね。

Writer

侍エンジニア編集部

株式会社SAMURAI

侍エンジニアは「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。プログラミングに役立つ情報や有用な情報を発信していきます。

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI ENGINEER Plus

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら
Close