Page 2 of 3

Re: Ошибка создания почтового ящика

Posted: Sat Aug 20, 2016 12:44 pm
by selb
Как выполнить команду v-add-mail-account в php?
Пробую «exec('v-add-mail-account USER DOMAIN ACCOUNT PASSWORD');» — не работает.
При «exec('v-add-mail-account USER DOMAIN ACCOUNT PASSWORD', $output, $return_var);» $return_var = 127.

Re: Ошибка создания почтового ящика

Posted: Wed Aug 24, 2016 1:00 pm
by skurudo
Верное направление, но стоит начать с проверки - shell exec у вас не запрещен в php.ini ?

Re: Ошибка создания почтового ящика

Posted: Wed Aug 24, 2016 1:07 pm
by selb
Нет, не запрещен. exec() точно работает.
Во время разных экспериментов с путями до v-add-mail-account $return_var = 126 | 127 — не помню когда сколько.

Re: Ошибка создания почтового ящика

Posted: Thu Aug 25, 2016 8:03 am
by skurudo
selb wrote:Нет, не запрещен. exec() точно работает.
Во время разных экспериментов с путями до v-add-mail-account $return_var = 126 | 127 — не помню когда сколько.
Есть такая вероятность, что у пользователя не задана переменная PATH

Code: Select all

export VESTA=/usr/local/vesta/
И стоит попробовать с полным путем к команде - /usr/local/vesta/bin/v-add-mail-account

Re: Ошибка создания почтового ящика

Posted: Thu Aug 25, 2016 2:45 pm
by selb
При

Code: Select all

<?php
#!/usr/bin/env php
$cmd = 'export VESTA=/usr/local/vesta/; /usr/local/vesta/bin/v-add-mail-account USER DOMAIN ACCOUNT PASSWORD';
// або $cmd = '/usr/local/vesta/bin/v-add-mail-account USER DOMAIN ACCOUNT PASSWORD';
exec($cmd, $output, $status_code);
if ($status_code !== 0) echo 'error code: ' . $status_code;
else echo 'OK!'
?>
error code: 126

При

Code: Select all

$cmd = 'export VESTA=/usr/local/vesta/; v-add-mail-account USER DOMAIN ACCOUNT PASSWORD';
//або $cmd = 'v-add-mail-account USER DOMAIN ACCOUNT PASSWORD';
error code: 127

Покопался в коде

Code: Select all

<?php
define('VESTA_CMD', '/usr/bin/sudo /usr/local/vesta/bin/');
exec(VESTA_CMD."v-add-mail-account USER DOMAIN ACCOUNT PASSWORD 50", $output, $status_code);
if ($status_code !== 0) echo 'error code: ' . $status_code;
else echo 'OK!'
error code: 1
Если убрать «лишний» агрумент (/usr/bin/sudo ), error code: 126

Re: Ошибка создания почтового ящика

Posted: Mon Aug 29, 2016 10:00 am
by skurudo
Эти манипуляции проходят под пользователем admin?
open_basedir не мешает при этом?

Re: Ошибка создания почтового ящика

Posted: Mon Aug 29, 2016 3:12 pm
by selb
Нет. Под пользователем Vesta CP. У админа нет сайта :)

Re: Ошибка создания почтового ящика

Posted: Tue Aug 30, 2016 6:11 am
by skurudo
selb wrote:Нет. Под пользователем Vesta CP. У админа нет сайта :)
У меня есть подозрение, что у пользователя нет прав на выполнение скриптов из каталога /usr/local/vesta/bin
Включите пользователю ssh, зайдите под ним и попробуйте выполнить команду.

Re: Ошибка создания почтового ящика

Posted: Sun Sep 04, 2016 7:15 am
by selb
skurudo wrote:У меня есть подозрение, что у пользователя нет прав на выполнение скриптов из каталога /usr/local/vesta/bin
Включите пользователю ssh, зайдите под ним и попробуйте выполнить команду.
Все права на файлы -rwxrwx--- root root
Включил: «/usr/local/vesta/bin/v-add-mail-account: Permission denied»

Re: Ошибка создания почтового ящика

Posted: Wed Nov 02, 2016 6:50 pm
by traney
Подскажите, пожалуйста.
Создаю ящик в Весте, все Гуд. Но в roundcube зайти не могу, проверяю таблицу пользователей roundcube - пустая. т.е. Веста не создает пользователя в roundcube, но я так понимаю что должна. Как мне её (Весту) настроить, что бы создавала пользователя в roundcube ?

UPDATE: Нашел на форуме такую фразу:
В базе roundcube никакие пользовательские данных не хранятся.
rouncube подключается к imap/pop3, а тот в свою очередь берет данные у exim

Очень странно что база не создалась во время инсталляции панели.
Я проверю этот вопрос на Ubuntu 12.04
Вопрос с Таблице в БД отпал. Тогда, куда копать дальше?