Установка Firebird на 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 і виконуємо наступне.

Розпаковуємо архів, монтуємо фали пристроїв з поточної системи 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 в основну систему:

exit

Залишається створити скрипт для запуску/зупинки сервера Firebird. Викачуємо скрипт:

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

Виправляємо шляху до папки debian, у мене "/mnt/HD/HD_a2/home/debian", поточний каталог можна подивитися командою pwd:

vi S80firebird.sh

Копіюємо його в папку автозавантаження скриптів, задаємо права на запуск:

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
Firebird SQL auf Synology Diskstation installieren
Встановлення Debian GNU/Linux з системи Unix/Linux
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.