LINUX.ORG.RU
решено ФорумAdmin

Автозапуск Yandex-disk на Debian

 , ,


0

1

Господа, подскажите пожалуйста по запуску yandex-disk'a. Мне нужен не запуск демона вместе с логином пользователя, как предлагает настройка самого приложения, а именно старт демона после загрузки компьютера. Что я сделал для достижения цели: настроил YD для пользователя, перенес конфиги в /etc/yandex.disk, в /etc/init.d/ создал скрипт для запуска, назвал его yand, добавил его при помощи update-rc.d в /etc/rcN.d Но демон все равно не стартует при запуске компьютера. Причем если вручную выполнить /etc/init.d/yand {start|stop} то демон отлично стартует или останавливается. Откуда начинать искать причину ошибки? Где можно глянуть логи стартующих сервисов init.d или лог самого yandex-disk? В общем подскажите кто сталкивался с похожим, или конкретно с ЯД.

Например демон стартует в тот момент, когда сеть еще не сконфигурировалась и падает в связи с отсутствием доступа к ЯД. Если конечно он зависит от сети при запуске.

Olegymous ★★★
()
Ответ на: комментарий от Olegymous

В скрипте я прописал $all, т.е. стартовать он должен в последнюю очередь. А логи стартов можно где либо глянуть чтобы проверить этот момент?

rteer34
() автор топика
Ответ на: комментарий от KJIayC

Вписал следующее:

echo $(date +«%y-%m-%d %T») Start: $USER >> $LOGFILE;
/usr/bin/yandex-disk start -c /etc/yandex-disk/config.cfg >> $LOGFILE;

Получил следующую картину. Когда запускаю из под пользователя, то вижу такой лог:

14-03-19 00:03:06 Start: root
Starting daemon process...Done

А когда ребучу систему, то такую картину вижу:

14-03-19 00:04:12 Start:
Error: Proxy server is unavailable.

Ну вопрос соответственно таков: и что это значит? Почему не отображается имя пользователя под которым запускается? Подозреваю то что дело именно в этом.

rteer34
() автор топика

Позвольте переформулировать вопрос. Как должна выглядеть строка запуска яндексдиска в стартовом скрипте чтобы она запускала демона от имени другого пользователя? Ну допустим от имени yanduser. Сейчас она выглядит так:

/usr/bin/yandex-disk start -c /etc/yandex-disk/config.cfg >> $LOGFILE;

Как нужно переписать? Подозреваю что через sudo, а как там настроить на то чтобы пароль к yanduser не спрашивало? Помогите нубу, а то я не могу понять даже в какую сторону гуглить.

rteer34
() автор топика
Ответ на: yandex-disk от MuTbKa

Нет, davfs2 это совсем не то. Мне по всем параметрам (кроме геморроя с запуском) подходит именно яндексовское приложение.

rteer34
() автор топика
Ответ на: комментарий от rteer34

Переменную $USER устанавливает /bin/login, в момент исполнения скриптов инициализации она не определена. Поэтому имя пользователя и не отображается

Yandex-disk жалуется на то, что недоступен прокси. То есть сеть ещё не поднялась. Можно выставить задержку перед запуском или попробовать пропинговать проксик.

Для того, чтобы выполнить команду от имени другого пользователя используется

su <имя пользователя> -c 'команда'
. Пароль, в данном случае, не нужен.

at ★★
()
Ответ на: комментарий от at

Огромное спасибо Клаус и ат. Заработало после того как вставил sleep 30, и под правильным пользователем. Очевидно что косяк был в сети. В связи с чем теперь вопрос: а как сделать проверку правильно? Ну не тупо задержкой, а именно проверкой доступности сети?

rteer34
() автор топика
Ответ на: комментарий от rteer34

Я же предложил пингануть прокси, например

if ping -W10 -c1 <ip проксика>; # Ждать ответа в течении 10 сек
then 
# если все нормально запустить Yandex-disk
else
# что нибудь сделать если сеть так и не поднялась
fi

at ★★
()
Ответ на: комментарий от at

Шикарно! Все работает. Я воспользовался вашим кодом, и добавил туда счетчик, чтобы он ждал 10 раз по секунде с записью в лог. Большое спасибо всем кто помогал.

rteer34
() автор топика
11 января 2016 г.
Ответ на: комментарий от rteer34

Помогите пожалуйста настроить яндекс синхронизацию

Здравствуйте, У меня ситуация такая: Система Linux Mint 17.3 «Rosa» Mate. Установил его на ссд диск. Параллельно стоит в ноутбуке винчестер на 700 гигов. Установил Yandex-Disk командой sudo apt-get install yandex-disk. Настроил через консоль, вот что получилось в config файле: auth=«/home/leonid/.config/yandex-disk/passwd» dir=«/media/leonid/D/Яндекс Диск» proxy=«no»

После запуска демона (вернее при завершении настройки) демон яндекс диска запускается. Подключается и на команду yandex-disk status выводит данные, что получает данные или что-то такое.

Затем спустя минут 5 он начинает в созданную папку копировать папки и файлы. Но затем просто зависает. На команду status ничего не происходит. После зависания не могу ни запустить вновь демон яндекса. При перезагрузке, демон не перезапускается. Я новичёк в линуксе, это моя 5-я попытка пересесть на линукс, очень хочется, о всегда сталкивался с чем-то что решить не мог.

Помогите, подскажите пожалуйста как правильно поступить, чтоб запустить этот шайтан синхронизатор с яндекс диском?

pentilla
()

2016-01-11.11:04:42 Got signal 6 0.1.5.940 x64 [bt] Execution path: [bt] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x39) [0x7f8e91ccecc9] [bt] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x39) [0x7f8e91ccecc9] [bt] /lib/x86_64-linux-gnu/libc.so.6(abort+0x148) [0x7f8e91cd20d8] [bt] /usr/lib/x86_64-linux-gnu/libstdc++.so.6(_ZN9__gnu_cxx27__verbose_terminate_handlerEv+0x155) [0x7f8e925d9535] [bt] /usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x5e6d6) [0x7f8e925d76d6] [bt] /usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x5e703) [0x7f8e925d7703] [bt] /usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x5e922) [0x7f8e925d7922] [bt] /usr/bin/yandex-disk() [0xa0eb7c] [bt] /usr/bin/yandex-disk() [0x95ea1c] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e] [bt] /usr/bin/yandex-disk() [0x95ea5e]

pentilla
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.