Разрешение наследования файла каталога это копируется в?

Ради разнообразия вот иначе с cut:

cut -d \; -f -3
8
22.07.2018, 05:59
1 ответ

Полномочия обычно не распространяются каталогом, в который копируются файлы, довольно новыми полномочиями управляет пользователь umask. Однако при копировании файла от одного местоположения до другого, это - что-то вроде особого случая где пользователь umask по существу проигнорирован и существующие полномочия на файле сохраняются. Понимание этого понятия является ключом к получению, что Вы хотите.

Таким образом, чтобы скопировать файл, но "отбросить" его текущие полномочия можно сказать cp к "не сохраняют" использование --no-preserve=all переключатель.

Пример

Скажите, что у меня есть следующий файл как Вы.

$ mkdir -m 744 somedir

$ touch afile
$ chmod 400 afile 

$ ll
total 0
-r--------. 1 saml saml 0 Feb 14 15:20 afile

И поскольку Вы подтвердили, копируем ли мы просто вслепую его использование cp мы получаем это:

$ cp afile somedir/
$ ls -l somedir/
total 0
-r--------. 1 saml saml 0 Feb 14 15:20 afile

Теперь давайте повторим это, но на этот раз скажем cp "отбрасывать полномочия":

$ rm -f somedir/afile 

$ cp --no-preserve=all afile somedir/

$ ls -l somedir/
total 0
-rw-rw-r--. 1 saml saml 0 Feb 14 15:21 afile

Так скопированный файл теперь его полномочия установили на 664, где это получало это?

$ umask
0002

Если я изменил мой umask к чему-то еще мы можем повторить этот тест в 3-й раз и видеть эффекты это umask имеет на несохраненном cp:

$ umask 037
$ rm somedir/afile 

$ cp --no-preserve=all afile somedir/
$ ls -l somedir/
total 0
-rw-r-----. 1 saml saml 0 Feb 14 15:29 afile

Заметьте, что полномочия больше не 664, но 640? Это продиктовали umask. Это говорило любые команды, которые создают файл для отключения более низких 5 битов в полномочиях... эти парни: (----wxrwx).

13
27.01.2020, 20:10
  • 1
    --no-preserve флаг не является стандартным, по-видимому, GNUism. –  vonbrand 14.02.2014, 22:38
  • 2
    Корректный, спасибо я означал говорить это в A. –  slm♦ 14.02.2014, 22:38
  • 3
    в духе Дня святого Валентина, я даю Вам виртуальный поцелуй, он работает!Спасибо! –  LUUUUUUUUUUUUU 14.02.2014, 22:42

Теги

Похожие вопросы