- Автор: Роман Савоченко
Для максимального упрощения развёртывания OpenSCADA можно использовать живые сборки загрузочных дисков CD, DVD и USB от Linux дистрибутива автоматизации проекта OpenSCADA. Живой диск предусматривает возможность загрузки, прямо из него, и быстрое получение желаемого рабочего окружения. При загрузке и работе живой диск не использует штатных носителей, а значит Вы можете не беспокоиться за целостность и сохранность данных на них. В целом живой диск является удобным средством с широким набором нужных программных инструментов под рукой и независимым от стационарного программного окружения, способным осуществить:
- демонстрацию и ознакомление с возможностями OpenSCADA;
- установку готового, исчерпывающего и проверенного окружения автоматизированного рабочего места (АРМ);
- диагностику программного и аппаратного окружения, а также их восстановление, в некоторых случаях;
- формирования в специальных редакциях, содержащих все, что касается целевого решения: техническую и программную документацию, конфигурации ПЛК и АРМ, ...
Живой диск представляет собой упакованный образ операционной системы и прикладных программ размером около 700МБ, записанный на CD/DVD диск или USB-Flash носитель. При своей работе операционная система "на лету" распаковывает нужные файлы для запуска программ и открытия документов, т.е — не использует оперативной памяти больше, чем при её стационарной установке.
Живые диски от Linux дистрибутива автоматизации проекта OpenSCADA собираются в нескольких вариантах на основе дистрибутивов ОС Linux Debian, ALTLinux (старые версии) и доступны для загрузки, в последней версии OpenSCADA, здесь: http://oscada.org/ru/glavnaja/zagruzit. Настоящие живые сборки с OpenSCADA обладают значительно большими функциями чем предусматривалось изначально:
- Возможность прозрачного сохранения рабочих изменений в случае записи на USB-Flash. Функция обеспечивается созданием раздела диска, с возможностью записи, на свободном месте USB-Flash. Этот раздел отражается на корень файловой системы, или её часть, и все изменения записываются на него. Кроме сохранения рабочих данных в этот раздел можно доустанавливать недостающие пакеты программ из репозитория пакетов Debian, OpenSCADA или ALTLinux.
- Возможность совмещения обычного Flash-диска данных с живым Flash-диском. Предусматривает запись данных живого диска прямо на файловую систему USB-Flash — FAT16 или FAT32, что сохраняет функции обычного носителя данных и добавляет функцию живого диска.
- Возможность установки окружения живого диска на стационарный носитель. Позволяет не заниматься глубоким изучением и погружением в операционную систему Linux при её установке, настройке, а также развёртывания OpenSCADA. Достаточно загрузиться с живого диска, убедиться, что основное оборудование определилось нормально, нужные программы работают, а затем, посредством простой процедуры с иконки на рабочем столе или отдельного меню загрузки, установить на стационарный носитель. Полученная установка будет идентична окружению живого диска.
Contents
1 Комбинированный-гибридный ISO-образ живого диска
На данный момент, в основном осуществляются сборки гибридных ISO образов "живых дисков" (*LiveCD_USB.iso), которые можно записать прямо на CD/DVD, USB-Flash, а также извлечь содержимое для записи на USB-Flash с файловыми системами FAT или EXT.
Основным вариантом формирования "живого диска" является запись на CD/DVD, для чего можно использовать стандартный инструментарий исходной операционной системы. Дополнительным, хотя по факту уже основным, вариантом является запись на USB-Flash, которая может быть осуществлена из окружения ОС Linux, например, из окружения этого-же "живого диска", записанного и загруженного ранее с CD/DVD диска; или-же из ОС MS Windows посредством "Win32DiskImager".
Запись образа "живого диска" на USB-Flash уничтожит все данные и сделает его непригодным для использования в качестве носителя данных, если не учитывать возможность записи на раздел сохранения изменений окружения ОС живого диска, который будет создан при первой загрузке с живого диска, в случае ALTLinux, или пользователем, в случае "Debian".
Адрес диска для записи ISO-образа имеет вид "/dev/sd{x}" и узнать его можно вызовом консольной команды dmesg сразу после подключения целевого диска USB-Flash. Из окружения Linux ISO-образ можно записать таким образом:
# Запись файла ISO-образа на USB-Flash:
dd if=Debian_9-OpenSCADA_0.9.0-TDE_R14-amd64-LiveCD_USB.iso of=/dev/sd{x} bs=4096
# Запись ISO-образа прямо с загруженного CD/DVD живого диска:
dd if=/dev/sr0 of=/dev/sd{x} bs=4096
2 Живой USB-Flash диск с файловой системой FAT или EXT
Ранее осуществлялись отдельные сборки образов для записи их на файловую систему FAT. На данный момент специально такие образы собираются только для "прошивок" (FirmWare) ряда ПЛК (*flash.tar). Для создания живых USB-Flash дисков общего назначения можно использовать гибридный ISO-образ, про который написано в разделе выше.
Преимуществом "живого диска" на USB-Flash, как ранее упоминалось, является совмещение функции USB-Flash диска, как носителя данных и как живого диска. Кроме того, таким образом можно создавать компактные, надёжные и функциональные решения встраиваемых систем с OpenSCADA, взяв "живой диск" за основу, например: программируемые логические контроллеры (ПЛК), панельные контроллеры (с сенсорным дисплеем), а также просто SCADA-сервера и SCADA-станции оператора "быстрого приготовления"; путём записи живого диска на стационарный носитель (HDD, SSD или Flash). Надёжность данного решения определяется размещением основного ПО в немодифицируемом упакованном файле, а рабочих данных на журналируемой файловой системе.
Записать данные "живого диска" на файловую систему можно из любой ОС (для FAT), но установить загрузчик только в ОС Linux, для чего можно воспользоваться "живым" CD/DVD диском из прошлого раздела.
Процедура создания живого диска следующая, для данных гибридного ISO-диска (Debian и ALTLinux):
- Для простоты, операцию извлечения и копирования данных ISO выполняем в двух-панельном файловом менеджере mc. Чтобы mc смог прочитать ISO образ необходимо установить утилиту isoinfo, обычно находится в пакете "genisoimage".
- Берём исходный файл ISO-образа, открываем его в mc и копируем из него на целевую FAT или EXT файловую систему:
- Debian: директории "isolinux" и "live"; директорию "isolinux", на целевой файловой системе, переименовываем в "syslinux".
- ALTLinux: директорию "syslinux" и файл "live".
- Переименовываем файл "syslinux/isolinux.cfg" на "syslinux/syslinux.cfg", для FAT, или "syslinux/extlinux.cfg", для EXT.
- ALTLinux: добавляем, в секции "label live" файла "syslinux/syslinux.cfg", подстроку "automatic=method:disk,label:MY_LAB" или "automatic=method:disk,uuid:MY-UUID", где MY_LAB и MY-UUID можно узнать, для раздела "живого диска", с помощью команды blkid.
- ALTLinux: Заменяем файл "syslinux/gfxboot.c32" аналогичным файлом из текущей системы (обычно находится в директории "/usr/lib/syslinux/").
- Устанавливаем загрузчик из командной строки, всё от суперпользователя: su -
- Отключаем диск: umount /dev/sd{x}1
- Инициируем MBR диска в корректное значение: ms-sys -s /dev/sd{x}
- Инициируем загрузчик: syslinux /dev/sd{x}1
Для образа "живого диска" на FAT (ALTLinux), всё от суперпользователя: su -
- Подключаем целевой диск и определяем его адрес: dmesg
- Монтируем: mkdir /mnt/tmp; mount /dev/sd{x}1 /mnt/tmp
- Распаковываем содержимое архива прошивки на смонтированный диск: cd /mnt/tmp; tar xvf /var/tmp/LP8x81-ALTLinux6-OpenSCADA_0.9+r2302-i586-plc-rt1-up.flash.tar
- Определяем UUID для файловой системы целевого диска: blkid
- Модифицируем файл "/mnt/tmp/syslinux/syslinux.cfg" в конце строки "append initrd=alt0/full.cz live ... disk,uuid:4EB3-0478", где указываем ранее полученный UUID.
- Добавляем или модифицируем файл "/mnt/tmp/syslinux/lang" на предмет указания локали-языка интерфейса по умолчанию, для российского — "ru_RU", иначе будет Английский.
- Отключаем диск: umount /dev/sd{x}1
- Инициируем MBR диска в корректное значение: ms-sys -s /dev/sd{x}
- Инициируем загрузчик: syslinux /dev/sd{x}1
Данный способ развёртывания живого диска требует знаний ОС Linux и интерфейса командной строки (консоли), а также основ разбиения дисковых носителей поскольку, при некорректном начальном разбиении носителя, загрузка может не пройти.
3 Сохранение рабочих данных живого диска на разделе USB-Flash
Живой диск, как ранее указывалось, допускает полноценную работу с возможностью сохранения рабочих данных, а также обновления ПО (за исключением системного ПО и ядра ОС Linux). Обычно данная возможность имеет смысл только для USB, HDD, SSD носителей.
В случае дистрибутивов Debian, отдельный раздел для хранения рабочих данных, с меткой "persistence", нужно всегда создавать специально, а в файле "persistence.conf" на нём также указывать файловую систему, или её часть, для отражения на запись (например, "/home"). Для отражения всей корневой файловой системы в файле нужно записать "/ union". В качестве файловой системы этого раздела лучше использовать "EXT4/3". Для создания раздела Вы можете использовать программу менеджера разделов, например — gparted.
ROOT is accessed here through sudo and password for the user set to "live".
В случае дистрибутива ALTLinux (6), и прямой записи гибридного ISO-образа, такой раздел будет создан при первом запуске. При формировании "живого диска" на FAT и EXT необходимо создать отдельный раздел с меткой "alt-live-storage" и файловой системой "EXT3", что можно сделать в программе менеджера разделов, например — gparted.
ROOT is accessed whether through sudo or su and there is no password.
4 Загрузка
Для загрузки с полученного "живого диска" нужно перегрузить компьютер и в самом начале загрузки в стационарную ОС нажать клавишу входа в меню загрузки BIOS и выбрать там наш носитель (рис.1). На разных компьютерах клавиша входа в меню загрузки может отличаться и быть одной из: "F8", "F9", "F10", "F11" или "F12". На некоторых компьютерах изменить порядок загрузки можно только в самом BIOS.
После выбора устройства должно появиться меню загрузки живого диска (рис.2), где предварительно можно выбрать вариант загрузки с указанным языком, для Debian, или Ваш язык, клавишей F2 для ALTLinux.
В результате загрузки живого диска Вы получите рабочий стол TDE (рис.3).