Подготовка сервера для лабиринта
Делается из образа.
Само восстановление
- Подключаем USB-диск.
- Включаем комп - нажимаем на клаве F11(использовать проводную клавиатуру).
- Выбираем жесткий диск (Segate).
- Нажимаем Enter (Acronis true image)
- Запускается среда восстановления
- Выбираешь восстановление - диски

- Выбираем через обзор образ жесткого диска (Silver Backup 1-3 (если серебрянный, Black, если черный Black Backup 1-2), в папке HD/Recovery). Если черный московский все тоже самое что и Black.
- Выбираем на какой диск восстановить, он один, выбираем все галочки, восстановить в посекторном режиме.
- Если сразу все разделы восстанавливать не хочет:
- В выборе разделов оставляем только “Системный раздел EFI” и “Ext4”
- Жмем далее
- Выбираем “Новое хранилище”
- В открывшемся окне выбираем тот пункт, у которого значится “512 Мб”
- Нажимаем “принять”
- Снова нажимаем “Новое хранилище”
- В открывшемся меню выбираем “Ext4”
- Нажимаем “принять”
- Ждем пару секунд
- Нажимаем “приступить”
- Нажимаем кнопку восстановить.
- Ждем окончания.
- Выключаем комп.
- Вытаскиваем жесткий диск - все ок.
Автозапуск
- Подключаем клавиатуру к компьютеру. Включаем комп, постоянно нажимая на клавиатуре ESC
- Попадаем в BIOS
- Переходим по верхнему меню(стрелками влево/вправо) на вкладку Chipset, затем выбираем пункт South Bridge(стрелками вверх/вниз), где выбираем пункт Restore AC Power Loss или что-то подобное (клавиша Enter откроет варианты для данного пункта) и меняем его на Power On.
- Нажимаем F10 для сохранения изменений, после чего комп перезагрузится
- Проверяем: 1)Отключаем кабель питания компьютера 2) Подключаем кабель питания компьютера, не трогая кнопку включения 3) Если компьютер включился самостоятельно, значит автозапуск настроен
P.S.
В случае если после компьютер так и не включился, то повторить все с первого пункта. Если и это не помогло и пункт Restore AC Power Loss сбрасывается в прежнее состояние, то следует поменять биос батарейку и проверить наличие автзапуска несколько раз с периодиностью в 1-2 часа.
Настройки доступов
Teamviewer
- Подключаем комп к любому рабочему роутеру
- Заходим в меню роутера и смотрим IP нашего компа
- Подклбчаемся по SSH к компу
- Устанавливаем все зависимости для TeamViewer и сам TeamViewer:
sudo dpkg --add-architecture i386
sudo apt-get update
sudo rm /var/lib/dpkg/lock
sudo apt install -y libc6:i386 libgcc1:i386 libasound2:i386 libdbus-1-3:i386 libexpat1:i386 libfontconfig1:i386 libfreetype6:i386 libjpeg62:i386 libsm6:i386 libxdamage1:i386 libxext6:i386 libxfixes3:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libxtst6:i386 zlib1g:i386
sudo rm /var/lib/dpkg/lock
sudo apt install -y libc6:i386 libgcc1:i386 libasound2:i386 libdbus-1-3:i386 libexpat1:i386 libfontconfig1:i386 libfreetype6:i386 libjpeg62:i386 libsm6:i386 libxdamage1:i386 libxext6:i386 libxfixes3:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libxtst6:i386 zlib1g:i386
wget https://download.teamviewer.com/download/linux/teamviewer_i386.deb
sudo dpkg -i teamviewer_i386.deb
sudo apt --fix-broken install -y
sudo dpkg -i teamviewer_i386.deb
sudo apt-get install qt5-default:i386 -y
5.Возможно возникнет ошибка, но пофиг. Для ее устранения вписать:
sudo apt --fix-broken install -y
- Далее запустим TeamViewer и проведем некторые настройки:
sudo teamviewer license accept
sudo systemctl enable teamviewerd.service
sudo systemctl start teamviewerd.service
sudo teamviewer daemon start
sudo teamviewer passwd Nikola1856
- Впишем (покажет id):
teamviewer --info
- Записать TeamViewer ID в базу устройств (?)
- Так как в дальнейшем необходимо настроить доступ по VNC (это делается непосредственно с самого компьютера, а не удаленно по ssh), удобнее всего будет подключиться к компу через TeamViewer и дальнейшие настройки производить в термининале самого сервака. Для этого нужно запустить TeamViewer и в окне ID партнера вписать ID полученный в пункте 7. После чего появится окно с запросом пароля. Вписать Nikola1856.

Донастройка VNC
Надо из терминала самого компьютера (не ssh) запустить
vino-preferences

Пароль: Nikola1856
sudo apt-get install dconf-tools
Далее в Applictions -> System Tools -> dconf Editor org -> gnome -> dektop -> remote-access

Чтобы подключится удаленно надо запустить сервер:
DISPLAY=:0 /usr/lib/vino/vino-server
И через remot3.it подключится по vnc - пароль был указан выше.
Remot3.it
wget https://github.com/remoteit/installer/releases/download/v2.2.5/connectd_2.2.5_amd64.deb
sudo dpkg -i connectd_2.2.5_amd64.deb
sudo connectd_installer
# Надо выбрать Sign in to your existing remot3.it account
1
# ввести логин
lab4@ipacmanx.ru
# ввести пароль
Nikola1856
# Ввести имя устройства по городу
# Например RU - Taganrog - Raspberry - 1 - Server
# Если это бэкап флешка то RU - Taganrog - Raspberry - 1 - Backup
# Если мир, то страна-город: Germany - Frankfurt - x86 - 1
# == Подключаем SSH удаленный ==
# Надо выбрать Attach/reinstall a remote.it Service to an application
1
# Надо выбрать SSH on port 22
1
y
# Вписать имя устройства по городу -SSH
# например:
# RU-Taganrog-SSH
# == Подключаем удаленный 1856 ==
# Надо выбрать Attach/reinstall a remote.it Service to an application
1
# Web (HTTP) on port 80
2
n
1856
# Вписать имя устройства по городу -1856
# например:
# RU-Taganrog-1856
# == Подключаем удаленный VNC ==
# Надо выбрать Attach/reinstall a remote.it Service to an application
1
# Надо выбрать VNC on port 5900
3
y
# Вписать имя устройства по городу -VNS
# например:
# RU-Taganrog-2s-VNC
# == Подключаем доступ к роутеру ==
# Выбрать Attach/reinstall a remote.it Service to a LAN application
2
192.168.50.1
# Выбрать Web (HTTP) on port 80
2
y
# Вписать имя устройства по городу -router
# RU-Taganrog-Router
# == Подключаем доступ к camere ==
# Выбрать Attach/reinstall a remote.it Service to a LAN application
2
192.168.50.3
# Выбрать Web (HTTP) on port 80
2
y
# Вписать имя устройства по городу -camera
# RU-Taganrog-camera
# Выходим из приложения Exit
5
y
Дополнительный софт
** Настроить confg.json **
cd /home/pi/maze_server
nano config.json
title - Tesla Lasers
location - Город заказчика или будущее название аттракциона
use_points: true
use_credit: 1 (если в коплекте жетоноприемник, иначе 0)
price: 1 (аналогично use_credit)
Ctrl+O
Ctrl+X
** Обновить лабиринт до последней версии **
Обновить до версии maze–puatie.
cd /home/pi/maze_server
git checkout maze--puatie
git pull
Так же в случае maze–puatie - надо будет обновить устройства: http://my.teslalasers.com/docs/upgradefirmwire
Раздел прошивки Пуатье.
Отключение погасания экрана
nano /home/pi/screen.sh
Вставляем внутрь и сохраняем:
#!/bin/bash
xset -dpms
xset s off
sudo chmod +x /home/pi/screen.sh
nano /home/pi/.config/autostart/screen.desktop
Вставляем внутрь и сохраняем
[Desktop Entry]
Type=Application
Exec=/home/pi/screen.sh
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
X-GNOME-Autostart-Delay=100
Name[en_US]=Firefox
Name=Firefox
Comment[en_US]=
Comment=
Настроить часовой пояс
Чтобы посмотреть доступные часовые пояса и шаблон их написания следует ввести следующую команду
timedatectl list-timezones
Откроется список временных зон, листать его можно при помощи клавишь вверх/вниз или с помощью пробела. Чтобы выйти, необходимо нажать “q” или комбинацию CTRL + C.
Найдя нужный часовой пояс, необходимо прописать эту же команду с опцие настройки временной зоны:
sudo timedatectl set-timezone "временная зона"
После следует проверить текущую дату и часовой пояс:
date
Команда выведет дату/время/часовой пояс. Перезагрузить устройство и проверить, что настройки сохранены
Настроить установку времени через NTP
Делать только в том случае, если лабиринт клиента будет подключен к сети Интернет На x86 по умолчанию стоит настроенный NTP сервер, но в следствии того, что доступ к ресурсам по 123 порту закрты, сервер не может достучаться до вышестоящего NTP, чтобы установить верное время. Чтобы компьютер автоматически синхронизировался с NTP необходимо вручную соединиться с NTP и получить необходимую информацию, для этого следует установить утилиту ntpdate:
sudo apt-get install ntpdate -y
(ввести пароль при запросе)
Затем необходимо удалить локальный NTP-сервер:
sudo apt-get purge ntp
(ввести пароль при запросе)
Далее, вручную соединиться с удаленным NTP-серврером, посредством недавно установленной программы (при этом соединяться необходимо через непривелегированный порт, иначе, соединение будет инициироваться через 123 порт, который не работает):
sudo ntpdate -bus 0.ubuntu.pool.ntp.org
Затем следует синхронизировать программные и аппаратные часы компьютера:
sudo hwclock --systohc --utc
Для надежности, стоит прописать данные команды в cron так, чтобы они выполнялись сразу после очередного вкючения компьютера:
sudo crontab -e
# Выйдет интерактивное меню
# Пропустить его нажатием клавиши Enter
В открывшемся окне текстового редактора необходимо написать следущее:
@reboot /usr/sbin/ntpdate -bus 0.ubuntu.pool.ntp.org
@reboot /sbin/hwclock --systohc --utc
# CTRL + O, затем Enter, затем CTRL + X
Чтобы проверить актуальность даты и времени, следует ввести следущее:
date
Поменять локаль
В х86 в локали разные локальные переменные настроены под два языка, английский (en_US) и китайский (sh_CH). Одной из проблем, которая из-за этого возникает, является то, что некоторые элементы GUI отображаются на китайском (например формат времени). Конфигурация локалей на данный момент такова, что при попытке поменять конкретную локальную переменную или переконфигурировать локаль полностью под английский язык и набрать команду вывода локалей locale, возникает ошибка:
locale: Cannot set LC_*** to default locale: No such file or directory
Чтобы ошибки не возникало, необходимо прописать локали вручную:
sudo nano /etc/default/locale
# Удалить его содержимое и вставить следующее:
LANGUAGE=en_US.UTF-8
LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8
LC_TYPE=en_US.UTF-8
Сохранить изменения и переконфигурировать локаль полностью:
sudo locale-gen en_US.UTF-8
sudo dpkg-reconfigure locales
Откроется интерактивное меню выбора локалей. Стрелками клавиатуры необходимо долистать список до en_US.UTF-8 UTF-8 так, чтобы курсор (оранжевый прямоугольник на скриншоте) был в квадратных скобках напротив нужной локали, и нажать пробел для выбора (при этом выбранные элементы отмечаются *) или снятия выбора.

Затем пролистать весь список и убрать выбор (так же как и выбрать - делается с помощью пробела) с других локалей кроме en_US.UTF-8 (скорее всего будет отмечена локаль zh_CH.UTF-8), нажать Tab (курсор выделить <Ok> внизу окна) и Enter. В следующем окне выбрать en_US.UTF-8 с помощью стрелок и клавиши Enter.

Далее необходимо проверить отстутствие ошибки. Ввести:
locale
А затем проверить отображается ли время в GUI не на китайской, а на английском:

Проверить соответствие версий прошивки устройств и прошивки сервера
На данный момент все новые лабиринты используют файлы ветки maze--puatie. Ветка master используется в старых лабиринтах (На Arduino Mega). Следовательно, по большей части, сервера прошиваются на ветку maze--puatie, но, во избежание ошибок, перед отправкой необходимо зайти на страницу /devices?dev=1 и проверить версии прошивок устройств на соответствие версии ноды:
maze–puatie - (Для всех устройств начинается с) 9.01…
master - (board) 612a, (moving) 800a, (longsensor) 627a
Актуальную информацию по версиям прошивок можно найти на странице http://my.teslalasers.com/docs/upgradefirmwire
Mate
**ТОЛЬКО ЕСЛИ НЕ УСТАНОВЛЕН! Узнать по картинке на рабочем столе. Если написано MATE - то это MATE :) **
sudo apt install -y ubuntu-mate-desktop
# Если не получается установить Mate и apt говорит что есть **unmet dependencies**:
sudo apt-get install aptitude -y
sudo aptitude install -y ubuntu-mate-desktop
sudo reboot
sudo pkill -u pi
#Ввести логин и пароль
#Выключить скринсервер и спящий режим.
Решение проблем и другое
Здесь собраны основные моменты, связанные с программной подготовкой комплектов. Есть старый мануал, в котором есть больше информации, часть из которой может быть уже не актуальна, но может пригодиться.
Предыдущий мануал по подготовке
Posts
subscribe via RSS