From OpenSCADAWiki
Jump to: navigation, search
This page is a translated version of the page Documents/How to/Live disk and the translation is 100% complete.

Other languages:
English • ‎российский • ‎українська

Автор: Роман Савоченко

Для максимального спрощення розгортання OpenSCADA можна використовувати живі збірки завантажувальних дисків CD, DVD та USB від Linux дистрибутиву автоматизації проекту OpenSCADA. Живий диск передбачає можливість завантаження, прямо з нього, та швидке отримання бажаного робочого оточення. При завантажені та роботі живий диск не використовує штатних носіїв, тобто Ви можете не хвилюватися за цілісність та збереженість даних на них. В цілому живий диск є зручним засобом з широким набором потрібних програмних інструментів під рукою та незалежним від стаціонарного програмного оточення, спроможним здійснити:

  • демонстрацію та ознайомлення з можливостями OpenSCADA;
  • встановлення готового, вичерпного та перевіреного оточення автоматизованого робочого місця (АРМ);
  • діагностику програмного та апаратного оточення, а також їх відновлення, у деяких випадках;
  • формування у спеціальних редакціях, що містять все, що стосується цільового рішення: технічну та програмну документацію, конфігурації ПЛК та АРМ, ...

Живий диск представляє собою упакований штамп операційної системи та прикладних програм розміром біля 700МБ, записані на CD/DVD диск або USB-Flash носій. У своїй роботі операційна система "на льоту" розпаковує потрібні файли для запуску програм та відкриття документів, тобто — не використовує оперативної пам'яті більш, ніж при її стаціонарному встановлені.

Живі диски від Linux дистрибутиву автоматизації проекту OpenSCADA збираються у декількох варіантах на основі дистрибутивів ОС Linux Debian, ALTLinux (старі версії) та доступні для завантаження, у останній версії OpenSCADA, тут: http://oscada.org/ua/golovna/zavantazhiti/. Чинні живі збірки з OpenSCADA мають значно більші функції ніж передбачалося від початку:

  • Можливість прозорого збереження робочих змін у випадку запису на USB-Flash. Функція забезпечується створенням розділу диску, з можливістю запису, на вільному просторі USB-Flash. Цей розділ відбивається на корінь файлової системи, або її частини, та всі зміни записуються на нього. Крім збереження робочих даних у цей розділ можна довстановлювати недостаючі пакети програм з репозиторію пакетів Debian, OpenSCADA або ALTLinux.
  • Можливість поєднання звичайного Flash-диску даних з живим Flash-диском. Передбачає запис даних живого диску прямо на файлову систему USB-Flash — FAT16 або FAT32, що зберігає функції звичайного носія даних та додає функцію живого диску.
  • Можливість встановлення оточення живого диску на стаціонарний носій. Дозволяє не займатися глибоким вивченням та зануренням у операційну систему Linux при її встановлені, налаштуванні, а також розгортанні OpenSCADA. Достатньо завантажитися з живого диску, впевнитися, що основне обладнання визначилося нормально, потрібні програми працюють та надалі, за посередництвом простої процедури з іконки на робочому столі або окремого меню завантаження, встановити на стаціонарний носій. Отримане встановлення буде ідентичне до оточення живого диску.

1 Комбіновані-гібридні ISO-штампи живого диску

На цей час, переважно здійснюються збірки гібридних ISO штампів "живих дисків" (*LiveCD_USB.iso), які можна записати прямо на CD/DVD, USB-Flash, а також витягти вміст для запису на USB-Flash з файловими системами FAT або EXT.

Основним варіантом формування "живого диску" є запис на CD/DVD, для чого можна використати стандартний інструментарій вихідної операційної системи. Додатковим, хоча по факту вже основним, варіантом є запис на USB-Flash, яку можна здійснити з оточення ОС Linux, наприклад, з оточення цього-ж "живого диску", записаного та завантаженого раніш з CD/DVD диску; або-ж з ОС MS Windows за посередництвом "Win32DiskImager".

At.png Запис штампу "живого дискe" на 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 | grep /dev/sd{x}1
  • Модифікуємо файл "/mnt/tmp/syslinux/syslinux.cfg" у кінці рядку "append initrd=alt0/full.cz live ... disk,uuid:4EB3-0478", де вказуємо раніш отриманий UUID.
  • Додаємо або модифікуємо файл "/mnt/tmp/syslinux/lang" на предмет визначення локалі-мови інтерфейсу по замовченню, для української — "uk_UA", інакше буде Англійська.
  • Відключаємо диск: $ umount /dev/sd{x}1
  • Ініціюємо MBR диску у коректне значення: $ ms-sys -s /dev/sd{x}
  • Ініціюємо завантажувач: $ syslinux /dev/sd{x}1

At.png Такий спосіб розгортання живого диску потребує знань ОС Linux та інтерфейсу командного рядку (консолі), а також основ розбиття дискових носіїв оскільки, при некоректному початковому розбитті носія, завантаження може не піти.

3 Збереження робочих даних живого диску на розділі USB-Flash

Живий диск, як раніш зазначалося, допускає повноцінну роботу з можливістю збереження робочих даних, а також оновлення ПЗ (за виключенням системного ПЗ та ядра ОС Linux). Зазвичай така можливість має сенс тільки для USB, HDD, SSD носіїв.

У випадку дистрибутивів Debian, окремий розділ для зберігання робочих даних, з міткою "persistence", треба завжди створювати спеціально, а у файлі "persistence.conf" на ньому також вказувати файлову систему, або її частину, для відображення на запис (наприклад, "/home"). Для відображення всієї кореневої файлової системи у файлі треба записати "/ union". У якості файлової системи цього розділу краще використовувати "EXT3". Для створення розділу Ви можете використати програму менеджеру розділів, наприклад — gparted.

У випадку дистрибутиву ALTLinux (6), та прямого запису гібридного ISO-образа, такий розділ буде створено при першому запуску. При формуванні "живого диска" на FAT та EXT треба створити окремий розділ з міткою "alt-live-storage" та файловою системою "EXT3", що можна зробити у програмі менеджеру розділів, наприклад — gparted.

4 Завантаження

Для завантаження з отриманого "живого диску" треба перевантажити комп'ютер та на самому початку завантаження до стаціонарної ОС натиснути клавішу входу до меню завантаження BIOS та обрати там наш носій (рис.1). На різних комп'ютерах клавіша входу до меню завантаження може відрізнятися та бути однією з: "F8", "F9", "F10", "F11" або "F12". На деяких комп'ютерах змінити порядок завантаження можна тільки у самому BIOS.

Рис. 1. Варіант меню обрання пристрою завантаження у BIOS.

Після обрання пристрою має з'явитися меню завантаження живого диску (рис.2), де попередньо можна обрати варіант завантаження з визначеною мовою, для Debian, або Ваша мова, клавішею F2 для ALTLinux.

Рис. 2. Меню обрання мови живого диску Debian, ALTLinux.

У результаті завантаження живого диска Ви отримаєте робочий стіл TDE (рис.3).

Рис. 3. Робоча стільниця живого диску.