article-thumbnail

コピー元の権限を保持したままファイル・ディレクトリをコピーする

カテゴリ: Linux

タグ: cpコマンド,権限,パーミッション

2020-09-19 01:17:10

【概要】

コピー元の権限を保持したままファイル・ディレクトリをコピーする方法についてまとめます。


【詳細】

[概要]

オプションpを使用する事で以下の情報を保持します。

・所有者

・グループ

・アクセス権

・更新時刻

・アクセス時刻


[構文]

cp -rp コピー元 コピー先

上記では「rオプション」をつけていますが、コピー対象がファイルの場合は不要です。


[コマンド例]

・ファイルをコピーする

cp -p hoge.txt ~/hoge.txt


・ディレクトリをコピーする

ディレクトリを対象とする場合はオプションにrを追加します。

下記は「/var/www/html/hoge.com」ディレクトリをコピーする方法例です。

cp -rp /var/www/html/hoge.com ~/hoge.com


[ディレクトリとファイルのコピー実行例と権限確認]

ec2-userのホームディレクトリにhogeディレクトリを作成し、ディレクトリ配下にtest.txtを作成します。

mkdir ~/hoge
touch ~/hoge/test.txt


hogeディレクトリとtest.txtの権限を確認します。

ls -al ~/hoge

出力結果

合計 0

drwxrwxr-x 2 ec2-user ec2-user 22 9月 19 00:58 .
drwx------ 9 ec2-user ec2-user 266 9月 19 01:03 ..
-rw-rw-r-- 1 ec2-user ec2-user  0 9月 19 00:58 test.txt


rootユーザーのホームディレクトリに上記で作成したhogeディレクトリをコピーします。

sudo su -
cp -rp /home/ec2-user/hoge ~/hoge


コピーしたhogeディレクトリの権限を確認します。

ls -al hoge

出力結果

total 4.0K
drwxrwxr-x 2 ec2-user ec2-user  22 Sep 19 00:58 .
dr-xr-x--- 10 root   root   4.0K Sep 19 00:59 ..
-rw-rw-r-- 1 ec2-user ec2-user  0 Sep 19 00:58 test.txt