Для версии 0.2.16 и выше
Монтирование портала по SMB
пример строки монтирования
mount -t cifs //<yor_ip>/test/web /home/web -o user=user
Для монтирования портала при старте STB, необходимо добавить соответствующую строку в стартовый скрипт ./test.sh
Пример файла test.sh (в примере указана часть файла):
if [ -n "$upd_ver" ]; then
echo "The update number version: $upd_ver"
img_version_now=`fw_printenv Image_Version 2>/dev/null`
img_version_now=${img_version_now#Image_Version=}
if [ "$upd_ver" -eq "$img_version_now" ]; then
echo "The number version's equal"
else
# We need update
/usr/bin/update_img.sh $upd_ver $upd_url $upd_mode
fi
fi
############### монтирование портала по SMB #####################################
mount -t cifs //<yor_ip>/test/web /home/web -o user=user
#################################################################################
if [ "$PORTAL_1$PORTAL_2$PORTAL_DHCP" ]; then
echo "Loading start page..."
/usr/share/qt-4.6.0/stbapp -qws -display directfb file:///home/web/index.html
else
echo "Error loading portal. Service Page"
/usr/share/qt-4.6.0/stbapp -qws -display directfb /home/web/services.html
fi
Монтирование портала по NFS
Расположить файлы портала на сервере с доступом по NFS к каталогу с файлами.
Строка монтирование:
mount -o nolock <your_IP>:/srv/test/web /home/web
Для монтирования портал при старте STB, необходимо добавить соответствующую строку в стартовый скрипт ./test.sh
Пример файла test.sh (в примере указана часть файла):
if [ -n "$upd_ver" ]; then
echo "The update number version: $upd_ver"
img_version_now=`fw_printenv Image_Version 2>/dev/null`
img_version_now=${img_version_now#Image_Version=}
if [ "$upd_ver" -eq "$img_version_now" ]; then
echo "The number version's equal"
else
# We need update
/usr/bin/update_img.sh $upd_ver $upd_url $upd_mode
fi
fi
############### монтирование портала по NFS #####################################
mount -o nolock <your_IP>:/srv/test/web /home/web
#################################################################################
if [ "$PORTAL_1$PORTAL_2$PORTAL_DHCP" ]; then
echo "Loading start page..."
/usr/share/qt-4.6.0/stbapp -qws -display directfb file:///home/web/index.html
else
echo "Error loading portal. Service Page"
/usr/share/qt-4.6.0/stbapp -qws -display directfb /home/web/services.html
fi
Загрузка корневой файловой системы по DHCP
На примере OS Ubuntu Server 12.04 LTS x86.
Пакеты: nfs-kernel-server
, isc-dhcp-server
, openbsd-inetd
, tftpd, tftp
Подробно про загрузку основного ПО по DHCP: Загрузка основного ПО по DHCP
Пример файла dhcp.conf:
option ntp-servers 10.1.1.1;
option domain-name-servers 10.1.1.1;
authoritative;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
allow bootp;
#############################################################
# Option for Infomir
#############################################################
option space Infomir;
option Infomir.autostart code 1 = text;
option Infomir.bootargs code 2 = text;
option Infomir.mcip code 3 = ip-address;
option Infomir.mcport code 4 = integer 16;
option Infomir.oppubfile code 9 = text;
option Infomir.mcip_img code 10 = ip-address;
option Infomir.mcport_img code 11 = integer 16;
option Infomir.mcip_mng code 12 = ip-address;
option Infomir.mcport_mng code 13 = integer 16;
option Infomir.ip_log code 14 = ip-address;
option Infomir.port_log code 15 = integer 16;
option Infomir.logo_x code 16 = integer 16;
option Infomir.logo_y code 17 = integer 16;
option Infomir.bg_color code 18 = integer 32;
option Infomir.fg_color code 19 = integer 32;
option Infomir.VerNumber code 20 = text;
option Infomir.DateTime code 21 = text;
option Infomir.portal_dhcp code 22 = text;
option Infomir.timezone code 23 = text;
option Infomir.update_url code 24 = text;
option Infomir.update_sboot code 25 = text;
option Infomir.update_ver code 26 = text;
option Infomir.update_mode code 27 = text;
option Infomir.update_sboot_ver code 28 = text;
############################## BOOT MAG250 ################################################
###### загрузка ядра по протоколу tftp с корневой файловой системой, подключенной через nfs
class "MAG250_boot" {
match if (( option vendor-class-identifier="InfomirMAG250boot"));
filename "mag250/uImage_mag250"; //расположение ядра
next-server 10.1.1.1;
option root-path "10.1.1.1:/srv/mag250"; //расположение корневой файловой системы
option ntp-servers 10.1.1.1;
vendor-option-space Infomir;
}
############################## NETWORK ####################################
subnet 10.1.1.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
next-server 10.1.1.1;
pool {
range 10.1.1.10 10.1.1.254;
next-server 10.1.1.1;
option ntp-servers 10.1.1.1;
}
}
Запуск внутреннего портала из консоли на STB
killall stbapp
. /test.sh
или
/usr/share/qt-4.6.0/stbapp -qws -display directfb /home/web/services.html
Запуск портала из консоли - файлы портала доступны по HTTP
Зайти на STB по SSH
выполнить:
killall stbapp
/usr/share/qt-4.6.0/stbapp -qws -display directfb http://your_ip/you_portal/index.html
Включение дебага во внутреннем портале
Для версий до 0.2.16 - внести изменения в файл /home/web/vars.js
var debug=0
заменить на var debug=1
Для версии 0.2.18 и выше - достаточно установить переменную окружения debug=1
(1 - включено, 0 или отсутствие переменной - отключено)