ターゲットファイルの権限を変更せずにcp
コマンドをどのように使用しますか?例えば:
cp /tmp/file /home/file
chown
とchgrp
を変更したくない/home/file
。
開いただけの場合 cp
のマニュアル ...
次はファイルのアクセス許可と所有権+グループシップを上書きしません:
cp --no-preserve=mode,ownership /tmp/file /home/file
所有権とグループシップを保持したい場合は、root権限が必要であることに注意してください。
マニュアルからの抜粋:
--preserve[=ATTR_LIST] preserve the specified attributes (default: mode,owner- ship,timestamps), if possible additional attributes: context, links, xattr, all
cat
も機能します:
cat /tmp/file > /home/file
cpは、デフォルトでは権限を上書きしません。権限が上書きされないようにしたい場合は、
cp --preserve=mode,ownership /tmp/file /target_dir_where_file_resides
アクセス許可関連のスイッチは特に使用しないでください。特に--no-preserve
、奇妙な動作をするため:
良い:
[il@localhost Downloads]$ Sudo cp ssh_Host_* /etc/ssh/
[il@localhost Downloads]$ ls -l /etc/ssh
total 604
-rw-r--r-- 1 root root 581843 Oct 20 2017 moduli
-rw-r--r-- 1 root root 2276 Oct 20 2017 ssh_config
-rw------- 1 root root 3907 Oct 20 2017 sshd_config
-rw-r-----. 1 root ssh_keys 227 Oct 2 12:26 ssh_Host_ecdsa_key
-rw-r--r--. 1 root root 172 Oct 2 12:26 ssh_Host_ecdsa_key.pub
-rw-r-----. 1 root ssh_keys 411 Oct 2 12:26 ssh_Host_ed25519_key
-rw-r--r--. 1 root root 100 Oct 2 12:26 ssh_Host_ed25519_key.pub
-rw-r-----. 1 root ssh_keys 1679 Oct 2 12:26 ssh_Host_rsa_key
-rw-r--r--. 1 root root 392 Oct 2 12:26 ssh_Host_rsa_key.pub
悪い:
[il@localhost Downloads]$ Sudo cp --no-preserve=mode,ownership ssh_Host_* /etc/ssh/
[il@localhost Downloads]$ ls -l /etc/ssh
total 604
-rw-r--r-- 1 root root 581843 Oct 20 2017 moduli
-rw-r--r-- 1 root root 2276 Oct 20 2017 ssh_config
-rw------- 1 root root 3907 Oct 20 2017 sshd_config
-rw-r--r--. 1 root ssh_keys 227 Oct 2 12:27 ssh_Host_ecdsa_key
-rw-r--r--. 1 root root 172 Oct 2 12:27 ssh_Host_ecdsa_key.pub
-rw-r--r--. 1 root ssh_keys 411 Oct 2 12:27 ssh_Host_ed25519_key
-rw-r--r--. 1 root root 100 Oct 2 12:27 ssh_Host_ed25519_key.pub
-rw-r--r--. 1 root ssh_keys 1679 Oct 2 12:27 ssh_Host_rsa_key
-rw-r--r--. 1 root root 392 Oct 2 12:27 ssh_Host_rsa_key.pub
または、この特定の目的のために作成されたGNU coreutilsからのより良いinstallプログラム)を使用できます。は再帰できません(-Rまたは-rオプションはありません)。
http://www.gnu.org/software/coreutils/manual/html_node/install-invocation.html