「chown -R を実行しようとして、本当に安全か不安になった」
サーバー移行やユーザー変更の際に必ずと言っていいほど直面する操作です。
この記事では、
chown -R コマンドを使ってディレクトリ配下のファイルの所有権を一括変更する方法を解説します。安全な実行手順と -R オプションの危険性についても合わせて説明します。
・chown -R ユーザー名 ディレクトリ名 でディレクトリ配下の所有権を一括変更できる
・chown はroot権限(sudo)が必要
・-R オプションは再帰的に処理するため、対象を慎重に確認してから実行する
・chown ユーザー名:グループ名 で所有者とグループを同時に変更できる
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
chown -R でディレクトリ内の所有権を一括変更する
基本的な使い方
chown -R は指定したディレクトリとその配下のファイル・サブディレクトリの所有権をすべて変更します。このコマンドは root 権限(sudo)が必要です。
# 変更前の状態を確認する [root@Dolphin pakira]# ls -l chown_test 合計 0 -rw-r--r-- 1 pakira pakira 0 Feb 4 10:23 chown_file1 -rw-r--r-- 1 pakira pakira 0 Feb 4 10:23 chown_file2 -rw-r--r-- 1 pakira pakira 0 Feb 4 10:23 chown_file3 # chown_test ディレクトリ配下の所有権を root に一括変更する [root@Dolphin pakira]# chown -R root:root /home/pakira/chown_test/ # 変更後の状態を確認する [root@Dolphin pakira]# ls -l chown_test 合計 0 -rw-r--r-- 1 root root 0 Feb 4 10:23 chown_file1 -rw-r--r-- 1 root root 0 Feb 4 10:23 chown_file2 -rw-r--r-- 1 root root 0 Feb 4 10:23 chown_file3 # ↑所有者とグループが root に変更されました。
【重要】-R オプションの危険性と安全な実行方法
-R オプションは指定したパス以下のすべてを再帰的に変更します。誤ったパスを指定すると、意図しないファイルの所有権まで変わってしまいます。
# 【危険な例】/ (ルート) を指定してしまった場合 # chown -R root:root / ← 絶対に実行しないこと! # 安全な実行手順 # 1. まず対象を確認する(--dry-run はないので ls で確認) [root@Dolphin ~]# ls -la /home/pakira/chown_test/ # 2. フルパスで指定して実行する [root@Dolphin ~]# chown -R newuser:newgroup /home/pakira/chown_test/ # 3. 変更後に確認する [root@Dolphin ~]# ls -la /home/pakira/chown_test/
所有者のみ・グループのみを変更する
# 所有者のみ変更する(グループは変更しない) [root@Dolphin ~]# chown -R newuser /home/pakira/chown_test/ # グループのみ変更する(所有者は変更しない) [root@Dolphin ~]# chown -R :newgroup /home/pakira/chown_test/ # または chgrp コマンドを使う [root@Dolphin ~]# chgrp -R newgroup /home/pakira/chown_test/
トラブルシュート
「Operation not permitted」が出る場合
一般ユーザーは自分が所有していないファイルの所有権を変更できません。必ず
sudo を付けて実行するか、root ユーザーで実行してください。# sudo を付けて実行する [pakira@Dolphin ~]$ sudo chown -R pakira:pakira /home/pakira/chown_test/
本記事のまとめ
| やりたいこと | コマンド |
|---|---|
| ディレクトリ配下を一括で所有者変更 | chown -R ユーザー名 ディレクトリ名 |
| 所有者とグループを同時に変更 | chown -R ユーザー名:グループ名 ディレクトリ名 |
| グループのみを変更 | chown -R :グループ名 ディレクトリ名 |
| グループのみを変更(chgrp版) | chgrp -R グループ名 ディレクトリ名 |
chown -R は強力なコマンドです。実行前に必ず対象パスを確認し、フルパスで指定する習慣をつけましょう。ディレクトリ単位の所有権変更を安全に実行できるスキルを身につける
chownの-Rオプションを正しく使えると、ファイル移行やサーバー移管作業がスムーズに進みます。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。
「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:ファイルを誰でも書き込めるが、所有者しかファイルを削除できないディレクトリを作成する(スティッキービット)
- 前のページへ:ファイル・ディレクトリの所有権を変更する
- この記事の属するカテゴリ:Linuxtips・ディレクトリ・ファイル操作へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます