Cómo ejecutar un programa al iniciar la Raspberry

Si queremos ejecutar un programa cada vez que se encienda la Raspberry podemos optar por dos opciones: la primera es añadir una línea al archivo “rc.local” con el programa en cuestión. Pero la más correcta sería hacer la llamada al programa desde un archivo nuevo que incluiremos en “/etc/init.d/nuevo” y que contendrá las siguientes cuatro líneas:

 

#! /bin/bash

### BEGIN INIT INFO

### END INIT INFO

sudo /usr/local/bin/nuevo

 

Una vez creado el archivo tendremos que darle permisos de ejecución con

 

sudo chmod +x /etc/init.d/nuevo

 

Y por último darlo de alta con la siguiente ejecución

 

sudo update-rc.d nuevo defaults

 

Si queremos darlo de baja y que no se vuelva a ejecutar en cada reinicio haremos:

 

sudo update-rc.d -f nuevo remove

Subiendo el nivel

Para los interesados en llegar un poco más adelante con vuestras tarjetas SDs, os indico lo que podríais probar:

OpenELEC: en lugar de usar ArenaVision podríais contratar Rapid IPTV

RetroPie: en lugar de usar el mando de PS3 podríais probar con un mando de PS4

Raspbian: en lugar de servir una web desde la SD podríais hacerlo desde un pendrive

Limitar ancho de banda de subida

 

Me he encontrado que si subo algo a Internet (por ejemplo, a Mega) esto me secuestra todo el tráfico de Internet… y me queda una red inútil en los otros dispositivos. Así que he limitado el ancho de subida de la Raspberry temporalmente con este script:

sudo bash limit.sh start

(para bajarse el script “limit” aquí el link)

http://www.kalixtik.com/limit.sh

A la rica imagen

 

Os comparto 3 imágenes de SDs para Raspberry comprimidas en rar, así como el programa para grabarlas en vuestras tarjetas. Todas se han de grabar en SDs de a partir de 16 GB, excepto la primera que puede ser de al menos 8 GB:

Imagen de reproductor multimedia Kodi Krypton con Catoal y ArenaVision

Imagen de RetroPie preparado para joystick USB y/o PS3 inalámbrico

Imagen de Sistema Operativo Raspbian Jessie con LibreOffice y servidor php

Y ahora el programa para grabar cada una de las imágenes:

Win32DiskImager

| Etiquetado , , , , , , , ,

Un pendrive… para servirlos a todos

Tengo un pendrive en la Raspberry del comedor, que está cargada con LibreELEC. Me sirve para descargar Torrents o para acceder a él usando SAMBA o SFTP.

Quería usar ese mismo pendrive para montar un servidor web… pero LibreELEC no dispone de ese addon. ¿Qué he hecho? Montar un servidor web en mi otra Raspberry (la que ejecuta Raspbian) y crear un enlace simbólico entre ellas compartido por SAMBA dentro del directorio del servidor Apache. Es decir:

mkdir /home/pi/tempSamba

sudo mount -t cifs -o username=root,password=libreelec //192.168.0.194/raspberry /home/pi/tempSamba

mkdir /home/pi/tempSamba/www

ln -s /home/pi/tempSamba/www /var/www/html/fran

Y con esto, puedo usar el pendrive del comedor para servir por Internet cualquier cosa que le meta en el directorio “www”, desde imágenes a vídeos o páginas web en php. Y todo en el mismo pendrive conectado a LibreELEC (quien dice pendrive dice disco duro de 2 TB).

Cómo acceder por Samba de una Raspberry a otra

Con este comando podemos crear un directorio que sea virtualmente el directorio remoto de otra Raspberry:

(en Raspbian): smbpasswd -a pi

mkdir /storage/tempSamba

mount -t cifs -o username=pi,password=clave //192.168.0.194/data /storage/tempSamba

Todo lo que hagamos en /storage/tempSamba irá a parar al directorio que definamos en el share “data” de la Raspberry que tenemos conectada en la IP 192.168.0.194

Llista de canals m3u8 d’exemple

TV3
http://www.tv3.cat/directetv3cat/tv3catpc.m3u8
Canal 33
http://ccma-tva-es-abertis-live.hls.adaptive.level3.net/es/ngrp:c33_web/chunklist_b548000.m3u8
Mega
http://a3live-lh.akamaihd.net/i/mghds/geomega_1@328914/master.m3u8
La Sexta
http://a3live-lh.akamaihd.net/i/lasexta_1@35272/master.m3u8
Antena 3
http://a3live-lh.akamaihd.net/i/antena3_1@35248/master.m3u8
Telecinco
http://mediasethls-lh.akamaihd.net/i/mitele/telecinco_ng@393132/index_700_av-p.m3u8

Webcam de les oficines de Wowza

http://wowza.jwplayer.com:1935/live/jelly.stream/playlist.m3u8

 

Leer y cambiar valores de variables en Linux

Este programa bash para Linux nos servirá para leer el contenido de una variable y modificarla si lo necesitamos. Leemos dicho contenido desde el fichero “variables”, que ha de contener la línea “variable_1=valor”. En el ejemplo no modificamos la variable porque insertamos el mismo valor que leemos:

leer_variable=$(sed -n “/^variable_1=\(.\+\)$/s//\1/p” variables)

sed -i “/variable_1=/ s/=.*/=$leer_variable/” variables

ESTA VARIANTE DE ABAJO ES PARA COGER EN EL CASO DE (variable1 = “contenido”)

leer_variable=$(sed -n “/^variable_1 = \”\(.\+\)\”$/s//\1/p” variables)
sed -i “/variable_2\ =\ \”/ s/=.*/=\ \”$leer_variable\”/” variables

Podremos ejecutar este código desde php usando el comando shell_exec

 <?php
 $salida = shell_exec('sh /var/www/html/fran/cambia');
 echo "$salida";
 ?>