macOS で chown を実行しても無視されるとき
ターミナル
macOS のターミナルアプリから chown コマンドを実行してもファイルの所有者が変わらないことがあったので、その原因を探してみました。
macOS のターミナルを使ってファイルの所有者を変更しようと思ったときに、思いがけずにうまくいかないことがありました。
たとえば test.txt
というファイルがあったとして、この所有者を root
に変更したいときには、普通であれば次のコマンドを実行すれば変更できます。
sudo chown root test.txt
所有権が変更されない
ところがこれを実行しても、ファイルの所有権が変更されないことがありました。先ほどのコマンドを実行しても ls -l
で確認してみると、所有者が自分のままになっています。
ただこれは、全ての macOS で所有権の変更ができないわけではなくて、別の Mac では問題なく所有者を変更できる様子でした。
所有権を無視させない
所有権を変更できない原因は、そのディレクトリーが Thunderbolt 接続などの外付けディスクに存在するためのようでした。
ディレクトリーがあるボリュームの情報を見てみると、その 共有とアクセス権
のところのいちばん下に このボリューム上の所有権を無視
というチェック項目があります。
ここにチェックが入っていると chown
コマンドで所有権を変更しようとしても無視されてしまう様子でした。