
Systemd y apt proporciona un gestor de sistemas y servicios en nuestros receptores Dreambox con OE 2.5 o OE 2.6, que vamos a desarrollar de una manera básica durante este articulo.
1 Apt
Nuestros receptores Dreambox para la gestion de paquetes tienen la poderosa herramienta apt, que podemos usarla mediante comandos para gestionar los paquetes del receptor, vamos a tratar unos ejemplos basicos
Actualizar los paquetes del sistema
apt-get update
Si deseamos buscar un paquete en concreto
apt search gbox
Instalar un paquete
apt-get install gp4-cam-gbox-02.2a
Desistalar un paquete
apt-get remove gp4-cam-gbox-02.2a
2 Systemd
El comando principal para controlar systemd es systemctl y los archivos de arranque (services) de usuario (paquetes), se ubican en /lib/systemd/system.
2.1 Creacion de un service
Para crear un service nuevo de arranque vamos a realizarlo por ejemplo con cam Oscam, para ver como añadir un oscam nuevo y en este caso como añadir este oscam para que nos aparezca en el menu de arranque de GP4 (gemini blue panel).
1 En primer lugar nos podemos descargar la ultima cam 11578 de oscam, en este caso lo vamos a usar en dreambox one Ultra HD
Una vez descargado el archivo oscam para dreambox one Ultra HD lo introducimos en usr/bin y le damos permisos 755
chmod 755 /usr/bin/oscam-svn11578-dream_one
2 Una vez le hemos dado permisos de ejecucion debemos crear un archivo json para que oscam nos aparezca en el panel blue GP4 que debe tener este nombre camd_xxxxxxx.json, donde xxx es el nombre de la cam para diferenciar de las demas en este caso lo llamamos camd_oscam_11578.json el cual se ubica en /etc/enigma2
Este archivo debe tener la siguiente estructura, que como vemos es facil:
{
"name": "OSCam 11578",
"binary": "oscam-svn11578-dream_one",
"path": "/usr/bin/oscam-svn11578-dream_one -b"
}
- name: nombre que nos aparecera en el menu blue panel GP4
- binary: el nombre del binario oscam que hemos introducido
- Path: el directorio donde hemos introducido nuestra oscam
A este archivo creado le damos permiso de ejecución
chmod 755 /etc/enigma2/camd_oscam_11578.json
Una vez que hemos creado ya lo necesario para oscam en GP4 ahora vamos a crear el service systemd para que el oscam creado pueda arrancar en reboot del receptor, para ello como hemos comentado el directorio para servicios de usuario los podemos en contrar en /lib/systemd/system y debe llamarse xxxxx.service, en este ejemplo lo llamamos oscam_11578.service
Le debemos dar permiso de ejecucion para ello
chmod 755 /lib/systemd/system/oscam_11578.service
Para oscam ese service debe tener la siguiente estructura
[Unit] After=dev-dvb-adapter0-ca0.deviceAfter=dev-dvb-adapter0-demux0.device
After=dev-sci0.device [Service] Type=forking
ExecStart=/usr/bin/oscam-svn11578-dream_one -b
Restart=on-failure
NotifyAccess=main
NonBlocking=true [Install] WantedBy=multi-user.target
2.2 Gestion de Services
Como comentemos anteriormente con el comando sistemclt, pues vamos a ver los comandos mas basicos:
Para iniciar un service:
systemctl start oscam_11578
Para añadir ese service al reinicio del receptor
systemctl enable oscam_11578
Para ver el estado del service
Para parar el service
systemctl stop oscam_11578
Para remover el service del inicio del receptor
systemctl disable oscam_11578
Siempre que hagamos algun cambio en el service debemos hacer un reload para ello
systemctl reload oscam_11578
2.3 Gestion del sistema
Con el comando systemctl tambien podemos controlar acciones sobre el sistema, las mas basicas son:
Mostrar el estado del sistema
systemctl status
Reiniciar completamente el receptor
systemctl reboot
Para parar enigma2
systemctl stop enigma2
Parar iniciar enigma2
systemctl start enigma2
Para reiniciar enigma2
systemctl restart enigma2
2.4 Ver registros del sisteam con journal
Otra utilidad que podemos usar con la llegada de systemd a nuestras dreambox es el comando journalctl para poder visionar los log de nuestro sistema, que vamos a ver unos ejemplos basicos:
Para ver los registros del sistema en tiempo real:
journalctl -f
Para limitar el log a un service concreto
journalctl | grep oscam