Jump to content

Автостарт/Autostart sh-скриптов


Recommended Posts

День добрый, форумчане. У меня простой вопрос на который, тем не менее, ответ что-то не гуглится. Установлен Entware-Keenetic. Хочу, чтобы в каком-нибудь скрипте выполнялось hdparm -BX /dev/sdX при перезапуске роутера, т.к. достало щелканье подключенного через usb винта. Где бы это прописать? Спасибо.

Link to comment
Share on other sites

Что в итоге: создан startup script /opt/etc/init.d/S99hdparm:

#!/bin/sh

ENABLED=yes
PROCS=hdparm
ARGS="-S255 -B255 /dev/sdb"
PREARGS=""
DESC=$PROCS
PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

. /opt/etc/init.d/rc.func

Но на старте автоматически не отрабатывает, вручную отрабатывает:

~ # hdparm -B /dev/sdb

/dev/sdb:
 setting Advanced Power Management level to 0x80 (128)
 APM_level	= 128
~ # /opt/etc/init.d/S99hdparm start
 Starting hdparm...              done. 
~ # hdparm -B  /dev/sdb

/dev/sdb:
 APM_level	= off
 
~ # ls -la /opt/etc/init.d/S99hdparm
-rwxr-xr-x    1 root     root           212 Oct  2 19:16 /opt/etc/init.d/S99hdparm

Хотел попробовать вариант по старинке с cron @reboot, но https://dev.openwrt.org/ticket/12438 .

Вообщем, не работает.

 

Edited by just_a_man
mistake
Link to comment
Share on other sites

12 минуты назад, just_a_man сказал:

Что в итоге: создан startup script /opt/etc/init.d/S99hdparm:

А не проще такой

#!/opt/bin/sh

/opt/sbin/hdparm -S255 -B255 /dev/sdb
/opt/bin/logger "setting sdb params"

 

17 минут назад, just_a_man сказал:

Хотел попробовать вариант по старинке с cron

Поможет пакет fake-hwcock.

Link to comment
Share on other sites

  • 1 month later...

Добрый день, уважаемые форумчане! Подскажите пожалуйста, как сделать автомонтирование ftp-ресурса при перезапуске роутера утилитой CurlFtpFS? Погуглив нашел на сайте https://wiki.archlinux.org/index.php/CurlFtpFS подсказку, что необходимо в файл /etc/fstab добавить эту строку

curlftpfs#USER:PASSWORD@ftp.domain.org /mnt/mydomainorg fuse auto,user,uid=1000,allow_other,_netdev 0 0

Файла /etc/fstab соответственно нет. Можно ли в  /opt/etc/init.d/ создать скрипт автозапуска и какие параметры он должен содержать? Как корректно прописать задержку в х-секунд до автомонтирования, пока, например, не загрузится NAS (WDMyCloud)?

Link to comment
Share on other sites

29 минут назад, Khaninea сказал:

Можно ли в  /opt/etc/init.d/ создать скрипт автозапуска и какие параметры он должен содержать?

А почему бы собственно и нет. Нужно прописывать команды ручного монтирования. Перед ними нужно вводить команду sleep, если нужна задержка.

Скрытый текст

~ % sleep --help                                                   
Использование: sleep ЧИСЛО[СУФФИКС]…
       или:    sleep КЛЮЧ
Приостанавливает выполнение на заданное ЧИСЛО секунд. СУФФИКС может
принимать значение «s», что означает секунды (применяется по
умолчанию), «m» — минуты, «h» — часы и «d» — дни.  В отличие от
других реализаций, которые требуют, чтобы ЧИСЛО было целым, здесь оно
может быть произвольным числом с плавающей запятой.  Если задано несколько
аргументов, приостанавливает на период, равный сумме их значений.

 

Пример:

sleep 10 && curlftpfs ftp.yourserver.com /mnt/ftp/ -o user=username:password,allow_other

В примере задержка монтирования 10 секунд. Если нужно, то смотрите другой, вам подходящий, вариант монтирования (их в арчвики указано три).

Edited by Mamont
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...