Продвинутая настройка и установка дополнительного ПО
на NAS Iomege Home Media Network Hard Drive Cloud Edition
Этот пост открывает серию статей по установке дополнительного ПО на NAS Iomege Home Media Network Hard Drive Cloud Edition (HMNHD CE).
Характеристики устройства можно посмотреть здесь.
Там же можно посмотреть начальную разметку дисков и др. сведения необходимые для модификации ПО.
ВАЖНО!!! Все описанные действия могут привести к потере доступа к диску и придется восстанавливать доступ по инструкциям отсюда. Физически испортить устройство описанными действиями вы не сможете, т.к. в устройстве прошивка хранится не во флэш памяти, а непосредственно на самом жестком диске.
Для начала нам понадобится доступ к устройству через ssh. Для его включения необходимо в строке адреса браузера набрать: https://[nas ip]/diagnostics.html и поставить галочку "Разрешить удаленный доступ для поддержки (SSH и SFTP)":
Подключится по ssh можно например с помощью putty (Win). Для OS X можно использовать встроенный терминал или iTerm 2 (нормально реагирует на мышь).
Логин для подключения: root
Пароль: soho<ваш пароль>
Сначала включим систему управления пакетами ipkg для установки ПО:
# cat <<EOF>> /etc/ipkg.conf
# src cross http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable
# src native http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/native/unstable
# EOF
# src cross http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable
# src native http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/native/unstable
# EOF
затем:
# ipkg update
и теперь можно ставить любой доступный пакет:
# ipkg install <package_name>
список всех пакетов:
# ipkg list
И поставим файловый менеджер МС для более удобного управления файлами:
# ipkg install mc
Все пакеты ipkg ставятся в раздел /mnt/system/opt (линк на него /opt в корне). Исполняемые файлы помещаются непосредственно в /opt/bin.
Пропишем пути к /opt/bin и opt/lib для того, чтобы установленные нами пакеты работали сразу и не требовали предварительных команд. Для этого запустим МС:
# /opt/bin/mc
И отредактируем переменную PATH в файле /etc/profile. Необходимо добавить в конце строки ":/mnt/system/opt/bin".
Далее в файле /etc/ld.so.conf.d/libc.conf добавим строчку:
/mnt/system/opt/lib
И выполним команду переформирования связей для библиотек:
# ldconfig
Теперь пропишем автозапуск для пакетов устанавливаемых ipkg. Для этого скачиваем архив.
В нем три файла:
1. update-alternatives необходим optware. Если его нет, то ipkg пишет ошибки настройки. Его необходимо просто поместить в папку /opt/bin и поставить права на исполнение
2. optware.sh - это файл автозагрузки скриптов из папки /opt/etc/init.d.
Для установки копируем его в папку /etc/init.d, затем:
2. optware.sh - это файл автозагрузки скриптов из папки /opt/etc/init.d.
Для установки копируем его в папку /etc/init.d, затем:
# update-rc.d optware.sh defaults 99 01
все, теперь у нас работает автозагрузка сервисов устанавливаемых через ipkg.
Первая проблема с которой мы столкнемся, это то, что мы не имеем прав на изменение данных в папке /mnt/apps. Есть два решения:
1. Примонтировать копию apps в режиме записи. Это делается путем ввода следующих команд в терминале (каждый раз перед тем, как необходимо внести изменения):
# mknod -m0660 /dev/loop3 b 7 3
# chown root.disk /dev/loop3
# mkdir /tmp/apps
# mount -o loop /boot/images/apps /tmp/apps
Теперь у нас в папке /tmp/apps находится копия apps в которой мы можем менять все что угодно. После изменения данных необходимо отмонтировать папку:
# mkdir /tmp/apps
# mount -o loop /boot/images/apps /tmp/apps
Теперь у нас в папке /tmp/apps находится копия apps в которой мы можем менять все что угодно. После изменения данных необходимо отмонтировать папку:
# umount /tmp/apps
2. Заменить стандартный initrd на доработанным мной.
Для этого необходимо распаковать архив и полученный файл залить на NAS. Зайти на устройстве в данную папку и выполнить следующий код:
# dd if=initrd of=/dev/sda bs=512 seek=16674
перегружаемся:
# shutdown -r now
Все. Теперь у нас apps всегда доступна на запись.
О том как самому изменять initrd и собирать ядро смотрите в следующих постах
Скачал putty, запускаю putty_portable.exe, ввожу имя сервера порт 22...в открывшемся окне ввожу логин, а пароль не вводиться, кароче не могу подсоедениться...что не так?
ОтветитьУдалитьПароль вводиться с "затенением".
ОтветитьУдалитьЛогин - root
пароль - sohoтвойпарольадмина - но его не видно
Комрад, спасибо за твою работу!
ОтветитьУдалитьЕсть пару вопросов:
1. Ты пишешь - И отредактируем переменную PATH в файле /etc/profile. Необходимо добавить в конце строки ":/mnt/system/opt/bin".
Вопрос - в файле два раза определяется переменная PATH, я так понимаю добавлять нужно в первом случае, т.е.?
2. Ты пишешь - Далее в файле /etc/ld.sk.conf.d/libc.conf добавим строчку:
/mnt/system/opt/lib
Вопрос - мне кажется ты ошибся в написании пути к файлу. Правильный путь /etc/ld.so.conf.d/libc.conf
1. Добавить можно в первую переменную PATH, вторая в обычном режиме не используется
ОтветитьУдалить2. Опечатка. Исправил.
Игорь, спасай!!!
ОтветитьУдалитьпосле этого
2. Заменить стандартный initrd на доработанным мной.
Для этого необходимо распаковать архив и полученный файл залить на NAS. Зайти на устройстве в данную папку и выполнить следующий код:
# dd if=initrd of=/dev/sda bs=512 seek=16674
перегружаемся:
# shutdown -r now
Все. Теперь у нас apps всегда доступна на запись.
девайс перегрузился и больше не откликается, горит белая лампочка при попытке зайти через веб или терминал выдает timed out!!!!
Можно попробовать восстановить по инстуркции без переформатирования. (см. соответствующий пост в данном блоге). Если не помогает, то значит была допущена ошибка в цифрах или записан не верный файл. В этом случае восстановление через подключение к компу. Если диск на 2ТБ можно скачать образ с моего сайта (https://sites.google.com/site/itmindco/zagruzki?pli=1) и залить командой с компа:
ОтветитьУдалитьcat dump.lzma | lzma -d | dd of=/dev/sdX bs=1M
(где X-номер жесткого диска)
Либо заново залить initrd через комп (dd if=initrd of=/dev/sdХ bs=512 seek=16674)
Так же можно из прошивки скачанной с сайта iomega вытащить стандартный initrd и записать его.
Игорь, привет!
ОтветитьУдалитьЦифры проверил все правильно, твой файл не модифицировал, в общем не важно в чем была проблема, ее нужно решить.
можешь подробно описать вот это - залить командой с компа:
cat dump.lzma | lzma -d | dd of=/dev/sdX bs=1M
(где X-номер жесткого диска)
что значит залить с компа? я не могу через терминал достучаться к устройству, нужно подключить диск к компу? через какой интерфейс? я пробовал подключить через внешний юсб карман, ни мак ни винда (дома два ноутбука) диск не видят и предлагают его отформатировать, что для меня не приемлемо.
где, в каком приложении нужно выполнять эту команду - cat dump.lzma | lzma -d | dd of=/dev/sdX bs=1M?
Заранее спасибо за ответы
Владимир, в хранилище используется линуксовая фаловая ситема xfs. Для того что бы к ней получить доступ можно скачать любой дистрибутив лив CD и загрузиться с него. Например можно от сюда: http://www.ubuntu.com/download/ubuntu/download. Соответственно команду cat dump.lzma | lzma -d | dd of=/dev/sdX bs=1M запускать с компьютера под линухом в её терминале. Номер диска можно посмотреть в дисковой утилите(Команды не смогу подсказать).
ОтветитьУдалитьУдачи!
Спасибо за помощь комрады,
ОтветитьУдалитьв итоге поставил убунту подмонтировал диск, забрал 44 гб фотографий, отформатировал винт, поставил его во внешний карман и все теперь работает как надо, более убогого продукта, как иомега я не имел никогда, это просто жесть какая-то, одно расстройство...
Добрый день!
ОтветитьУдалитьВы пишите:
2. Заменить стандартный initrd на доработанным мной.
Для этого необходимо распаковать архив и полученный файл залить на NAS. Зайти на устройстве в данную папку и выполнить следующий код:
# dd if=initrd of=/dev/sda bs=512 seek=16674
перегружаемся:
# shutdown -r now
Все. Теперь у нас apps всегда доступна на запись.
Не пойму куда имеено скопировать, в какую папку и в какую папку зайти? Команду нужно выполнять в MC или в терминале?
Этот комментарий был удален автором.
ОтветитьУдалитьПомогите, пожалуйста!
ОтветитьУдалитьСделал все по инструкции, однако после перезагрузки Transmission автоматически не запускается. Сделал вывод через echo событий в файл - все файлы и optware и S99transmission обрабатываются. Если просто вручнуюзапустить S99Transmisiion, то торрент запускается и работает. Но после перезагрузки автоматом никак не стартует.
Куда копать?
Вот ошибка из лога var/log/boot - "/mnt/system/opt/bin/transmission-daemon: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory"
ОтветитьУдалитьОткуда здесь взялась libevent-2.0.so.5?