
Допустим, у меня есть два файла:
-rw-rw-r-- 1 webapp webapp 215 Jun 21 2012 index.php
-rw-rw-rw- 1 root root 58 Dec 17 11:02 patch.log
Я хотел бы предоставить patch.log
те же разрешения, что и index.php
.
Я могу сделать это вручную:
chown webapp:webapp patch.log
chmod 664 patch.log
Но это должно быть частью сценария, и я не обязательно знаю, какие именно разрешения у него index.php
есть.
Есть ли способ скопировать разрешения одного файла на другой файл?
решение1
Вы можете использовать файл в качестве справочного файла как для chown, так и для chmod.
chown --reference=index.php patch.log
chmod --reference=index.php patch.log
Кстати, это все есть в man-страницах.
--reference=RFILE использовать владельца и группу RFILE вместо указания значений OWNER:GROUP
--reference=RFILE использовать режим RFILE вместо значений MODE
решение2
Если есть вероятность наличия расширенных списков контроля доступа для рассматриваемых файлов, лучше использовать getfacl/setfacl:
getfacl index.php | setfacl --set-file=- patch.log