Я создаю скрипт, который перемещает файлы журналов, созданные mysql.
Файлы, которые мне нужно переместить, создаются регулярно и выглядят примерно так
gorf@212370 ~/рабочий стол $ ls -l /mysql-log/
-rw-rw---- 1 mysql mysql 148 13 ноября 18:39 bin-log.000019
-rw-rw---- 1 mysql mysql 126 13 ноября 18:42 bin-log.000020
-rw-rw---- 1 mysql mysql 148 13 ноября 18:44 bin-log.000021
-rw-rw---- 1 mysql mysql 148 13 ноября 18:50 bin-log.000022
-rw-rw---- 1 mysql mysql 148 13 ноября 18:50 bin-log.000023
-rw-rw---- 1 mysql mysql 107 13 ноября 18:50 bin-log.000024
-rw-rw---- 1 mysql mysql 1456 13 ноября 18:50 bin-log.index
и пользователь, которого я использую для перемещения файлов,
gorf@212370 ~/Desktop $ группы gorf
gorf: gorf adm cdrom sudo dip plugdev lpadmin sambasare mysql
Поскольку файлы принадлежат mysql, а пользователь «gorf» принадлежит к группе «mysql», я ожидал, что смогу перемещать файлы. Однако, если я попытаюсь переместить файлы, мне будет отказано в доступе.
gorf@212370 ~/Desktop $ mv /mysql-log/bin-log.000023 ./
mv: невозможно переместить «/mysql-log/bin-log.000023» в «./bin-log.000023»: разрешение отклонено
, но если я скопирую их
gorf@212370 ~/Desktop $ cp /mysql-log/bin-log.000023 ./
это нормально.
В сценарии мне нужно переместить файлы, поскольку они являются частью добавочной резервной копии. Одним из решений было бы запустить скрипт от имени пользователя root, но из соображений безопасности я ищу более элегантные решения.
Что я могу сделать, чтобы решить эту проблему?