Finalidad del artículo
La finalidad inicial del artículo ha sido la de cómo actualizar el linux de la Cubietruck y después migrar de Bittorrent Sync a Resilio Sync, pero por descuido no he creado una copia de seguridad de la tarjeta y actualizando el linux éste ha dejado de funcionar. Por tanto el artículo he tenido que cambiarlo de una actualización y migración a una creación total de la máquina desde cero, pero en este caso he añadido, además del Resilio Sync, el monitor creado con AngularJs y NodeJs para controlar la máquina.
Por si a alguien le interesa y desea intentar actualizar el linux indico a continuación los pasos que he seguido, hasta que me ha fallado, pero le recomiendo encarecidamente que haga una copia de seguridad de la tarjeta por si acaso le pasa lo mismo que a mí.
Actualización del linux:
Antes que nada indicar que hace tiempo pude hacer una actualización del sistema operativo y ejecuté los siguientes pasos:
- Primero actualicé las librerías a su última versión.
sudo apt-get update
sudo apt-get upgrade
- Depués actualicé el gestor de paquetes apt.
apt-get check
apt-get install apt
- Por último subí la versión del linux.
do-release-upgrade
apt update
apt dist-upgrade
Esta última vez he seguido los siguientes pasos.
- Primero he actualizado las librerías a su última versión:
sudo apt-get update
sudo apt-get upgrade
- Después he subido la versión del linux.
do-release-upgrade
wget http://launchpadlibrarian.net/254525360/apt_1.0.1ubuntu2.13_armhf.deb
Una vez descargado el fichero lo he instalado ejecutando el siguiente comando.
dpkg -i apt_1.0.1ubuntu2.13_armhf.deb
- He vuelto a ejecutar el comando de actualización:
do-release-upgrade
wget https://launchpad.net/~ubuntu-security/+archive/ubuntu/ppa/+build/9631646/+files/dpkg_1.17.5ubuntu5.6_armhf.deb
Una vez descargado el fichero lo he instalado ejecutando el siguiente comando.
dpkg -i dpkg_1.17.5ubuntu5.6_armhf.deb
- He vuelto a ejecutar el comando de actualización:
do-release-upgrade
Si después de ejecutar el comando anterior y reiniciar la máquina, esta arranca (en mi caso no lo ha hecho), se han de ejecutar los siguientes comandos para actualizar las librerías a la versión final.
apt update
apt dist-upgrade
Consideraciones iniciales sobre el artículo
En este artículo se detallan los pasos seguidos para instalar el Lubuntu Server en una Cubietruck (Cubieboard 3) y el Resilio Sync.
Los pasos detallados son los que yo he seguido y que a mí me han funcionado.
En mi caso en la tarjeta SD está el sistema operativo y las aplicaciones, en el disco duro sólo se encuentran los ficheros del BitTorrent Sync.
He aprovechado para instalar el Linaro Server y no el Linaro, como tenía la máquina anterior, de esta forma he conseguido que ocupe menos en la tarjeta sd.
Instalación del sistema operativo en la SD
Después de descargarla la he grabado en la tarjeta SD.
Configuración del sistema operativo
Para la configuración del sistema operativo he seguido los siguientes pasos.
Configuración del teclado en español:
Para esto ejecutamos el siguiente comando:
sudo dpkg-reconfigure keyboard-configuration
Este comando se encarga de lanzar la aplicación de reconfiguración del teclado.
Seleccionamos Generic 105 key (Intl PC), el idioma Spanish y luego las opciones predeterminadas con OK.
Configuración de red:
En mi caso no la he tocado, ya que uso el DHCP, que es la configuración que viene por defecto.
Configuración de la zona horaria:
Para esto ejecutamos el siguiente comando:
sudo dpkg-reconfigure tzdata
Este comando se encarga de lanzar la aplicación de reconfiguración de la zona horaria.
Seleccionamos la zona geográfica Europe y la zona horaria Madrid.
Cambio del nombre a la cubieboard:
Para esto tenemos que crear/modificar el fichero /etc/hosts y añadir el nombre que deseemos que tenga la cubieboard.
Para ello ejecutaremos el siguiente comando:
sudo vi /etc/hosts
Y cambiaremos los nombres de la máquina en las siguientes líneas, quedando de la siguiente forma:
127.0.0.1 CUBIEBOARD
127.0.1.1 CUBIEBOARD
y el fichero /etc/hostname
sudo vi /etc/hostname
Cambiando el nombre que allí se encuentra por el de la máquina:
CUBIEBOARD
Montado del disco duro:
En mi caso el disco duro es /dev/sda1.
El disco duro se va a montar sobre la carpeta /media/hdd.
Para montar el disco duro y que la configuración se guarde entre arranques del sistema operativo se ha de modificar el fichero /etc/fstab, usando el siguiente comando:
sudo vi /etc/fstab
Para ello añadiremos la siguiente línea a dicho fichero.
/dev/sda1 /media/hdd ext4 defaults 0 2
Actualización del sistema operativo
Para actualizar los paquetes del sistema operativo se han ejecutado los siguientes comandos:
sudo apt-get update
sudo apt-get upgrade
Instalación de Resilio Sync
Preparación del repositorio
Para preparar el repositorio se crea el fichero /etc/apt/sources.list.d/resilio-sync.list, ejecutando el siguiente comando:
sudo vi /etc/apt/sources.list.d/resilio-sync.list
Se añade la siguiente linea:
wget -qO - https://linux-packages.resilio.com/resilio-sync/key.asc | sudo apt-key add -
Instalación
Para instalar la aplicación se ejecuta el siguiente comando.
sudo apt-get update
sudo apt-get install resilio-sync
Configuración
Para configurar el Resilio Sync y poder aprovechar lo que ya tenía del Bittorrent Sync he realizado los siguientes pasos:
- Nos movemos a la carpeta de configuración del Resilio Sync.
cd /etc/resilio-sync
- Creamos variables del sistema para ayudarnos en este proceso:
config="/etc/resilio-sync/config.json"
user="root"
- Extraemos el fichero de configuración por defecto del Resilio Sync:
rslsync --dump-sample-config > $config
- Reconfiguramos el fichero de configuración por defecto. Para ello se lanzan los siguientes comandos.
sed -i 's/"device_name"\s*:\s*"My Sync Device"/"device_name": "CUBIEBOARD"/g' $config
sed -i 's/"storage_path"\s*:\s*"\/home\/user\/\.sync"/"storage_path": "\/media\/hdd\/btsync"/g' $config
sed -i 's/"login"\s*:\s*"admin",//g' $config
sed -i 's/"password"\s*:\s*"password"//g' $config
sed -i 's/:8888",/:8888"/g' $config
- Después editamos el fichero de configuración por defecto
vi /etc/resilio-sync/config.json
y descomentamos las líneas que contengan device_name y storage_path si estaban comentadas en el fichero.
Uso datos anteriores de BitTorrnent Sync
Para que pueda tener acceso al disco duro anterior hay que cambiar que el usuario que arranca el servicio, en nuestro caso es root y no rslsync, para ello hay que modificar el fichero /etc/init.d/resilio-sync.
vi /etc/init.d/resilio-sync
y cambiamos
SYNC_USER=rslsync
por
SYNC_USER=root
y además cambiamos
start-stop-daemon --start --quiet -b -o -c $SYNC_USER -u $SYNC_USER --exec $DAEMON --umask 0002 -- --config $CONFIG
por
start-stop-daemon --start --quiet -b -o -c $SYNC_USER -u $SYNC_USER --exec $DAEMON --umask 0007 -- --config $CONFIG
Después de esto ya podemos reiniciar la cubietruck.
sudo shutdown -h 0
Instalación del monitor basado en AngularJs y NodeJs
Software instalado
Git
Este es el cliente usado para descargar la web desde github.
Para la instalación he ejecutado los siguientes comandos:
sudo apt-get install git
NodeJS
Para la instalación de NodeJS he elegido la última versión (en el momento de escribir el artículo es la 6.x) y he ejecutado los siguientes comandos:
sudo apt-get install curl
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
Librerías adicionales que he instalado en la Cubieboard para poder realizar la monitorización
lm-sensors
Para poder detectar la temperatura de la CPU he usado la herramienta lm-sensors.
Los pasos que he seguido para instalarla han sido los siguientes:
Primero he ejecutado el siguiente comando para instalarla:
sudo apt-get install lm-sensors
Una vez instalada he ejecutado los siguientes comandos para configurarla y arrancarla:
sudo sensors-detect
sudo service kmod start
Para obtener la información de los discos se puede utiliar el paquete smartmontools:
apt-get install smartmontools
hddtemp
Para obtener la información de los discos se puede utilizar el paquete hddtemp:
apt-get install hddtemp
Instalación de la web de monitorización
Instalación de la web
Los pasos para instalar el proyecto en la Cubieboard son los siguientes:
- Configurar git, sólo la primera vez:
git config --global user.email "correo"
git config --global user.name "usuario"
- Bajar el proyecto desde github a la carpeta ~/cubieboard-monitor:
cd
git clone https://github.com/juaalta/cubieboard-monitor.git cubieboard-monitor
- Entrar en la carpeta en la que se ha descargado e instalar las dependencias necesarias:
cd cubieboard-monitor
npm install
Una vez seguidos los pasos anteriores, si queremos probar la aplicación sólo tenemos que lanzar el siguiente comando:
nodejs server.js
También puede ejecutarse:
npm start
Comentarios
Publicar un comentario