Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Скрипт перезапуска монтирования Яндекс диска.  (Прочитано 1107 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Симэн

  • Автор темы
  • Новичок
  • *
  • Сообщений: 23
    • Просмотр профиля
Доброе время суток  :)

Програмистом не являюсь, прошу помощи или консультации  ???

Для монтирования Яндекс Диска используется утилита davfs2:
http://savannah.nongnu.org/projects/davfs2

Для первоначального монтирования, мы вводим логин и пароль для поключения к сервису яндекса, и видим сообщение о подтверждении сертификата.
Нам нужно нажать y (yes) для подключения.

Для автоматического ввода логина и пароля утилита davfs2 создает файл secret, куда сохраняет наши рег.данные.

Но для подтверждения подключения, нам все таки необходимо нажать y.

Данную задачу позволяет выполнить утилита yes.

Т.е. после создания файла secret, подключение в терминале будет выглядеть так:

yes | mount.davfs https://webdav.yandex.ru /mnt/yandex_disk
Это работает, и процесс yes завершается.

Есть необходимость прописать эту строку в sh скрипте, строка ввида:
#!/bin/sh
yes | mount.davfs https://webdav.yandex.ru /mnt/yandex_disk

вызывает постоянно запущенный процесс выполнения yes.

Собственно вопрос простой, как прописать эту строку в скрипте, чтобы yes отработал 1 раз и процесс его работы завершился.

Заранее спасибо  ;)
« Последнее редактирование: 24 Октября 2015, 19:31:57 от Симэн »

Оффлайн Azure

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
echo 'y' | mount …не работает?
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн Симэн

  • Автор темы
  • Новичок
  • *
  • Сообщений: 23
    • Просмотр профиля
Azure,
Да вопрос, закрыт, работает, спасибо :)

Пользователь решил продолжить мысль [time]25 Октябрь 2015, 12:18:33[/time]:
Впрочем, "апетит приходит во время еды" и "лень двигатель прогресса"

Хоть за 4 суток,  Яндекс Диск ни разу "не отваливался"...

А можно ли, огранизовать с определенной периодичностью контроль за состоянием - примонтирован ли ЯД к файловой системе девайса или нет ?
Учитывая, что проверка в терминале выглядит так:
df -h /mnt/ya
И как может выглядеть данный код shell-а ???
« Последнее редактирование: 25 Октября 2015, 14:26:18 от Симэн »

Оффлайн Azure

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Почему df?grep -q 'https://webdav.yandex.ru' /proc/mountsне лучше?
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн Симэн

  • Автор темы
  • Новичок
  • *
  • Сообщений: 23
    • Просмотр профиля
Azure,
На выполнение:
grep -q 'https://webdav.yandex.ru' /proc/mountsне ругается
Уже хорошо, осталось осознать что она делает, и как это лучше применить  :D

Оффлайн Azure

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Это проверка на наличие в файле подключенного http. А дальше делайте что надоif grep -q 'https://webdav.yandex.ru' /proc/mounts
then
    echo 'OK'
else
    echo "Trouble"
fi
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
df -h /mnt/ya || mount ....
Wars ~.o

 

Страница сгенерирована за 0.045 секунд. Запросов: 25.