Linux d link dns 325

У меня возникла «бюджетная» идея использовать в качестве резервной СУБД (как временное решение на случай отказа) уже имеющийся в наличии NAS D-Link DNS-325. Организация небольшая + безотрывное производство + отсутствие дежурного специалиста, но это только для вступления.

Решая данный вопрос, я потратил немало времени на поиск необходимой информации, что подтолкнуло меня написать данную публикацию.

Так как на борту у данного устройства ОС Linux, задача выглядела вполне решаемой. С коробки устройство управляется через веб-интерфейс и имеет довольно ограниченные возможности, список приложений доступных для установки не впечатляет.

1. Задался вопросом подключения по telnet или SSH и дальнейшей возможности установки ПО

В этом мне помогла публикация с любимого Хабра — «Тачку на прокачку — настраиваем и расширяем возможности D-Link DNS-325». По инструкции в ней удалось настроить доступ по SSH, а также настроить дополнительные репозитории (Optware) для установки ПО. К сожалению, в репозиториях Optware firebird найти не удалось.

2. Попытки установки Firebird

Т.к. на устройстве используется ARM процессор с архитекутой ARMV5TEL, на тот момент поддержка архитектуры для Firebird 2.5 отсутствовала. Я все-таки решил попробовать установку прямо на устройстве из исходников отсюда: Firebird 2.5. Рекомендованный Autogen.sh отказался устанавливать с сообщением о неизвестной ему архитектуре. В рукопашную удалось пройти только этап конфигурирования «configure», после чего «make» вываливал ошибки, по описанию которых (+ поиск) было понятно, что без правки исходников не обойтись.

Оставалось 2 решения: кросскомпиляция под необходимую архитектуру или использования уже существующих скомпилированных пакетов для указанной архитектуры, которые были найдены в репозиториях debian. Я поискал информацию по обоим решениям, и на мой взгляд более простым выглядела установка debian с использованием инструмента debootstrap. Еще одним плюсом данного решения является возможность доступа к репозиторию debian, в котором намного больше ПО, чем у Optware.

3. Установка debian wheezy с использованием инструмента debootstrap

Т.к. сам debootstrap также отсутствует в репозиториях Optware, подготовку образа системы debian буду производить на ubuntu, установленной на виртуалке.

Устанавливаем debootstrap (при недостаточных привилегиях не забываем про sudo):

apt-get install debootstrap -y apt-get clean 

Создаем образ и запаковываем в архив:

debootstrap --foreign --arch armel wheeze debian "http://ftp.ru.debian.org/debian" tar -czf debian.tar.gz debian 

Далее полученный архив debian.tar.gz необходимо скопировать на NAS любым способом, как вариант через расшаренные папки. Далее подключаемся к NAS по SSH, например, с помощью PUTTY и выполняем следующее.

Читайте также:  Web application firewall linux

Распаковываем архив, монтируем фалы устройств из текущей системы NAS, разворачиваем систему:

tar -xf debian.tar.gz mount -o bind /dev ./debian/dev mount -o bind /proc ./debian/proc grep -v rootfs /proc/mounts > ./debian/etc/mtab chroot ./debian/ /bin/bash /debootstrap/debootstrap --second-stage exit 

Копируем сетевые настройки из текущей системы NAS:

cp /etc/hosts ./debian/etc/hosts cp /etc/resolv.conf ./debian/etc/resolv.conf hostname > ./debian/etc/hostname 

Теперь у вас есть настоящая система Debian на диске, выполним chroot в неё:

mount -o bind /dev ./public/debian/dev mount -o bind /proc ./debian/proc grep -v rootfs /proc/mounts > ./debian/etc/mtab chroot ./debian/ /bin/bash 

Обновим репозиторий и установленное ПО:

wget http://files.satware.com/synology/chroot/sources.list -O /etc/apt/sources.list apt-get update -y apt-get upgrade -y apt-get dist-upgrade -y 

4. Устанавливаем Firebird:

apt-get install Firebird2.5-superclassic -y dpkg-reconfigure firebird2.5-superclassic 

Enable Firebird server? => Yes
Password for SYSDBA? => ваш_пароль

Выходим из debian в основную систему:

Остается создать скрипт для запуска/остановки Firebird сервера. Скачиваем скрипт:

wget http://files.satware.com/synology/ipkg/S80firebird.sh 

Исправляем пути к папке debian, у меня «/mnt/HD/HD_a2/home/debian», текущий каталог можно посмотреть командой pwd:

Копируем файл в папку автозапуска скриптов, задаем права на запуск:

mkdir -p /opt/etc/init.d mv S80firebird.sh /opt/etc/init.d/ chmod +x /opt/etc/init.d/S80firebird.sh 

Для запуска/остановки сервера Firebird, соответственно:

/opt/etc/init.d/S80firebird.sh start /opt/etc/init.d/S80firebird.sh stop 

Все готово! После перезагрузки на нашем NAS будет запущен Firebird сервер на порту по умолчанию — 3050, можно подключаться.

Источник

Тачку на прокачку — настраиваем и расширяем возможности D-Link DNS-325

NAS. Доступное по сети файловое хранилище, место слива бэкапов, возможность хранить необходимые данные в одном месте. Но ведь не только! Сегодня мы будем награждать наш DNS-325 новыми фичами. Владельцы девайсов той же серии (например, DNS-320, DNS-345, DNS-346) тоже не уйдут обиженными. Под катом более десятка фото и скриншотов, будьте бдительны!

Почему именно этот NAS? Во-первых, он имеет достаточно приличные характеристики: практически бесшумное охлаждение, 2 диска с интерфейсом SATA2 (3 диска нужно далеко не каждому, 1 диск — маловато будет), 1.2 Ггц процессор и 256 RAM. Кроме того, на нем установлен самый себе настоящий linux, а значит можно заставить его делать почти что угодно! Заранее хочу предупредить — я не очень опытный пользователь linux, так что если где-то намудрил с терминологией, о чем то забыл или добавил лишний шаг — буду рад замечаниям!

Первым делом крайне рекомендую обновить прошивку, благо, последняя версия сильно стабилизирует работу и убирает массу багов, например — в работе FTP-сервера. Обновление выполняется очень просто — качаем прошивку с официального FTP — ftp://ftp.dlink.ru/pub/NAS/DNS-325/Firmware/ (на момент написания последняя версия 1.03, файл ftp://ftp.dlink.ru/pub/NAS/DNS-325/Firmware/DNS-325_A1_FW_v1_03.rar ), распаковываем (внутри будет tar файл), идем на вот эту страничку в системе и обновляемся:

  1. Формат файловой системы — EXT3. Без вариантов. Если у вас другая — придется переформатировать, NAS умеет это делать самостоятельно.
  2. Формат файловой системы USB-винтов и флешек — как EXT3, так и FAT/NTFS.
  3. Скрипты для управления Осью ставятся на первый винт (Volume1), если вы смотрите на NAS — он будет справа.
Читайте также:  Jabber client linux client

Тут всё конечно просто, но есть один подвох, ставивший в тупик не только меня: что бы получить список директорий — надо кликать по названию папки или винта.
После создания директорий — создаем пользователей.

Там же на ходу указываем, какой пользователю нужен доступ, кроме SMB (стандартный для windows доступ к директориям) — например, FTP.

Как видно из скриншота, всё просто. Но вот что важно: после добавления новых пользователей или удаления старых крайне желательно перезапустить FTP, если он не сделал этого сам.Кроме того, если у вас NAS воткнут в роутер — не забудьте пробросить порты наружу! (если вам нужен доступ к FTP из залокалья). На моём D-Link DIR-615 например настройки выглядят так:

Включаем, выбираем папки… Поддерживает все встретившиеся мне типы файлов. Минусы: реиндексацию придется запускать руками. Неприятно.Чем смотреть видео? На планшете и телефоне у меня андроид, так что я использую бесплатный UPnPlay.

  1. Итак, во-первых, заливаем на первый винчестер файлик fun_plug (http://wolf-u.li/u/433) и fun_plug.tgz (http://inreto.de/dns323/fun-plug/0.7/arm/fun_plug.tgz)
  2. Перезагружаем NAS — теперь мы можем подключаться по telnet. Подключаемся по имени или адресу — без пароля!

usermod -s /ffp/bin/sh root mkdir -p /ffp/home/root/ sed -ie 's#:/home/root:#:/ffp/home/root:#g' /etc/passwd pwconv 

Если появятся ошибки ‘«usermod»: «usermod: no changes»’ или ‘«pwconv»: «pwconv: failed to change the mode of /etc/passwd- to 0600»’ — просто игнорируйте их.

Вводим логин root и ваш пароль — получаем в ответ сообщение «no mail». Следующие действия необходимы для сохранения пароля:

wget http://wolf-u.li/u/172/ -O /ffp/sbin/store-passwd.sh store-passwd.sh 
chmod a+x /ffp/start/sshd.sh sh /ffp/start/sshd.sh start 

А теперь — подключаемся в другом окне по SSH, отвечаем утвердительно на вопрос о сохранении ключа, и если всё прошло гладко — отключаем автостарт telnet-сервиса в первом окне:

chmod -x /ffp/start/telnetd.sh 
echo "mijzelf http://downloads.zyxel.nas-central.org/Users/Mijzelf/FFP-Stick/packages/0.7/arm" >> /ffp/etc/funpkg/sites echo "memiks http://ffp.memiks.fr/pkg" >> /ffp/etc/funpkg/sites echo "kylek http://kylek.is-a-geek.org:31337/files/ffp/0.7-arm" >> /ffp/etc/funpkg/sites 
wget http://wolf-u.li/u/233 -O /ffp/start/optware.sh chmod a+x /ffp/start/optware.sh /ffp/start/optware.sh start 

обновить информацию о доступных программах

установить программу (выбрать в визуальном интерфейсе нужную)

обновить информацию о доступных программах

обновить установленные программы

ipkg install [название программы] 
ipkg info [название программы] 

получить информацию о программе. В названии можно использовать шаблоны, например, «scree*»

ipkg remove [название программы] 
  1. Изначально у меня постоянно были проблемы с русскими буквами, расцветкой, управлением клавишами курсорными (выбирайте любые 2, а то и 3), но таки был выработан следующий алгоритм. Собственно, устанавливаем:
ipkg install pcre glib e2fsprogs slang libpng mc 
#!/ffp/bin/sh export TERM="xterm" export TERMINFO="/ffp/share/terminfo" export LANG="en_US.utf8" 
chmod a+x /ffp/etc/profile.d/mc.sh 

И у вас будет и поддержка русских имен файлов, и нормальное управление клавишами. Если есть таки проблема с русскими именами — идем вот в это меню и всё будет хорошо:

Читайте также:  Установка криптопро линукс минт

#!/ffp/bin/sh alias screen="screen -U" 
chown -R nobody /mnt/HD/HD_a2/torrent mkdir /ffp/var/transmission mkdir /ffp/var/transmission/incomplete chown -R nobody /ffp/var/transmission 
TRANSMISSION_HOME=/ffp/var/transmission 
su nobody -c "transmission-daemon -f -g /ffp/var/transmission -w /mnt/HD/HD_a2/torrent -t -u admin -v password -a 127.0.0.1,192.168.*.*" 
"incomplete-dir": "/ffp/var/transmission/incomplete", 
"incomplete-dir-enabled": true,
"peer-port": 11000, "peer-port-random-high": 11999, "peer-port-random-low": 11001, 

Порт, по которому будет доступен веб интерфейс. Например, в данном случае он будет работать по адресу http://192.168.0.200:9091 изнутри сети

"rpc-whitelist": "127.0.0.1,192.168.*.* " 
chown -R nobody /ffp/var/transmission chmod a+x /ffp/start/transmission.sh /ffp/start/transmission.sh start 

Плюс не забудьте прокинуть наружу порты, в моём DIR-615 настройки выглядят так:

  • UPnP сервер автоматически не реиндексирует файлы — нужно делать это вручную. Смотрим решение в update 1!
  • Не удалось скомпилировать davfs2 или иной сервис/утилиту для работы c WebDav. Точнее, оно конечно компилируется, при запуске — просит логин, пароль, уточняет, уверены ли мы… После чего падает. Молча. Соответственно, не удаётся по WebDav монтировать облачные хранилища вроде Dropbox или Яндекс.диска.
  • Внешние USB-носители подключаются с правами «все всем можно». Ограничить нельзя.
  • При работе изнутри screen’а не работают клавишы PageUp/PageDown (вместо них набираются буквы)
  • Тактико-технические характеристики, вроде процессора, вывода /proc/cpuinfo и т.п. — http://dns323.kood.org/dns-325
  • Описание DNS-325 с сайта D-Linkа — http://dlink.ru/ru/products/120/1400_b.html
  • Подробная инструкция по использованию fun_plug (на английском) — http://bernaerts.dyndns.org/dns325
  • Обсуждение NAS D-Link ShareCenter Pulse DNS-320 на форуме iXBT — http://forum.ixbt.com/topic.cgi?id=11:43076
  • Сборка davfs2 на ARM-девайсе (на немецком) — http://www.synology-wiki.de/index.php/WebDAV-Speicher_mithilfe_von_davfs2_direkt_in_die_DS_einbinden
  • Монтирование облачных дисков через Webdav — http://wl500g.info/showthread.php?24669-DropBox-Client-%E4%EB%FF-%F0%EE%F3%F2%E5%F0%E0-Asus&p=249071#post249071
  • Инструкция по использованию screen’а -http://xgu.ru/wiki/man:screen

update 1. Как оказалось, таки возможно запустить автоматическую реиндексацию медиа-файлов — за неё отвечает программа upnpdbmgr. Для этого перейдем в режим управления заданиями (такая команда нужна для удобного управления заданиями — через редактор mc):

5 * * * * /usr/local/modules/sbin/upnpdbmgr --mode=add [список директорий через пробелы] 
5 * * * * /usr/local/modules/sbin/upnpdbmgr --mode=add /mnt/HD/HD_a2/torrent /mnt/HD/HD_a2/series /mnt/HD/HD_a2/movie 
/usr/local/modules/sbin/upnpdbmgr --mode=remove-all 

Подробнее о кроне — в википедии. Идею (очевидную, но не для замыленного глаза!) «поискать программу и поставить её в cron» подсказал Diam0n.

Источник

Оцените статью
Adblock
detector