это мой скрипт "backup.sh":
#!/bin/bash
date=$(date +"%m-%d-%Y_%r")
mmv -r "uploads/temp/*" "#1\ '$date'"
mv /ftphome/uploads/temp/* /ftphome/uploads/arch/
Моя структура каталогов выглядит так:
dr-xr-xr-x 9 it2 it2 4096 Feb 29 12:09 arch
drwxrwxr-x 2 it2 it2 4096 Feb 29 12:09 temp
Когда я пытаюсь выполнить скрипт из консоли, все работает - как root, потому что в противном случае я получаю сообщение об ошибке «каталог загружает / temp / каталог не разрешает запись» <- я специально установил это разрешение.
К сожалению, когда я пытаюсь запустить этот скрипт кукурузой, команда mmv не выполняется, и все файлы перемещаются в каталог «arch» без суффикса.
Я пытался изменить разрешение chmod на 777 для «временного» каталога, но это не помогло. Я отредактировал crontab как root, поэтому он должен работать как root (информацию, которую я прочитал в этой теме: Как запустить задание cron с помощью команды sudo ).
Кстати, это как будто я пытаюсь выполнить скрипт cron (каждая минута для тестирования):
* * * * * /ftphome/backup.sh
Вам нужно к cd
к корректному каталогу сначала. Крон начинает Вас по телефону /
.
#!/bin/bash
date=$(date +"%Y-%m-%d_%r")
cd /ftphome || exit
mmv -r "uploads/temp/*" "#1\ '$date'"
mv /ftphome/uploads/temp/* /ftphome/uploads/arch/
На ноте стороны, не помещайте .sh
расширение в сценарий удара. Это вводит в заблуждение, так как sh не является ударом.
umount: /tmp: not mounted
. что я должен сделать? – mrid 27 September 2017 в 19:51