Не запускается скрипт (проблема с автозапуском...)

Kubuntu, Xubuntu и другие

Модератор: Модераторы разделов

VladVol
Сообщения: 142
ОС: KUbuntu

Не запускается скрипт

Сообщение VladVol »

Всем привет! Решил перейти на Убунту, пока еще чайник в этом деле, плз, помогите решить проблему!

Создал скрипт, который монтирует и отключает сетевые ресурсы, было это создано из-за того, что работаю с ноута через ви-фи. При выключении система отключается от сети и отключает все подмонтированые ресурсы, после чего ждет что-то типа ответа от сервера, но его нет т.к. сеть лежит. Убунту все равно пытается получить этот ответ в течении 15 - 10 минут и потом выключает ноут. Т.е. обычное выключение или перезагрузка с 1.5. минуты превращается в 15-ти минутное ожидание. Соответственно, если все шары отключаю в ручную и потом выключаю ноут, все супер, выключение происходит за секунды. Это такое на Убунту 11.04, не знаю как было раньше.

Выход был найден, создать скрипт, который будет сам подключать шары и отключать, но запустить его я не могу.

Может скрипт левый, но запуск в ручную делает все команды на ура :unsure:
Вот сам скрипт:

Код: Выделить всё

#!/bin/bash
ls 2>&1  | tee /home/vlad/auto.log

# === Constants ===

SHERHAN=192.168.0.109
JTS=192.168.0.100

# === Functions ===

# +++ Проверка 109 +++
# проверяем подмонтирован ресурс или нет
function check_109 {
if mount -v | grep //192.168.0.109/;
    then
    echo Ресурс "Шерхан" подмонтирован
     unmount_109
       else
       echo ресурс "Шерхан" отмонтирован
        mount_109
fi
}

# +++ Отмонтировать 109 +++
# отключаем подмонтированый ресурс 109 и проверяем состояние
function unmount_109 {
 echo Отключаю...
  umount //192.168.0.109/Archive /media/Sherhan_file_server/Archive
  umount //192.168.0.109/File_server /media/Sherhan_file_server/File_server
  umount //192.168.0.109/Scripts /media/Sherhan_file_server/Scripts
# проверка после отключения
   if mount -v | grep //192.168.0.109/;
     then
     echo ошибка "unmount_109"
       else
       echo ресурс успешно отключен
  fi
}

# +++ Примонтировать 109 +++
# подключаем отмонтированный ресурс 109 и проверяем состояние
function mount_109 {
 echo Включаю...
  mount //192.168.0.109/Archive /media/Sherhan_file_server/Archive -t cifs -o iocharset=utf8,user=vlad,password=
  mount //192.168.0.109/File_server /media/Sherhan_file_server/File_server -t cifs -o iocharset=utf8,user=vlad,password=
  mount //192.168.0.109/Scripts /media/Sherhan_file_server/Scripts -t cifs -o iocharset=utf8,user=vlad,password=
# проверка после включения
       if mount -v | grep //192.168.0.109;
         then
         echo Ресурс успешно подключен
          else
          echo Ошибка "mount_109"
     fi
}

# +++ Проверка 100 +++
# проверяем подмонтирован ресурс или нет
function check_100 {
if mount -v | grep //192.168.0.100/;
    then
    echo Ресурс "JT" подмонтирован
     unmount_100
       else
       echo ресурс "JT" отмонтирован
        mount_100
fi
}

# +++ Отмонтировать 100 +++
# отключаем подмонтированый ресурс 100 и проверяем состояние
function unmount_100 {
 echo Отключаю...
  umount //192.168.0.100/JTstorage /media/JTStorage
# проверка после отключения
   if mount -v | grep //192.168.0.100/;
     then
     echo ошибка "unmount_100"
       else
       echo ресурс успешно отключен
  fi
}

function mount_100 {
 echo Включаю...
  mount //192.168.0.100/JTstorage /media/JTStorage -t cifs -o iocharset=utf8,user=vlad,password=
# проверка после включения
       if mount -v | grep //192.168.0.100;
         then
         echo Ресурс успешно подключен
          else
          echo Ошибка "mount_100"
     fi
}




# === Conditions ===
clear
sleep 8
echo Starting...
sleep 2

 # -q quiet
 # -c nb of pings to perform
 ping -q -c5 $SHERHAN > /dev/null
 if [ $? -eq 0 ]
 then
 echo Ресурс "Шерхан", доступен
 check_109
 else
 echo Ресурс "Шерхан", недоступен
 fi

 ping -q -c5 $JTS > /dev/null
 if [ $? -eq 0 ]
 then
 echo Ресурс "JT", доступен
 check_100
 else
 echo Ресурс "JT", недоступен
 fi


Ставить в автозагрузку пробовал по этой статье

Помогите, буду очень благодарен!

И еще, подскажите как правильно вывести всю информацию о выполнении данного скрипта в лог, спасибо!
Спасибо сказали:
VladVol
Сообщения: 142
ОС: KUbuntu

Re: Не запускается скрипт

Сообщение VladVol »

Скажите, хоть скрипт адекватный? Если со скриптом все гуд, буду копать в другом направлении.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Не запускается скрипт

Сообщение sash-kan »

VladVol писал(а):
24.07.2011 13:12
подскажите как правильно вывести всю информацию о выполнении данного скрипта в лог
script >>/var/log/scritpt.output 2>&1
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
VladVol
Сообщения: 142
ОС: KUbuntu

Re: Не запускается скрипт

Сообщение VladVol »

sash-kan писал(а):
24.07.2011 22:49
VladVol писал(а):
24.07.2011 13:12
подскажите как правильно вывести всю информацию о выполнении данного скрипта в лог
script >>/vat/log/scritpt.output 2>&1


Спасибо за совет, возможно это поможет понять мне в чем трабла.
Спасибо сказали:
Аватара пользователя
TRON
Сообщения: 254
ОС: Debian t/u/e

Re: Не запускается скрипт

Сообщение TRON »

2VladVol: Выглядит переусложненно.

Не обязательно пихать в скрипт и монтирование тоже -- с ним то все в порядке. Пусть автоматическое подключение выполняется через fstab. А итоговый скрипт можно ужать до "umount -a -t cifs".

VladVol писал(а):
24.07.2011 13:12
Ставить в автозагрузку пробовал по этой статье


Там два способа описано. Работать должны оба.

Как вариант можно попробовать удалить NetworkManager -- говорят это он виноват.
Спасибо сказали:
VladVol
Сообщения: 142
ОС: KUbuntu

Re: Не запускается скрипт

Сообщение VladVol »

TRON, спасибо за совет, вчера попробовал прописать его в rc.local, запуск пошел, ресурсы монтирует. Осталось понять как его запустить перед выключением.
И еще такой вопрос, если удалить NetworkManager, то все нужно буде прописывать ручками, в каждой новой сети, да и информативность, мягко говоря падает, т.е. подключен он или нет, например. Я правильно я понимаю последствия удаления Network Manager? Или просто лучше поставить альтернативу?
Спасибо сказали:
liaonau
Сообщения: 390
ОС: gentoo

Re: Не запускается скрипт

Сообщение liaonau »

VladVol писал(а):
25.07.2011 09:11
И еще такой вопрос, если удалить NetworkManager, то все нужно буде прописывать ручками, в каждой новой сети, да и информативность, мягко говоря падает, т.е. подключен он или нет, например.

Легко решаемая (скриптуемая) проблема информармативности, а вот насчет «ручками» (кто вообще придумал такой термин!), то разве это плохо? Это же весело и познавательно.
Спасибо сказали:
VladVol
Сообщения: 142
ОС: KUbuntu

Re: Не запускается скрипт

Сообщение VladVol »

liaonau писал(а):
25.07.2011 21:17
Легко решаемая (скриптуемая) проблема информармативности, а вот насчет «ручками» (кто вообще придумал такой термин!), то разве это плохо? Это же весело и познавательно.


Я не против, что познавательно, но это не всегда оправдано, т.к. я рассматриваю убунту как полноценную замену винде. Иногда быват ситуация когда нужно сделать что-то быстро и нет времени писать скрипты.
Насчет информативности, я написал, что я чайник в линуксе, пока даже скрипт нормально запустить не могу.
Спасибо за ответ, но думаю это не для меня, вот когда смогу писать скрипты с головы за 5 мин, подумаю над Вашим советом, а сейчас больше б помог совет как его запустить перед выключением или где искать проблему :crazy:
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Не запускается скрипт

Сообщение drBatty »

VladVol писал(а):
25.07.2011 23:41
Я не против, что познавательно, но это не всегда оправдано, т.к. я рассматриваю убунту как полноценную замену винде. Иногда быват ситуация когда нужно сделать что-то быстро и нет времени писать скрипты.

дык для этого скрипты и нужны. Просто писать их надо так, что-бы они работали в любых условиях. На самом деле это не так уж и сложно.

в вашем конкретном случае действительно проще прописать хосты в /etc/fstab (какая разница - куда? и что менять, скрипт, или /etc/fstab? да никакой. Ваш скрипт всё равно автоматически не определяет, у кого какой IP), монтироваться они будут сами, а вот с выключением...
выключение зависит от дистрибутива. А у меня slackware.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
VladVol
Сообщения: 142
ОС: KUbuntu

Re: Не запускается скрипт

Сообщение VladVol »

drBatty писал(а):
26.07.2011 14:09
VladVol писал(а):
25.07.2011 23:41
Я не против, что познавательно, но это не всегда оправдано, т.к. я рассматриваю убунту как полноценную замену винде. Иногда быват ситуация когда нужно сделать что-то быстро и нет времени писать скрипты.

дык для этого скрипты и нужны. Просто писать их надо так, что-бы они работали в любых условиях. На самом деле это не так уж и сложно.

в вашем конкретном случае действительно проще прописать хосты в /etc/fstab (какая разница - куда? и что менять, скрипт, или /etc/fstab? да никакой. Ваш скрипт всё равно автоматически не определяет, у кого какой IP), монтироваться они будут сами, а вот с выключением...
выключение зависит от дистрибутива. А у меня slackware.


Короче через fstab ничего не вышло т.к. он гуризится гораздо раньше, чем появляется доступ в сеть, запихнул все, что нужно монтировать в rc.local и поставил слип на 20 сек., в первій раз все нормально загрузился, потом снова ничего не монтируется, работает как ему хочется :wacko: .
Отключение ресурсов, umount, засунул в простой скрипт и поставил на запуск в rc.d 0 & 6, это вроде работает, но теперь монтируется через раз... Честно не думал, что такая простая операция может перерости в такой гемор!

И еще, вопрос на засыпку, как заставить загружаться скайп автоматом, вместе с системой?
Спасибо сказали:
VladVol
Сообщения: 142
ОС: KUbuntu

Re: Не запускается скрипт

Сообщение VladVol »

Проблему с моунтом решил, сделал такой же простой скрипт как и для umount, засунул в rc.d 2 3 4 5 на старт, запускается вроде стабильно, но !теперь не хочет отключаться нормально! :angry: Это порочный круг?!
-----------------

Беру слова обратно, все заработало, umount добавил еще в rc.d 1 и вроде пока все работает!! Ура!

А вот со скайпом вопрос актуален, кто как его запускает? (имеется ввиду автоматический запуск)
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Не запускается скрипт

Сообщение sash-kan »

VladVol писал(а):
26.07.2011 16:33
Короче через fstab ничего не вышло т.к. он гуризится гораздо раньше, чем появляется доступ в сеть
слющий, зачэм гуризиться, да?
просто используйте опцию _netdev (см. man mount)
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Не запускается скрипт

Сообщение drBatty »

VladVol писал(а):
26.07.2011 16:49
А вот со скайпом вопрос актуален, кто как его запускает?

в Gnome 2.30 есть gnome-session-properties для этого.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали: