はじめに
Linuxで作業していると、「このファイルの所有者を変えたい」と思う場面があります。
そんなときに使えるのがchownコマンドです。
この記事では、chownの基本的な使い方から実践的な活用例まで、解説していきます。
chownコマンドとは
chownとはchange ownerの略称で、LinuxやUnix系OSでファイルやディレクトリの「所有者(ユーザー)」や「所有グループ」を変更するためのコマンドです。
参照:chown ウィキペディア(Wikipedia)
基本の使い方
基本的な構文は以下になります。
$ chown [オプション] ユーザー[:グループ] ファイル名
実践例で学ぶchown
ここからは実践としてsampleディレクトリの配下にsample.txtを用意してファイル所有者の変更を行っていきます。
sample.txtの所有者は以下のようになっています。(ls -lで確認します。)
-rw-r--r-- 1 user001 user001 0 Jun 3 12:29 sample.txt
このファイルはuser001というユーザーが所有しており、user001というグループに所属しています。
1.所有者を変更する
・sample.txt の所有者を user002 に変更する。
$ sudo chown user002 sample.txt
・結果
-rw-r--r-- 1 user002 user001 0 Jun 3 12:29 sample.txt
2. 所有者とグループを同時に変更する
・sample.txt の所有者を user002、グループを user002 に変更する。
$ sudo chown user002:user002 sample.txt
・結果
-rw-r--r-- 1 user002 user002 0 Jun 3 12:29 sample.txt
3. ディレクトリ以下を再帰的に変更する(-Rオプション)
-Rオプションをつけると指定したディレクトリの中にあるすべてのファイルとサブディレクトリに対して同じ操作を一括で適用できます。
新たにsampleディレクトリは以下にフォルダ:develop、ファイル:test.txtを作成します。
・/sample フォルダの中身すべて(ファイル・フォルダ含む)の所有者とグループを一気に user002 と user002 に変更する。
$ sudo chown -R user002:user002 .
. は「今いるディレクトリ」を意味します。
このコマンドでは「今いるディレクトリと、その中にあるすべてのファイル・サブディレクトリの所有者とグループを user002 と user002 に変える」ことを意味しています。
・結果
drwxr-xr-x 2 user002 user002 4096 Jun 3 12:58 develop
-rw-r--r-- 1 user002 user002 0 Jun 3 12:29 sample.txt
./develop:
total 0
-rw-r--r-- 1 user002 user002 0 Jun 3 12:57 test.txt
まとめ
今回は、chownを使ってファイルの所有者やグループを操作してみました。chownが使えるとファイルの所有者を適切に設定してセキュリティ管理ができるので権限の誤設定による情報漏えいや誤操作を防げるようになります。Linuxのファイル操作でとても重要なコマンドなので、まずは基本を押さえて少しずつ実践で使ってみてくださいね。


