Доброе утро,

Я пытаюсь настроить на моем компьютере CentOS задание cron, которое будет передавать файл из домашнего каталога одного пользователя в каталог другого.

btiseis@mymachine [~]# mv ./myfile.csv /home/mmh/tmp

Я гарантировал, что каталог tmp имеет разрешения 0777, но я все еще получаю следующее сообщение об ошибке:

mv: accessing '/home/mmh/tmp': Permission denied

Я предполагаю, что эта проблема связана с передачей файла через домашние каталоги.

Есть идеи?

Дэн

1 ответ1

0

Домашние каталоги ничего особенного; это просто пользователи, которые называют их так. Ничто в системе не заботится о том, считается ли каталог "домашним каталогом" для пользователя.

Вам действительно нужны разрешения на все каталоги. Таким образом, вам нужно разрешение на запись в /home /mmh /tmp и чтение + выполнение в /home /mmh (хотя достаточно либо чтения, либо выполнения, просто не знаю, какой именно. Но обычно read и execute либо установлены, либо не установлены для каталогов), так что вы действительно можете добраться до /home /mmh /tmp внутри.

Вы можете обойти все это, если запустите cronjob от имени root; Как правило, не стоит расширять права доступа, если это не требуется. Это может быть или не быть проблемой в вашем случае (я полагаю, что нет других пользователей), но вредные привычки трудно убрать позже.

РЕДАКТИРОВАТЬ: если два пользователя "дружелюбны" (например, два ваших воплощения, так что вы действительно не возражаете против другого парня, слоняющегося вокруг ваших данных), вы можете добавить основную группу "целевого" пользователя в список групп "отправка" пользователя и использование групповых разрешений. Во многих системах каждый пользователь создается со своей собственной частной группой.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .