web-dev-qa-db-ja.com

cp +許可を上書きしたくない

ターゲットファイルの権限を変更せずにcpコマンドをどのように使用しますか?例えば:

cp /tmp/file   /home/file

chownchgrpを変更したくない/home/file

24
David

開いただけの場合 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
31
Lekensteyn

catも機能します:

cat /tmp/file > /home/file
10
Cakemox

cpは、デフォルトでは権限を上書きしません。権限が上書きされないようにしたい場合は、

cp --preserve=mode,ownership /tmp/file /target_dir_where_file_resides
1
rok

アクセス許可関連のスイッチは特に使用しないでください。特に--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
0
basin

または、この特定の目的のために作成されたGNU coreutilsからのより良いinstallプログラム)を使用できます。は再帰できません(-Rまたは-rオプションはありません)。

http://www.gnu.org/software/coreutils/manual/html_node/install-invocation.html

0
lzap