Migrant un servidor d'una antiga Raspberry a una Raspberry Pi 2

Migrant un servidor d'una antiga Raspberry a una Raspberry Pi 2

Per a facilitar les gestions d'administració, d'accés SSH i tal, afegirem a /etc/hosts els noms i IPs de ambdues RPi 2, i li anomenarem "nuvolet.benicass.im" i "nuvolet2.benicass.im".


192.168.1.105 nuvolet nuvolet.benicass.im
192.168.1.109 nuvolet2 nuvolet2.benicass.im

M'he baixat la FreeBSD 11-CURRENT del repositori oficial de FreeBSD i he cremat la tarjeta MicroSD. Per defecte, aquest sistema arm té l'usuari root amb contrasenya 'root', i l'usuari freebsd amb contrasenya 'freebsd'. I té l'SSH activat.

Primer pas, instal·lació de paquets a la nova Raspberry:

Mirem les aplicacions que tenim instal·lades a la Rasberry nuvolet.benicass.im amb pkg info i procedim a fer les instal·lacions en el nuvolet2:


pkg install nmap bash emacs-nox11 freecolor nload tmux nginx php55 php55-curl php55-ctype php55-gd php55-json php55-mysql php55-pdo_mysql php55-xml php55-zip php55-zlib mysql56-server mysql56-client git dropbox-uploader

I seguidament FreeBSD ens confirmarà tots els paquets i llibreries que anem a instal·lar per tal de tenir en funcionament tots eixos paquets. Confirmarem amb y i les instal·lem. I en pocs minuts ja els tenim instal·lats al nostre sistema. Ara continuem.

Segon pas, migrem les configuracions vàries:

[1] El primer de tot serà sustituir el fitxer /etc/rc.conf d'una Raspberry a l'altra, això sí, vaig a canviar l'adreça IP fixa per a que no tinguen la mateixa.

[2] I ara el més important, a la Raspberry nova crearem el directori /var/www i a l'antiga anirem a eixa ruta i haurem de moure tots els projectes webs. Podem fer-ho de manera recursiva amb scp -r.

[3] Traspasem totes les configuracions de Nginx de la màquina antiga al Nginx de la màquina Raspberry nova. La ruta és /usr/local/etc/nginx.

[4] Com que a mi m'agrada tenir tots els logs controlats e independents, creem el directori de logs de Nginx a /var/log/nginx

[5] Com hem modificat el php-fpm (per exemple el socket), copiarem també la configuració al nuvolet2 de php-fpm.conf

[6] També anem a passar el crontab de nuvolet.benicass.im al nuvolet2.

[7] També el fitxer de configuració de dropbox_uploader

[1] $ scp /etc/rc.conf freebsd@nuvolet2:/tmp/.
[2] $ scp -r * freebsd@nuvolet2:/var/www/.
[3] $ scp -r /usr/local/etc/nginx/ freebsd@nuvolet2:/tmp/.
[4] $ mkdir /var/log/nginx && touch /var/log/nginx/nginx-error.log
[5] $ scp /usr/local/etc/php-fpm.conf freebsd@nuvolet2:/tmp/.
[6] $ crontab -e (i passem l'antic crontab)
[7] $ scp .dropbox_uploader freebsd@nuvolet2:/tmp/.

Personalment, sempre m'agrada el shell Bash, i el ficarem per a l'usuari fulanito i el root amb:


root@nuvolet2:/var/www/nuvolet # chsh -s /usr/local/bin/bash joan
chsh: user information updated
root@nuvolet2:/var/www/nuvolet # chsh -s /usr/local/bin/bash root
chsh: user information updated
root@nuvolet2:/var/www/nuvolet # chsh -s bash
chsh: user information updated

Finalment la batejem i reiniciem:

Al fitxer /etc/rc.conf li direm al nuvolet2 que a partir d'ara s'anomena nuvolet.benicass.im i li direm la IP que abans teniem al nuvolet.benicass.im original.
I recorda també canviar les contrasenyes! especialment la del root, però canvia-ho tot i acostuma't a fer servir contrasenyes complicades d'endevinar.

Rc.conf de FreeBSD de la meua Raspberry

I ja. Reiniciem la nova Raspberry i a treballar. Pots modificar la configuració de la NAT del teu router o bridge, i ja tens la migració completada.

Actualment, si visites http://nuvolet.benicass.im estàs accedint a la meua nova Raspbery Pi 2 amb FreeBSD-11-CURRENT

Espere que aquest article t'agrade, et motive a fer servir un UNIX lliure com a servidor (o escriptori amb Gnome/KDE o el que més t'agrade) i que t'animes també a compartir els avanços tècnics que vas fent a poc a poc en la teua informàtica a la feina o a casa, per què la Comunitat del Programari Lliure et necessita! :-)