Гражданин планеты Земля
С нами с 30.03.03
Сообщения: 7217
Рейтинг: 2185
|
Добавлено: 19/01/07 в 11:49 |
Вообщем возникла проблема при выполнении кроном под рутом скрипта вида
Код: |
copy("$src_path/file1.dat", "$dest_path/$file1.dat");
copy("$src_path/file2.dat", "$dest_path/$file2.dat");
exec("convert $src_path/img1.jpg -resize 320x240 $dest_path/img1.jpg", $result); |
первые две строки выполняются корректно и все копируется, а вот вторая после ресайза маджиком не может создать изображение по новому пути. При этом если этот же скрипт запустить через веб, т.е. под nobody, то треться строка также выполнятся нормально и создается новое изображения. Я вообще не могу понять в чем может быть дело в первом случае при запуске кроном да еще под рутом. Есть у кого какие мысли по этому?
PS. $dest_path создается также в этом скрипте.
|
|
|
|
С нами с 29.12.06
Сообщения: 62
Рейтинг: 84
|
Добавлено: 19/01/07 в 13:17 |
попробуй заменить
exec("convert $src_path/img1.jpg -resize 320x240 $dest_path/img1.jpg", $result);
на
`convert $src_path/img1.jpg -resize 320x240 $dest_path/img1.jpg`;
или на
`convert '$src_path/img1.jpg' -resize 320x240 '$dest_path/img1.jpg'`;
а вообще - проще запусти сам скрипт руками из под рута (если он должен от него выполнятся) и смотри что за ерроры выдаст.
P.S. Советую запускать все таки не из под рута из соображений безопасности.
|
|
|
|
Гражданин планеты Земля
С нами с 30.03.03
Сообщения: 7217
Рейтинг: 2185
|
Добавлено: 19/01/07 в 13:58 |
запускал из под рута convert $src_path/img1.jpg -resize 320x240 $dest_path/img1.jpg
никаких сообщений, просто снова строка ввода комманд. Непонятно почему при запуске через веб все работает нормально.
|
|
|
|
С нами с 29.12.06
Сообщения: 62
Рейтинг: 84
|
Добавлено: 19/01/07 в 14:09 |
не. ты запусти именно сам скрипт аля:
php cron.php
тоесть полностью что в кроне..
увидишь на что ругается, ну, есть конечно и неправильный вариант для крона:
lynx --dump http://domain.com/cron.php >/dev/null 2>&1
если с веба работает, то запустит с веба, но это неправильный вариант - лучше найти причину.
Непробывал писать не convert а /usr/local/bin/convert ?
|
|
|
|
С нами с 21.09.03
Сообщения: 7329
Рейтинг: 2144
|
Добавлено: 19/01/07 в 14:13 |
Во первыз, от рута картинки ковырять - дурной тон. А во вторых, пусть к конверту указывать не пробовал?
|
|
|
|
С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362
|
Добавлено: 19/01/07 в 16:07 |
покажи мне как ты получаешь :
Код: |
$src_path, $dest_path
|
|
|
|
|
БешаныйСуслег
С нами с 16.06.04
Сообщения: 1322
Рейтинг: 1338
|
Добавлено: 19/01/07 в 21:20 |
Возможно convert не найден?
|
|
|
|
С нами с 03.07.05
Сообщения: 474
Рейтинг: 231
|
Добавлено: 19/01/07 в 23:11 |
1. convert не найден
2. путь не найден (скорее всего)
3. включать надо error_reporting ~E_ALL и смотреть что за ошибки выдаются.
|
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 20/01/07 в 01:39 |
интересно, нахуа конверт пикч под рутом пускать.... это фетиш новый?
|
|
|
|
Гражданин планеты Земля
С нами с 30.03.03
Сообщения: 7217
Рейтинг: 2185
|
Добавлено: 20/01/07 в 05:07 |
Petroff, спасибо за идеи. Сейчас буду пробовать.
xreload писал: | покажи мне как ты получаешь : $src_path, $dest_path
|
Врядли получится. Тот код это маленький кусочек достаточно большого проекта. Эти пути формируются по нескольким алгоритмам из различных частей получаемых выборокой из нескольких таблиц в бд, плюс множество различных условий которые будут понятны скорее всего лишь при разбирании всего проекта. Пути 100% верны. Т.к >> Если запустить http://www.domain.cpm/cron.php, то скрипт выполняется полностью корректно в том числе и тот самый convert!
netzoner писал: | 1. convert не найден
2. путь не найден (скорее всего)
3. включать надо error_reporting ~E_ALL и смотреть что за ошибки выдаются. |
Еще раз пишу. Есть файл, например, cron.php.
>> Если запустить http://www.domain.cpm/cron.php, то скрипт выполняется полностью корректно в том числе и тот самый convert!
>> Если запустить cd /usr/home/path/ ; /usr/local/bin/php -q cron.php, то скрипт также выполняется полностью, но кроме convert'а.
Pentarh, вопрос не в том под кем нужно запускать, а почему кроном из под рута не выполняется convert.
|
|
|
|
С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362
|
Добавлено: 20/01/07 в 07:04 |
а мне все не нужно, нужно лишь две строчки, из того условия которое выполняется при тесте.
|
|
|
|
Гражданин планеты Земля
С нами с 30.03.03
Сообщения: 7217
Рейтинг: 2185
|
Добавлено: 20/01/07 в 07:35 |
ну вот к примеру тестовый вариант
Код: |
$src = "/usr/home/account/domain.com/bmw.jpg";
$dst = "/usr/home/account/domain.com/bmw2.jpg";
exec("convert $src -resize 50% $dst", $result);
|
|
|
|
|
С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362
|
Добавлено: 20/01/07 в 07:48 |
попробуй :
Код: |
exec("convert '$src' -resize 50% '$dst'");
|
|
|
|
|
Гражданин планеты Земля
С нами с 30.03.03
Сообщения: 7217
Рейтинг: 2185
|
Добавлено: 20/01/07 в 07:55 |
Вообще никак, бляя  ...не работает и этот вариант
Код: |
exec("convert /usr/home/account/domain.com/bmw.jpg -resize 50% /usr/home/account/domain.com/bmw2.jpg");
|
ЗЫ. Только что запустил через веб http://www.domain.com/cron.php и все отресайзилось... я в шоке
|
|
|
|
С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362
|
Добавлено: 20/01/07 в 08:10 |
Код: | exec("/usr/local/bin/convert '$src' -resize 50% '$dst'"); |
|
|
|
|
Гражданин планеты Земля
С нами с 30.03.03
Сообщения: 7217
Рейтинг: 2185
|
Добавлено: 20/01/07 в 08:19 |
Обана!  Этот тестовый вариант сработал, ща буду проверять полную версию крона. Блин, я же вроде пробовал раньше с путем по совету Petroff'а и тоже ничего... кстати без апострофоф тоже работает
|
|
|
|