chownコマンドとは?Linuxでファイル・ディレクトリの所有者とグループを変更する方法を初心者向けに解説

Linux

chownコマンドとは、Linuxでファイルやディレクトリの所有者とグループを変更するためのコマンドです。

Linuxでは、すべてのファイルやディレクトリに所有者とグループが設定されています。

たとえば、Webサーバーがファイルを読み込めない、自分で作成したファイルを別のユーザーに管理させたい、コピーしたファイルの所有者がrootになっている、といった場合に所有者やグループの確認が必要になります。

このような場面で使うのがchownコマンドです。

ただし、所有者の変更はシステムの安全性に関わる操作です。Linuxでは通常、一般ユーザーが自由にファイルの所有者を変更することはできず、root権限やsudoが必要になります。

この記事では、Linux初心者向けにchownコマンドの意味、基本的な使い方、所有者とグループの確認方法、chown ユーザー:グループの書き方、chown -Rの注意点、chmod・chgrpとの違い、よくあるエラーまでわかりやすく解説します。

  1. chownコマンドとは?
  2. Linuxの所有者とグループとは?
  3. chownを使う前にls -lで所有者を確認する
  4. statコマンドで所有者を詳しく確認する
  5. 自分のユーザー名とグループを確認する
  6. chownコマンドの基本的な使い方
  7. chownを使う基本の流れ
  8. chownで所有者だけを変更する
  9. chownで所有者とグループを同時に変更する
  10. chownでグループだけを変更する
  11. chown user:の意味
  12. ユーザー名・グループ名を数字で指定する
  13. chownで複数ファイルの所有者を変更する
  14. ワイルドカードを使って複数ファイルを変更する
  15. chownでディレクトリの所有者を変更する
  16. chown -Rでディレクトリ配下を再帰的に変更する
  17. chown -Rを使う前に確認すること
  18. chown -vで変更内容を表示する
  19. chown -cで変更があったファイルだけ表示する
  20. chown –referenceで別ファイルと同じ所有者にする
  21. chown –fromで変更前の所有者を条件にする
  22. シンボリックリンクにchownを使うときの注意
  23. Webサーバーのファイルにchownを使う例
  24. コピー後に所有者が変わった場合の確認
  25. chownとchmodの違い
  26. chownとchgrpの違い
  27. chownで755や777は指定しない
  28. 一般ユーザーがchownできない理由
  29. chownコマンドでよくあるエラー
    1. Operation not permitted
    2. Permission denied
    3. invalid user
    4. No such file or directory
    5. Read-only file system
    6. chownしてもPermission deniedが解決しない
  30. chownで変更できないときの確認ポイント
  31. chownコマンドを安全に使うコツ
  32. chownコマンドを使った練習手順
    1. 1. ホームディレクトリへ移動する
    2. 2. 練習用ディレクトリを作成する
    3. 3. 練習用ディレクトリへ移動する
    4. 4. 練習用ファイルを作成する
    5. 5. 現在の所有者を確認する
    6. 6. 現在のユーザーとグループを確認する
    7. 7. 練習用ファイルをroot所有に変更する
    8. 8. 変更結果を確認する
    9. 9. 自分の所有へ戻す
    10. 10. 元に戻ったことを確認する
  33. chownコマンドを覚えると何ができるようになる?
  34. chownコマンドのよくある質問
    1. chownコマンドは何に使いますか?
    2. chownは何の略ですか?
    3. chownの基本形は何ですか?
    4. chown user:groupとは何ですか?
    5. chownでグループだけ変更できますか?
    6. chown -Rとは何ですか?
    7. chownとchmodの違いは何ですか?
    8. chownとchgrpの違いは何ですか?
    9. chown 755やchown 777は正しいですか?
    10. chownにsudoが必要なのはなぜですか?
    11. 現在の所有者を確認するにはどうしますか?
    12. 現在のユーザー名とグループ名を指定するにはどうしますか?
    13. chownでinvalid userと表示される原因は何ですか?
    14. chownしてもPermission deniedが解決しないのはなぜですか?
  35. まとめ

chownコマンドとは?

chownコマンドとは、Linuxでファイルやディレクトリの所有者またはグループを変更するためのコマンドです。

chownは「change owner」の略として理解できます。

たとえば、sample.txtの所有者をuser1へ変更する場合は、次のように実行します。

sudo chown user1 sample.txt

所有者とグループを同時に変更する場合は、ユーザー名とグループ名をコロンで区切ります。

sudo chown user1:developers sample.txt

この例では、sample.txtの所有者をuser1、グループをdevelopersへ変更します。

Linuxの所有者とグループとは?

Linuxのファイルやディレクトリには、主に次の情報が設定されています。

  • 所有者となるユーザー
  • 所有グループ
  • 所有者・グループ・その他のユーザーに対する権限

所有者は、そのファイルを所有しているユーザーです。

グループは、複数のユーザーでファイルを共有・管理するために使われます。

ただし、所有者やグループを変更しただけで、読み取り・書き込み・実行権限そのものが変わるわけではありません。

権限を変更する場合はchmodコマンドを使います。

chownを使う前にls -lで所有者を確認する

chownを実行する前には、ls -lで現在の所有者とグループを確認しましょう。

ls -l sample.txt

たとえば、次のように表示されたとします。

-rw-r--r-- 1 user1 developers 125 Jul 13 10:00 sample.txt

この表示では、user1が所有者、developersが所有グループです。

表示部分 意味
-rw-r–r– ファイルの種類と権限
user1 所有者
developers 所有グループ
125 ファイルサイズ
sample.txt ファイル名

chownで変更するのは、この所有者と所有グループの部分です。

statコマンドで所有者を詳しく確認する

ファイルの所有者やグループを詳しく確認したい場合は、statコマンドも使えます。

stat sample.txt

実行結果には、所有者を表すUidやグループを表すGidなどが表示されます。

ユーザー名・グループ名だけでなく、内部で使用されるUIDやGIDも確認できます。

通常の確認はls -lで十分ですが、より詳しく調べたい場合はstatが便利です。

自分のユーザー名とグループを確認する

chownで指定するユーザー名やグループ名がわからない場合は、whoamiコマンドとidコマンドで確認できます。

現在のユーザー名を確認するには、次のように実行します。

whoami

現在のユーザーが所属しているグループを確認するには、次のように実行します。

id

現在のユーザーのプライマリグループ名だけを表示したい場合は、次のように実行できます。

id -gn

存在しないユーザー名やグループ名をchownに指定するとエラーになるため、事前に確認しておくと安全です。

chownコマンドの基本的な使い方

chownコマンドの基本形は次の通りです。

chown 新しい所有者 対象ファイル

所有者とグループを同時に変更する場合は、次の形で指定します。

chown 新しい所有者:新しいグループ 対象ファイル

実際には所有者変更に管理者権限が必要になることが多いため、sudoを付けて実行するのが一般的です。

sudo chown user1:developers sample.txt

実行後は、ls -lで変更結果を確認します。

ls -l sample.txt

chownを使う基本の流れ

Linux初心者は、次の流れでchownを使うと安全です。

pwd
ls -l sample.txt
whoami
id
sudo chown user1:developers sample.txt
ls -l sample.txt

まずpwdで現在地を確認します。

次にls -lで、変更対象のファイル、現在の所有者、グループを確認します。

whoamiとidで、指定するユーザーやグループを確認します。

chownで所有者やグループを変更します。

最後にもう一度ls -lを実行し、意図した内容に変わったか確認します。

chownで所有者だけを変更する

所有者だけを変更し、グループをそのままにしたい場合は、ユーザー名だけを指定します。

sudo chown user1 sample.txt

このコマンドでは、sample.txtの所有者だけがuser1へ変更されます。

所有グループは変更されません。

変更後はls -lで確認しましょう。

ls -l sample.txt

chownで所有者とグループを同時に変更する

所有者とグループを同時に変更する場合は、ユーザー名とグループ名をコロンで区切ります。

sudo chown user1:developers sample.txt

この例では、次のように変更されます。

  • 所有者:user1
  • 所有グループ:developers

Linuxサーバーの運用では、この書き方をよく使用します。

ユーザー名とグループ名の間にスペースは入れません。

chownでグループだけを変更する

所有者を変えず、グループだけを変更したい場合は、コロンの後ろにグループ名を指定します。

sudo chown :developers sample.txt

このコマンドでは、sample.txtの所有者を維持したまま、所有グループだけをdevelopersへ変更します。

グループだけを変更する操作には、chgrpコマンドを使う方法もあります。

sudo chgrp developers sample.txt

chown user:の意味

GNU版のchownでは、ユーザー名の後ろにコロンだけを付ける書き方もあります。

sudo chown user1: sample.txt

この指定では、所有者をuser1へ変更し、グループをuser1のログイングループへ変更します。

次の指定とは動作が異なります。

sudo chown user1 sample.txt

ユーザー名だけを指定した場合は、所有者だけが変更され、グループは維持されます。

指定 所有者 グループ
chown user1 file user1へ変更 変更しない
chown user1:group1 file user1へ変更 group1へ変更
chown :group1 file 変更しない group1へ変更
chown user1: file user1へ変更 user1のログイングループへ変更

ユーザー名・グループ名を数字で指定する

chownでは、ユーザー名やグループ名の代わりにUIDとGIDを指定できます。

sudo chown 1001:1001 sample.txt

この例では、所有者のUIDを1001、所有グループのGIDを1001へ変更します。

UIDやGIDはidコマンドで確認できます。

id user1

通常はユーザー名とグループ名で指定したほうが意味を理解しやすいですが、バックアップの復元やコンテナ環境などでは数値指定を使うことがあります。

chownで複数ファイルの所有者を変更する

chownでは、複数のファイルをまとめて指定できます。

sudo chown user1:developers file1.txt file2.txt file3.txt

このコマンドでは、3つのファイルすべての所有者とグループを変更します。

実行前に、対象ファイルをlsで確認しておきましょう。

ls -l file1.txt file2.txt file3.txt

ワイルドカードを使って複数ファイルを変更する

ワイルドカードを使って、複数ファイルをまとめて指定することもできます。

sudo chown user1:developers *.log

このコマンドでは、現在のディレクトリにある.logファイルが対象になります。

ワイルドカードは想定より多くのファイルに一致することがあるため、実行前にlsで対象を確認しましょう。

ls -l *.log

chownでディレクトリの所有者を変更する

chownはファイルだけでなく、ディレクトリにも使用できます。

たとえば、projectディレクトリの所有者とグループを変更する場合は、次のように実行します。

sudo chown user1:developers project

このコマンドで変更されるのは、projectディレクトリ自体です。

projectの中にあるファイルやサブディレクトリの所有者までは変更されません。

中身も含めて変更する場合は、-Rオプションを使います。

chown -Rでディレクトリ配下を再帰的に変更する

chown -Rを使うと、ディレクトリとその中にあるファイル・サブディレクトリの所有者をまとめて変更できます。

sudo chown -R user1:developers project

-Rはrecursiveの意味で、指定したディレクトリ配下へ再帰的に処理します。

Webサイトの公開ディレクトリや、別ユーザーからコピーしたプロジェクト全体の所有者をそろえる場面で使われることがあります。

ただし、影響範囲が非常に広いため、実行前の確認が重要です。

chown -Rを使う前に確認すること

chown -Rを使う前には、次の内容を確認しましょう。

  • pwdで現在地を確認する
  • ls -ldで対象ディレクトリ自体を確認する
  • findで配下のファイルを確認する
  • 指定するユーザーとグループが存在するか確認する
  • システムディレクトリを誤って指定していないか確認する
pwd
ls -ld project
find project -maxdepth 2
id user1

特に、/、/etc、/usr、/var全体などを対象にした再帰的なchownは、システムを正常に動作させるための所有者情報を壊す可能性があります。

意味を理解しないまま、広い範囲にchown -Rを実行するのは避けましょう。

chown -vで変更内容を表示する

chown -vを使うと、処理したファイルごとに変更内容を表示できます。

sudo chown -v user1:developers sample.txt

-vはverboseの意味です。

どのファイルに処理が行われたか画面で確認したい場合に便利です。

複数ファイルを操作するときは、変更対象を把握しやすくなります。

chown -cで変更があったファイルだけ表示する

chown -cを使うと、所有者やグループが実際に変更されたファイルだけを表示します。

sudo chown -c user1:developers *.log

すでに指定した所有者とグループになっているファイルは、通常表示されません。

変更が発生した対象だけ確認したい場合に便利です。

chown –referenceで別ファイルと同じ所有者にする

–referenceオプションを使うと、別のファイルと同じ所有者・グループを設定できます。

sudo chown --reference=reference.txt sample.txt

この例では、sample.txtの所有者とグループをreference.txtと同じ内容に変更します。

ユーザー名やグループ名を直接指定せず、既存ファイルにそろえたい場合に便利です。

実行前後はls -lで確認しましょう。

ls -l reference.txt sample.txt

chown –fromで変更前の所有者を条件にする

GNU版chownでは、–fromを使って、現在の所有者やグループが条件に一致したファイルだけを変更できます。

sudo chown --from=olduser:oldgroup newuser:newgroup sample.txt

この例では、sample.txtの現在の所有者がolduser、グループがoldgroupの場合だけ変更します。

想定外の所有者になっているファイルまで変更したくない場合に利用できます。

初心者が最初に覚える必要はありませんが、安全性を高めるためのオプションとして知っておくと便利です。

シンボリックリンクにchownを使うときの注意

シンボリックリンクにchownを実行する場合、通常はリンク先のファイルが対象になる動作があります。

シンボリックリンク自体の所有者を変更したい場合は、-hオプションを使います。

sudo chown -h user1:developers link-name

シンボリックリンクを含むディレクトリへchown -Rを実行する場合は、リンク先まで意図せず処理しないように注意が必要です。

処理前に、次のようにリンクを確認しましょう。

find project -type l -ls

Webサーバーのファイルにchownを使う例

Webサーバーで公開するファイルの所有者を変更するために、chownが使われることがあります。

たとえば、サイトの管理ユーザーをwebadmin、共有グループをwebgroupとする場合は、次のような形です。

sudo chown -R webadmin:webgroup /var/www/example

ただし、Webサーバーが使用するユーザー名や、適切な所有者・グループは環境によって異なります。

Apacheだから必ずapache、Nginxだから必ずnginxにすればよいとは限りません。

実行前に、サービスの設定、運用方法、現在の所有者を確認してください。

ls -ld /var/www/example
ps aux | grep -E "apache|httpd|nginx"

コピー後に所有者が変わった場合の確認

sudoでファイルを作成・コピーした場合、所有者がrootになっていることがあります。

たとえば、作業用ユーザーで管理したいファイルがroot所有になっている場合は、ls -lで確認します。

ls -l sample.txt

所有者を現在のユーザーへ戻す場合は、次のように指定できます。

sudo chown "$USER":"$(id -gn)" sample.txt

$USERには現在のユーザー名、$(id -gn)には現在のプライマリグループ名が入ります。

実行前にechoで値を確認しておくと安心です。

echo "$USER"
id -gn

chownとchmodの違い

chownとchmodは、どちらもLinuxのファイル管理でよく使うコマンドですが、変更する内容が違います。

コマンド 変更するもの
chown 所有者・所有グループ sudo chown user1:group1 file
chmod 読み取り・書き込み・実行権限 chmod 644 file

所有者を変えたい場合はchownを使います。

r、w、xで表される権限を変えたい場合はchmodを使います。

Permission deniedが発生したときは、所有者が原因なのか、権限が原因なのかをls -lで確認することが大切です。

chownとchgrpの違い

chownは、所有者とグループの両方を変更できます。

chgrpは、グループだけを変更するコマンドです。

コマンド 変更できるもの
chown 所有者、または所有者とグループ
chgrp グループのみ

次の2つは、グループだけをdevelopersへ変更する点では似た操作です。

sudo chown :developers sample.txt
sudo chgrp developers sample.txt

グループ変更だけを明確に表現したい場合は、chgrpを使うと意図が伝わりやすくなります。

chownで755や777は指定しない

755や777は、chmodで使用する権限の数字です。

chownで使用する数字ではありません。

chmod 755 script.sh

chownには、ユーザー名・グループ名またはUID・GIDを指定します。

sudo chown user1:developers script.sh

「chown 755」や「chown 777」という使い方は、所有者変更と権限変更を混同しています。

所有者はchown、権限はchmodと覚えましょう。

一般ユーザーがchownできない理由

Linuxでは通常、ファイルの所有者を別のユーザーへ変更する操作は、rootなどの特権ユーザーに制限されています。

一般ユーザーが自由に所有者を変更できると、他のユーザーへファイルを押し付けたり、容量制限やセキュリティ管理を回避したりできる可能性があるためです。

そのため、一般的な所有者変更ではsudoを使用します。

sudo chown user1 sample.txt

一方、一般ユーザーでも、自分が所有するファイルのグループを、自分が所属しているグループへ変更できる場合があります。

ただし、利用できる範囲はシステムやファイルシステムの設定によって異なることがあります。

chownコマンドでよくあるエラー

chownコマンドを使っていると、ユーザー名の間違い、権限不足、対象ファイルの指定ミスなどでエラーが表示されることがあります。

代表的なエラーと対処方法を確認しておきましょう。

Operation not permitted

Operation not permittedは、「その操作は許可されていません」という意味です。

chown user1 sample.txt
chown: changing ownership of 'sample.txt': Operation not permitted

一般ユーザーが所有者を変更しようとした場合などに表示されます。

所有者変更が必要で、実行してよい操作であることを確認したうえでsudoを使用します。

sudo chown user1 sample.txt

Permission denied

Permission deniedは、対象へアクセスするための権限が不足している場合に表示されることがあります。

対象ファイルだけでなく、親ディレクトリへ入る権限がないことも原因になります。

次のコマンドで、ファイルと親ディレクトリを確認しましょう。

ls -l sample.txt
ls -ld .
ls -ld 親ディレクトリ

invalid user

invalid userは、指定したユーザー名またはグループ名が存在しない場合に表示されます。

sudo chown unknownuser sample.txt
chown: invalid user: 'unknownuser'

指定するユーザーが存在するか、idコマンドで確認しましょう。

id unknownuser

グループを確認する場合は、getentコマンドを使えます。

getent group developers

No such file or directory

No such file or directoryは、指定したファイルやディレクトリが存在しない場合に表示されます。

sudo chown user1 sample.txt
chown: cannot access 'sample.txt': No such file or directory

pwdで現在地を確認し、lsで対象が存在するか確認しましょう。

pwd
ls -la

Read-only file system

読み取り専用でマウントされているファイルシステムでは、rootでも所有者を変更できないことがあります。

この場合、次のようなエラーが表示されることがあります。

chown: changing ownership of 'sample.txt': Read-only file system

mountコマンドなどで、対象ファイルシステムの状態を確認する必要があります。

原因を理解せずに再マウントするのは危険なので、サーバー管理者や運用手順を確認してください。

chownしてもPermission deniedが解決しない

所有者を変更してもPermission deniedが解決しない場合があります。

考えられる原因には、次のようなものがあります。

  • chmodで設定する権限が不足している
  • 親ディレクトリの実行権限が不足している
  • SELinuxなど別のアクセス制御が働いている
  • 読み取り専用ファイルシステムになっている
  • アプリケーションが別のユーザーで動作している

chownは所有者を変更するコマンドであり、すべての権限エラーを解決するコマンドではありません。

ls -l、ls -ld、psなどを使い、原因を切り分けましょう。

chownで変更できないときの確認ポイント

chownで所有者やグループを変更できないときは、次のポイントを確認しましょう。

  • pwdで現在地を確認したか
  • 対象ファイルやディレクトリが存在しているか
  • ls -lで現在の所有者とグループを確認したか
  • 指定したユーザーが存在しているか
  • 指定したグループが存在しているか
  • 所有者変更にsudoが必要ではないか
  • 親ディレクトリへアクセスできるか
  • ファイルシステムが読み取り専用ではないか
  • chown -Rの対象範囲を間違えていないか

まずは次のコマンドで、対象の状態を確認すると原因を探しやすくなります。

pwd
ls -l 対象ファイル
ls -ld 対象ディレクトリ
id 指定するユーザー

chownコマンドを安全に使うコツ

chownを安全に使うには、変更前後の所有者を確認することが大切です。

初心者は次の流れを習慣にしましょう。

pwd
ls -l 対象ファイル
id 新しい所有者
sudo chown 新しい所有者:新しいグループ 対象ファイル
ls -l 対象ファイル

再帰的に変更する場合は、先に対象範囲をfindで確認します。

find 対象ディレクトリ -maxdepth 2
sudo chown -R 新しい所有者:新しいグループ 対象ディレクトリ

最初から大きな範囲を指定せず、可能であれば1つのテストファイルで動作を確認してから実行しましょう。

chownコマンドを使った練習手順

chownは管理者権限を使用することがあるため、必ず練習用ディレクトリと不要なテストファイルで試してください。

1. ホームディレクトリへ移動する

cd

2. 練習用ディレクトリを作成する

mkdir chown-practice

3. 練習用ディレクトリへ移動する

cd chown-practice

4. 練習用ファイルを作成する

touch sample.txt

5. 現在の所有者を確認する

ls -l sample.txt

6. 現在のユーザーとグループを確認する

whoami
id -gn

7. 練習用ファイルをroot所有に変更する

sudo chown root:root sample.txt

8. 変更結果を確認する

ls -l sample.txt

9. 自分の所有へ戻す

sudo chown "$USER":"$(id -gn)" sample.txt

10. 元に戻ったことを確認する

ls -l sample.txt

この練習では、自分で作成した不要なsample.txtだけを対象にしてください。

システムファイルや既存の設定ファイルでは試さないようにしましょう。

chownコマンドを覚えると何ができるようになる?

chownコマンドを覚えると、Linuxでファイルやディレクトリの所有関係を管理できるようになります。

  • ファイルの所有者を別のユーザーへ変更する
  • 所有者とグループを同時に変更する
  • グループだけを変更する
  • ディレクトリ配下の所有者をまとめて変更する
  • root所有になった作業ファイルを自分へ戻す
  • Webサーバー用ディレクトリの所有者を確認する
  • 別ファイルと同じ所有者・グループを設定する
  • 所有者が原因のPermission deniedを調査する
  • chmodとchownを使い分ける

LinuxサーバーやVPSでは、複数のユーザーやサービスが同じファイルを扱うことがあります。

chownを正しく使えるようになると、権限エラーの調査や安全なファイル管理がしやすくなります。

chownコマンドのよくある質問

chownコマンドは何に使いますか?

chownコマンドは、Linuxでファイルやディレクトリの所有者またはグループを変更するために使います。

sudo chown user1:developers sample.txt

chownは何の略ですか?

chownは「change owner」の略として理解できます。

ファイルやディレクトリの所有者を変更するコマンドです。

chownの基本形は何ですか?

所有者だけを変更する基本形は次の通りです。

sudo chown ユーザー名 ファイル名

所有者とグループを同時に変更する場合は、次のように指定します。

sudo chown ユーザー名:グループ名 ファイル名

chown user:groupとは何ですか?

ユーザー名とグループ名をコロンで区切り、所有者と所有グループを同時に変更する指定です。

sudo chown user1:developers sample.txt

chownでグループだけ変更できますか?

はい、できます。

コロンの後ろにグループ名を指定します。

sudo chown :developers sample.txt

chgrpコマンドを使う方法もあります。

chown -Rとは何ですか?

chown -Rは、指定したディレクトリと、その配下にあるファイル・サブディレクトリの所有者を再帰的に変更するオプションです。

sudo chown -R user1:developers project

影響範囲が広いため、実行前に対象を必ず確認してください。

chownとchmodの違いは何ですか?

chownは所有者とグループを変更します。

chmodは読み取り・書き込み・実行権限を変更します。

所有者を変えるならchown、権限を変えるならchmodです。

chownとchgrpの違いは何ですか?

chownは所有者とグループを変更できます。

chgrpはグループだけを変更します。

chown 755やchown 777は正しいですか?

755や777はchmodで使う権限の数字であり、chownで指定するものではありません。

chmod 755 script.sh

chownではユーザー名とグループ名を指定します。

sudo chown user1:developers script.sh

chownにsudoが必要なのはなぜですか?

Linuxでは通常、ファイルの所有者を別のユーザーへ変更できるのはrootなどの特権ユーザーに限られます。

そのため、所有者変更ではsudoが必要になることが多いです。

現在の所有者を確認するにはどうしますか?

ls -lを使います。

ls -l sample.txt

より詳しく確認したい場合は、statコマンドも使えます。

現在のユーザー名とグループ名を指定するにはどうしますか?

現在のユーザー名は$USER、現在のプライマリグループ名は$(id -gn)で取得できます。

sudo chown "$USER":"$(id -gn)" sample.txt

実行前にechoとidで値を確認しておくと安全です。

chownでinvalid userと表示される原因は何ですか?

指定したユーザー名またはグループ名が存在しない可能性があります。

idやgetentで確認しましょう。

id user1
getent group developers

chownしてもPermission deniedが解決しないのはなぜですか?

権限不足、親ディレクトリの権限、SELinux、読み取り専用ファイルシステム、サービスの実行ユーザーなど、所有者以外の原因が考えられます。

chownだけでなく、ls -l、ls -ld、chmod、サービス設定も確認する必要があります。

まとめ

chownコマンドとは、Linuxでファイルやディレクトリの所有者とグループを変更するための基本コマンドです。

所有者だけを変更する場合は、次のように実行します。

sudo chown user1 sample.txt

所有者とグループを同時に変更する場合は、ユーザー名とグループ名をコロンで区切ります。

sudo chown user1:developers sample.txt

グループだけを変更する場合は、コロンの後ろにグループ名を指定します。

sudo chown :developers sample.txt

ディレクトリ配下をまとめて変更する場合は、-Rを使います。

sudo chown -R user1:developers project

ただし、chown -Rは影響範囲が広いため、pwd、ls、findで対象を確認してから実行してください。

所有者とグループを確認するには、ls -lを使います。

ls -l sample.txt

chownは所有者を変更するコマンドで、chmodは権限を変更するコマンドです。

Permission deniedが発生した場合は、所有者だけでなく、ファイルの権限、親ディレクトリ、サービスの実行ユーザーなども確認しましょう。

Linux初心者は、まずls -lで現在の所有者を確認し、1つの練習用ファイルでchownの変更前後を確認するところから始めるのがおすすめです。

コメント

タイトルとURLをコピーしました