Назад | Перейти на главную страницу

cp + не хочет перезаписывать разрешения

Как вы используете 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

Или вы можете использовать еще лучше установить программа из GNU coreutils, созданная для этой конкретной цели. Обратите внимание, что он не поддерживает рекурсию (без опции -R или -r).

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

Не используйте переключатели, связанные с разрешениями, особенно --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