Page 14 of 15 FirstFirst ... 412131415 LastLast
Results 196 to 210 of 212

Thread: Проблемы с остановкой внешнего HDD (hdparm)

  1. #196
    Ребята, помогите пожалуйста.

    1) DIR-320-3.0.5-r4923M + ЖД + hdparm.
    ядро 2.6.22 и команда
    hdparm -B ххх /dev/sda
    вручную выполняется и работает, но как известно до первого обесточивания.

    как сделать чтобы она выполнялась автоматически при каждом монтировании диска?

    2) DIR-320-1.9.2.7-d-r3591M + ЖД + hdparm.
    ядро 2.4.37 и хотя hdparm успешно установлен фактически не работает потому что не видит диск.
    пробовал всячески sdA-Z (1-9) и т.п.

    как это победить?

    в общем задача: на ядре 2.4.37 автоматом выполнять hdparm -B ххх /dev/sda

    я чайник, просидев несколько дней-закипел, и к вам на поклон). надеюсь на помощь. спасибо.

  2. #197
    Quote Originally Posted by Чело View Post
    Ребята, помогите пожалуйста.

    1)как сделать чтобы она выполнялась автоматически при каждом монтировании диска?
    UserScripts

    2) DIR-320-1.9.2.7-d-r3591M + ЖД + hdparm.
    http://oleg.wl500g.info/bin/

  3. #198
    спасибо за ответ, но очень прошу для чайника подробнее разжевать.

    1)пробовал текстовым редактором добавить
    #!/bin/sh
    hdparm -B ххх /dev/sda
    в post-mount, но не работает, как именно такая команда должна выглядеть?

    2) что именно с этим нужно сделать, чтобы hdparm видел диски и работал с ними?
    http://oleg.wl500g.info/bin/

  4. #199
    Quote Originally Posted by Чело View Post
    спасибо за ответ, но очень прошу для чайника подробнее разжевать.

    1)пробовал текстовым редактором добавить
    #!/bin/sh
    hdparm -B ххх /dev/sda
    в post-mount, но не работает, как именно такая команда должна выглядеть?

    2) что именно с этим нужно сделать, чтобы hdparm видел диски и работал с ними?
    http://oleg.wl500g.info/bin/
    1. Создаёте папку /tmp/local/sbin
    2. Создаёте файл post-mount
    3. Меняете у созданного файла атрибут на исполняемый
    4. Сохраняете флэш рам
    5. Перезагружаетесь

    Если hdparam не выводит никаких сообщений в лог, можно добавить соответственно logger
    Last edited by dlukanidin; 13-04-2013 at 09:19.
    ASUS RT-AC66U <Merlin 384.15>
    ASUS RT-N66U <Merlin>
    ASUS RT-N16 <Merlin>

    Макет нового WEB интерфейса Для iPhone/iPad

  5. #200
    Quote Originally Posted by Чело View Post
    hdparm.mipsel?
    а как?
    Вопрос не мальчика, но мужа.
    cd /tmp/local/
    wget http://oleg.wl500g.info/bin/hdparm.mipsel
    flashfs save && flashfs commit && flashfs enable

  6. #201
    Quote Originally Posted by Hohmach View Post
    Так ведь уже установлено во флэш, разве нет?
    мне кажется нет, просто скачено туда.
    если я ошибаюсь, то как ее использовать?

    например при установке
    ipkg install hdparm
    загружается и устанавливается свежайшая версия проги, которая хоть и успешно устанавливается но не видит диски на старом ядре.

  7. #202
    Quote Originally Posted by Чело View Post
    ipkg install hdparm
    Это не пакет, это бинарник.

    mv /tmp/local/hdparm.mipsel /tmp/local/hdparm
    chmod +x /tmp/local/hdparm
    flashfs save && flashfs commit

  8. #203
    Hohmach, я очень благодарен вам за помощь!
    и хотя я все сделал как вы писали, hdparm не найден
    вытягивать из вас по строчке уже стыдно, поэтому решил плюнуть на старое ядро.

    пожалуйста помогите с первым вопросом:

    1) DIR-320-3.0.5-r4923M + ЖД + hdparm.
    ядро 2.6.22
    команда
    hdparm -B ххх /dev/sda
    вручную выполняется и работает как требуется, но нужно ее поставить на автоматическое выполнение.

    делал это: (спс dlukanidin)
    1. Создаёте папку /tmp/local/sbin
    2. Создаёте файл post-mount
    3. Меняете у созданного файла атрибут на исполняемый
    4. Сохраняете флэш рам
    5. Перезагружаетесь
    нет эффекта
    это
    http://wl500g.info/showthread.php?18...992#post128992
    и это
    http://vectormm.net/routers/routery-...a-routera.html
    не работает.

    пожалуйста, для совсем идиота, напишите полностью как должен выглядеть скрипт и куда его положить чтобы выполнялась одна единственная команда:
    hdparm -B ххх /dev/sda

  9. #204
    Code:
    mkdir /usr/local/sbin
    echo "#!/bin/sh" > /usr/local/sbin/post-boot
    echo "hdparm -B ххх /dev/sda" >> /usr/local/sbin/post-boot
    chmod +x /usr/local/sbin/post-boot
    flashfs save && flashfs commit && flashfs enable && reboot

  10. #205
    Quote Originally Posted by Hohmach View Post
    Code:
    mkdir /usr/local/sbin
    echo "#!/bin/sh" > /usr/local/sbin/post-boot
    echo "hdparm -B ххх /dev/sda" >> /usr/local/sbin/post-boot
    chmod +x /usr/local/sbin/post-boot
    flashfs save && flashfs commit && flashfs enable && reboot
    выполнил все это - не работает.

    сделал все тоже самое с post-mount - не работает.

    Factory Default + только hdparm, все повторил - не работает.

    вручную в putty - работает.

    что не так?
    Last edited by Omega; 16-04-2013 at 00:53. Reason: неудивительно, нужно указывать полные пути до файлов ;) а выполняли всё это в vi или в блокноте с его переводами строк? :)

  11. #206
    Quote Originally Posted by Чело View Post
    выполнил все это - не работает.

    сделал все тоже самое с post-mount - не работает.

    Factory Default + только hdparm, все повторил - не работает.

    вручную в putty - работает.

    что не так?
    Скорее всего на момент выполнения post-mount ещё не смонтировался внешний диск
    Сделайте чуть по другому - из post-mount или post-boot запустите скрипт который сначала проверяет наличие диска, а потом уже запускает hdparam. Что то типа такого:
    Code:
    post-mount:
    #!/bin/sh
    hdparamstart &
    
    hdparamstart:
    #!/bin/sh
    max_time=20
    # wait for disk mount to $max_time sec
    for i in $(seq $max_time); do
    	dir=$(ls -d /tmp/mnt/*/*)
    	[ "$dir" != "" ] && break
    	sleep 1
    done
    hdparm -B ххх /dev/sda
    Не уверен, что (ls -d /tmp/mnt/*/*) это правильно, писал это для совершенно другой ситуации где было важно наличие на диске определённого каталога, а попробовать сейчас не на чем, в общем это должна быть команда которая выдаёт не пустую строку если диск подключен и пустую в обратном случае.
    Возможно (mount | grep sda) ???
    Last edited by dlukanidin; 15-04-2013 at 23:30.
    ASUS RT-AC66U <Merlin 384.15>
    ASUS RT-N66U <Merlin>
    ASUS RT-N16 <Merlin>

    Макет нового WEB интерфейса Для iPhone/iPad

  12. #207
    Join Date
    Mar 2011
    Location
    Moscow
    Posts
    248
    Quote Originally Posted by dlukanidin View Post
    Скорее всего на момент выполнения post-mount ещё не смонтировался внешний диск
    Может ли такое быть? Ведь "post-mount" - это "после-монтирования" )
    WL500gp 1.9.2.7-d-r2624, Optware.

  13. #208
    Quote Originally Posted by don-pedro View Post
    Может ли такое быть? Ведь "post-mount" - это "после-монтирования" )
    По идее не может, но мне не приходят на ум другие причины, по которым не выполняется после ребута, а выполняется из putty. Отличие ИМХО скорее всего в таймауте, а это в свою очередь означает, что не закончились некоторые переходные процессы с диском.
    Возможно это и не монтирование, а диск просто не готов остановиться сразу после монтирования. Может достаточно и просто sleep 3 вставить например перед запуском hdparam, но это уже - такие костыли из брёвен (если причину не определить, то такой таймаут может зависеть от слишком большого числа факторов и работать только для Вашей конфигурации аппаратуры). Ищите и пробуйте.
    P.S. Вот ещё мысль пришла, Диск смонтировался, Вы его останавливаете, а после этого ещё какая то операция с диском производится системой (например какое то отложенное чтение корневого каталога файловой системой, это только предположение), как результат он снова запускается сразу, а Вы этого даже не успеваете увидеть, но команда остановки отменяется.
    Может всё таки использовать скрипты с первых страниц этой темы, которые останавливают диск, если в течении некоторого времени не было обращений к нему?
    Last edited by dlukanidin; 16-04-2013 at 17:40.
    ASUS RT-AC66U <Merlin 384.15>
    ASUS RT-N66U <Merlin>
    ASUS RT-N16 <Merlin>

    Макет нового WEB интерфейса Для iPhone/iPad

  14. #209
    снится мне сон...

    post-boot - слишком рано
    post-mount - допустим не корректно отрабатывает, странно но допустим,
    но pre-shutdown то железно должен отработать!
    проснулся, сделал, не работает.

    получается диск и монтирование не при чем, это в принципе не рабатает, либо не пашут стартовые скрипты либо команда "кривая".

    нет никаких сомнений что вся проблема от "неровности" моих рук и недостатке опыта в деле "линоксо-укрощения", но с другой стороны все делаю под зорким руководством старших опытных товарищей, и вы бы заметили явную лажу.

    что еще пробовал:

    Quote Originally Posted by dlukanidin View Post
    Code:
    post-mount:
    #!/bin/sh
    hdparamstart &
    
    hdparamstart:
    #!/bin/sh
    max_time=20
    # wait for disk mount to $max_time sec
    for i in $(seq $max_time); do
    	dir=$(ls -d /tmp/mnt/*/*)
    	[ "$dir" != "" ] && break
    	sleep 1
    done
    hdparm -B ххх /dev/sda
    не помогло,

    Quote Originally Posted by dlukanidin View Post
    Может достаточно и просто sleep 3 вставить
    пихал слипы куда надо и куда не надо разной продолжительности

    не отпустило,

    Quote Originally Posted by Чело View Post
    Last edited by Omega; 16-04-2013 at 00:53. Причина: неудивительно, нужно указывать полные пути до файлов а выполняли всё это в vi или в блокноте с его переводами строк?
    делал исключительно в vi и в putty т.к. по другому просто не умею.
    какие пути не полные? что исправить?

    пробовал поновей прошивку r5010M,
    перекидывал все "хозяйство" на флешку, а ЖД чистый в холостом ходу - прежняя ситуация.
    пробовал на лету:
    подключаю ЖД и начинаю вручную запускать команду, примерно на 5 секунде она уже проходит и применяется.

    вывод: не умею заставить работать стартовые скрипты.

    может что-то еще кроме этого
    mkdir /usr/local/sbin
    echo "#!/bin/sh" > /usr/local/sbin/post-boot
    echo "hdparm -B ххх /dev/sda" >> /usr/local/sbin/post-boot
    chmod +x /usr/local/sbin/post-boot
    flashfs save && flashfs commit && flashfs enable && reboot
    нужно чтобы они работали?

    уже не знаю какую еще исполнить пляску с ударными инструментами!

    П.С. часто пишут про каретку windows, ее вообще можно увидеть глазами? в vi она видна?
    Last edited by Omega; 18-04-2013 at 10:52. Reason: а почитать эту тему никак? ;) ну типа /opt/bin/sdparm :)

  15. #210
    Чело

    Чтобы убедится в отработке post-mount, добавь туда
    Code:
    echo "post-mount started" > /tmp/local/test
    После ребута посмотришь появился /tmp/local/test или нет.
    Я думаю post-mount при загрузки не отрабатывает.
    /usr/local/sbin/pre-boot - исполняется до основной инициализации, в момент, когда ещё не подгружены никакие модули ядра, но уже развёрнут flashfs и скопирован начальный образ для /etc из /usr/etc.
    /usr/local/sbin/post-boot - исполняется после того, как устройство закончило загрузку и запустило все сервисы, за исключением связанных с веб-камерой и usb дисками (они запустятся примерно через 10 секунд после этого при "обработке" hot plug событий, когда АСУСовский обработчик до них доберётся)
    /usr/local/sbin/post-mount - отрабатывает, когда устройство завершает монтирование usb дисков, с тем чтобы Вы могли запустить свои сервисы, которые эти диски используют
    /usr/local/sbin/pre-shutdown - работает перед перезагрузкой системы
    /usr/local/sbin/post-firewall - исполняется всякий раз, после того как устройство меняет внутренние правила с помощью команд iptables, с тем, чтобы Вы могли внести свои изменения в firewall
    пропиши свой код в post-boot, все должно отработать.

    И еще тут
    hdparm -B ххх /dev/sda
    укажи полный путь до hdparm, например /tmp/local/hdparm (я не знаю где он у тебя находится).
    Last edited by ildar; 18-04-2013 at 12:00.

Page 14 of 15 FirstFirst ... 412131415 LastLast

Similar Threads

  1. Подключение внешнего жесткого диска WD MyBook 3TiB (LBD)
    By Ilmarranen in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 40
    Last Post: 22-06-2014, 09:36
  2. выбор внешнего Hdd
    By TIk in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 104
    Last Post: 15-03-2009, 20:42

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •