Установка БД Firebird на сервер Ubuntu 14.04.4 LTS

Будим сервер:
wakeonlan 192.168.100.55 00:1a:4d:3d:7c:60

Подключаемся по SSH:
ssh 192.168.100.55

Обновим информацию о пакетах:
sudo apt-get update

Установим пакеты:
sudo apt-get install libstdc++5
sudo apt-get install xinetd
sudo apt-get install firebird2.5-super

В процессе установки firebird2.5-super будет предложено задать пароль суперпользователя SYSDBA - зададим как "masterkey"

Установим примеры и dev-пакет разработчика:
sudo apt-get install firebird2.5-examples firebird2.5-dev

Добавим себя в группу firebird:
sudo adduser `id -un` firebird

Запустим конфигуратор Firebird:
sudo dpkg-reconfigure firebird2.5-super

Настроим автоматический запуск сервера при старте системы (ответим "Да" на запрос), и если необходимо, поменяем пароль для пользователя SYSDBA.


Firebird. Настройка автозапуска


Firebird. Смена пароля

Проверить работу сервисов Firebird можно с помощью команды:
ps -A | grep fb

В результате вы должны увидеть как минимум два рабочих процесса БД Firebird: fbguard и fbserver (может быть несколько).

Firebird. Сервисы БД

Распакуем файл с примером БД:
sudo gunzip /usr/share/doc/firebird2.5-examples/examples/empbuild/employee.fdb.gz

Запустим mc (должен быть установлен командой sudo apt-get mc) и создадим папку, где будут храниться базы, например:
/home/alexander/server/firebird/bd

и папку с настройками firebird (этот и следующий шаг необходим только для удобства последующих настроек сервера и его можно пропустить):
/home/alexander/server/firebird/config

В папке с настройками создадим символические ссылки на файлы конфигурации Firebird:
- файл с паролем SYSDBA (доступен для просмотра и правки только под root):
/etc/firebird/2.5/SYSDBA.password
- файл с краткими ссылками на БД:
/etc/firebird/2.5/aliases.conf
- основной файл конфигурации Firebird:
/etc/firebird/2.5/firebird.conf


Firebird. Создание символических ссылок на настройки

Из папки /usr/share/doc/firebird2.5-examples/examples/empbuild/ в папку /home/alexander/server/firebird/bd/ скопируем файл с примером БД "employee.fdb".

Скорректируем файл aliases.conf для кратких ссылок на базу:
tst.fdb = fdb /home/alexander/server/firebird/bd/employee.fdb
tst = fdb /home/alexander/server/firebird/bd/employee.fdb


Firebird. Правка файла алиасов (кратких ссылок)

Проверим работоспособность сервера. Запустим консольную утилиту isql-fb:
isql-fb

На приглашение введем (не забываем про символ ";" в конце команды):
connect "localhost:tst.fdb" user 'SYSDBA' password 'masterkey';
или, если добавили себя в группу firebird:
connect "tst.fdb" user 'SYSDBA' password 'masterkey';
а можно указать и целый путь:
connect "localhost:/home/alexander/server/firebird/bd/employee.fdb" user 'SYSDBA' password 'masterkey';

Eсли все ок - в ответ должны увидеть:
Database: "localhost:tst.fdb", User: SYSDBA

Зачитаем список таблиц:
show tables;

В ответ получим:
COUNTRY
CUSTOMER
DEPARTMENT
EMPLOYEE
EMPLOYEE_PROJECT
JOB
PROJECT
PROJ_DEPT_BUDGET
SALARY_HISTORY
SALES

Наберем для выхода из isql-fb: exit;


Firebird. Проверка работоспособности сервера

Сервер настроен. Работоспособность сервера Firebird на локальной машине проверена. В следующей статье рассмотрим пример подключения к данному серверу с другого компьютера при помощи графических оболочек IBExpert (для Windows) и FlameRobin (Linnux - систем).

Настройка терминального клиента FreeRDP

В предыдущей статье был рассмотрен пример настройки терминального сервера XRDP для сервера Ubuntu 14.04.2 LTS. Сейчас настроим терминальный клиент FreeRDP (http://www.freerdp.com/) для подключения к нему.

Запускаем root.
sudo su

Устанавливаем терминальный клиент.
apt-get install freerdp

Подключаемся к серверу.
xfreerdp -u user1 -p XXXXXXXX -f 192.168.100.55

Некоторые полезные параметры запуска xfreerdp.
  • -u user1 имя пользователя при подключении;
  • -p XXXXXXXX пароль при подключении;
  • -f запуск в полноэкранном режиме (выход из полноэкранного режима - Ctrl+Alt+Enter);
  • -g 1024x768 запуск с разрешением экрана Ширина х Высота;

  • с другими параметрами запуска можно ознакомиться введя команду:
    xfreerdp --help


    Настройка терминального сервера XRDP для сервера Ubuntu 14.04.2 LTS

    Инструкция по настройке удаленного терминального сервера по протоколу SSH. Если у вас имеется физический доступ к серверу и настройка терминального сервера выполняется непосредственно на нем, то пункты, отмеченные "звездочкой" выпонять не требуется.

    *Включаем сервер удаленно.
    wakeonlan 192.168.100.55 00:0b:6a:06:dc:32

    *Подключаемся к серверу по SSH.
    ssh 192.168.100.55

    Запускаем root.
    sudo su

    Перезачитываем заголовки пакетов и обновляем действующие пакеты.
    apt-get update && apt-get upgrade

    Перезагружаемся.
    reboot

    *Подключаемся к серверу по SSH.
    ssh 192.168.100.55

    Запускаем root.
    sudo su

    Устанавливаем Midnight Commander.
    apt-get install mc

    Устанавливаем программу для работы с репозиториями GitHub.
    apt-get install git

    Устанавливаем графическую оболочку LXDE (http://lxde.org/).
    apt-get install lxde

    Настраиваем LXDE на автоматический вход в вистему. Для чего запускаем mc. Правим файл (F4) "/etc/lxdm/lxdm.conf" параметр "autologin".
    autologin=имя_пользователя_для_входа

    Перезагружаемся.
    reboot

    *Подключаемся к серверу по SSH.
    ssh 192.168.100.55

    Запускаем root.
    sudo su

    Скачиваем исходники XRDP из репозитория GitHub (актуальный адрес репозитория можно узнать на сайте http://scarygliders.net/). Исходники скачиваются в домашний каталог в папку "X11RDP-o-Matic".
    git clone https://github.com/scarygliders/X11RDP-o-Matic.git

    Запускаем процесс установки XRDP. Длится он ну очень долго. Впрочем, все зависит от скорости соединения с интернет и мощности компютера (Athlon XP 1700+, 300kБ/с примерно 2,5 часа).
    cd X11RDP-o-Matic
    ./X11rdp-o-matic.sh –justdoit

    Помимо, собственно, установки XRDP, в папке "/X11RDP-o-Matic/packages/" будут сформированы *.deb пакеты, которые могут пригодится в будущем, для установки XRDP без предварительной компиляции.

    Запускаем скрипт, который создаст настройку (файл *.xsession) для запуска рабочего стола (в наем случае LXDE) при подключении пользователей.
    ./RDPsesconfig.sh

    Можно перезапустить XRDP, для того что бы проверить установку.
    /etc/init.d/xrdp restart

    Перезагружаемся.
    reboot

    *Подключаемся к серверу по SSH.
    ssh 192.168.100.55

    Запускаем root.
    sudo su

    Создаем настройки по умолчанию для новых пользователей: скопируем папки ".config" и "Desktop" в папку "/etc/skel/" через mc или воспользовавшись командами:
    cp -R -f -b .config/ /etc/skel/
    cp -R -f -b Desktop/ /etc/skel/

    Создадим пользователей терминальных сессий.
    adduser user1
    adduser user2
    adduser userX

    Переходим к настройке терминального клиента FreeRDP.



    Зарядное устройства VERTER для автомобильного аккумулятора

    Примечание:
    Эксплуатация прототипа зарядного устройства VERTER дала возможность довести конструкцию девайса до логического завершения, а использование современных комплектующих и оптимизация схемы - все это позволило разместить устройство в более компактном корпусе при этом даже нарастить функциональность.

    Зарядное устройство предназначено для автоматической зарядки свинцово-кислотных автомобильных аккумуляторов постоянным током (ток заряда устанавливается на этапе сборки устройства и может составлять от 1 до 6А). Устройство реализовывает такие функции как заряд, разряд, тренировка, десульфация и расчет емкости аккумулятора. Предусмотрено подключение к ПК для снятия зарядных кривых. Реализует в себе алгоритмы заряда аккумуляторов, изложенные в статье "Заряд кислотных аккумуляторов". Инструкция по эксплуатации и подробное описание работы устройства см. тут.

    Схема устройства приведена ниже:


    VERTER. Схема зарядного устройства.

    Печатная плата разработана в программе Sprint-Layout версии 5.0 и изготовлена по технологии ЛУт:


    VERTER. Разработка печатной платы зарядного устройства.

    Все основные блоки (диодный мост, фильтрующий электролитический конденсатор, мощный транзистор, схема управления) размещены на основании из текстолита без медного покрытия. Крепление к основанию выполнено с помощью медной проволоки и силикона. Для удобства последующего монтажа все соединительные провода промаркированы.


    VERTER. Зарядное устройство в процессе сборки.

    В качестве корпуса использовался обрезанный задний кожух от ЭЛТ-монитора, в котором на "лицевой" стенке были прорезаны отверстия для закрепления элементов управления. Для улучшения охлаждения (кроме размещения диодного моста и мощного транзистора на радиаторах) было принято решение дополнительно использовать два вентилятора от компьютерных блоков питания.


    VERTER. Зарядное устройство.

    Фото готового зарядного устройства VERTER:


    VERTER. Зарядное устройство в сборе.

    А так выглядит зарядное устройство в процессе эксплуатации:


    VERTER. Зарядное устройство в процессе эксплуатации.

    Программирование выполняется в следующей последовательности: подключить программатор к разъему версии 4, установить режим программирования на пониженной частоте, если необходимо, скорректировать fuseprog.bat и progprog.bat, указав свой программатор, запустить вначале fuseprog.bat, а затем progprog.bat

    Скачать схему зарядного устройства, печатную плату в формате Sprint-Layout, HEX и EEP файлы для прошивки микроконтроллера, программу avrdude для программирования контроллера.

    С другими вариантами реализации можно ознакомиться на этой странице.


    PCDUINO. Программирование на C++ или Python

    Примеры программ для PCDuino, разработанные на C++ или Python можно найти на этой странице: https://learn.sparkfun.com/tutorials/programming-the-pcduino/introduction.

    AVRDUDESHELL. Запуск программы по ОС Linux (wine)

    Для запуска программы AVRDUDESHELL (начиная с версии 01.09.2015) под управлением ОС Linux (wine) необходимо выполнить следующие действия:

    1. Включить учетную запись root:
    sudo su

    2. Установить wine:
    apt-get install wine

    3. Установить утилиту avrdude:
    apt-get install avrdude

    4. Найти физическое размещение файлов утилиты avrdude, воспользовавшись командой whereis avrdude:

    5. Дать разрешение на доступ к утилите avrdude:
    chmod +s /usr/bin/avrdude

    6. Скачать последнюю версию программы AVRDUDESHELL.

    7. Распаковать архив программы AVRDUDESHELL в папку диска "c:\" программы wine, например в: "/.wine/drive_c/Application/AVRDUDESHELL/". Там же создать папку для размещения симлинков на программу avrdude, например avrdudelinux. Структура папок должна получится примерно следующей:

    8. В папке avrdudelinux создать симлинки на файлы avrdude и avrdude.conf.

    9. Запустить программу AVRDUDESHELL:

    в параметрах программы на вкладке "Файлы и папки" назначить "Папку утилиты AVRDUDE для программирования чипов" - в нашем случае это папка avrdudelinux (см. п. 7).

    Попробовать прочитать фьюзы:

    Записать фьюзы:

    Прочитать EEPROM и дизассемблировать:

    10. Для удобства запуска можно разместить ярлык программы на рабочем столе, создав файл с любым именем и расширением ".desktop", например "avrdudeshell.desktop" со следующим содержанием:

    [Desktop Entry]
    Version=1.0
    Type=Application
    Name=AVRDUDESHELL
    Comment=Программировать Atmega
    Exec=wine avrdudeshell.exe
    Icon=
    Path=/home/alexander/.wine/dosdevices/c:/Application/AVRDUDESHELL
    Terminal=false
    StartupNotify=true


    PCDUINO. Первая программа на FreePascal

    Для того что бы опробовать FreePascal и научиться основам работы в консольной IDE, напишем первую программу. Пока ничего сложного - программа выведет на экран фразу "FIRST PROG".

    Запускаем FreePascal:



    Создаем новый проект File -> New:



    Сохраняем проект File -> Save (F2):



    Вводим код проекта:

    program firstprog;
    
    begin
       writeln('FIRST PROG');
    end.
    




    Запускаем проект Run -> Run (Ctrl + F9):



    Результат: