Sur un NAS Synology, pour éviter qu’il certificat Let’s Encrypt ne puisse pas être créé ou renouveler, il faut ouvrir le port 80. Il faut donc vérifier que ce port soit bien ouvert, surtout en cas de blocage d’accès du NAS pour certains pays.
Raspbian – Démarrer sur un disque dur
Pour commencer, il faut installer raspbian sur la carte SD.
Préparer le disque dur
Il faut formater le disque dur en Ext4 pour pouvoir y déplacer la partition Root de l’OS (avec gparted ou la commande fdisk, puis mkfs -t ext4 /dev/sda1).
Copie de root
Toutes les commandes ci-dessous sont à faire avec les droits Root.
Identifier la carte SD et le disque dur pour pouvoir les monter (affiché sd?? dans les commandes ci-dessous) :
sudo fdisk -l
Copier la partition Root depuis la carte SD vers le HDD (if=SD of=HDD).
sudo dd if=/dev/sd?? of=/dev/sd?? bs=512
En clair : copie tout ce qui est dans la carte SD vers la partition sda2 du disque dur, par blocs de 512 octets (bs=block size).
Finalement, étendre la ROOT FILE SYSTEM :
sudo resize2fs /dev/sd??
Vérifier copie et nettoyer SD
Monter le disque dur dans un répertoire créé préalablement (ici /home/user/hdd) :
sudo mount -t ext4 /dev/sd?? /home/user/hdd
Vérifier que la copie c’est bien passée sur le HDD :
cd /home/user/hdd ls -l
Si tout est OK, on supprime la partition Root de la carte avec la commande fdisk ou avec gparted.
Configuration pour démarrage sur HDD
Pour que l’OS démarre sur le HDD, il faut modifier deux fichiers : cmdline.txt et fstab.
Pour commencer, il faut monter la partition boot de la carte SD :
sudo mount -t vfat /dev/sd?? /home/user/sd cd /home/user/sd
Modifier cmdline.txt
Dans le fichier, remplacer la partie root=/dev/mmcblk0p2 par root=/dev/sda1 :
sudo nano cmdline.txt
Modifier fstab
Modifier le chargement de la partition root comme suite :
roc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults,ro 0 2
#/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
/dev/sda1 / ext4 defaults,noatime 0 1
avec la commande :
cd /home/user/hdd/etc sudo nano fstab
On démonte la carte SD et le HDD :
sudo umount /home/user/hdd /home/user/sd
Conclusion
Le Raspberry Pi peut maintenant être démarrer. Il ne reste plus qu’à y installer les logiciels souhaités.
Installer un serveur Mumble (Murmur) sur Raspbian
Installation
Pour installer Raspbian, rendez-vous ici.
Pour commencer, installer le paquet suivant :
sudo apt-get install mumble-server
Configuration
Une fois le serveur installé, il faut effectuer la configuration. Cela se fait à l’aide de la commande suivante :
sudo dpkg-reconfigure mumble-server
Le système va présenter quelques options. Les plus importantes sont les suivantes :
- Démarrage automatique au lancement de la machine: Oui
- Priorité élevée: Oui (Cela garantit que le serveur Mumble sera toujours la priorité absolue sur le Raspberry Pi)
Mot de passe du superutilisateur: Définir le mot de passe sur super utilisateur du serveur Mumble.
Affiner la configuration
Les autres éléments de configuration sont défini dans le fichier /etc/mumble-server.ini.
Pour le modifier, il faut taper la commande suivante :
sudo nano /etc/mumble-server.ini
Dans ce fichier, on trouve entre autre :
- welcomeText : Le message de bienvenue
- serverpassword : le mot de passe pour se connecter
- port : permet de définir un autre port d’accès au serveur (par défaut, c’est le 64738)
- users : le nombre maximum de connexions permises simultanément
- autobanAttempts : pour bannir les tentatives de connexion excessives
Une fois les paramètres saisis, il suffit d’appuyer sur CTRP+X pour sauvegarder les modifications. Pour que les modifications soient effectives, il faut redémarrer le serveur:
sudo service mumble-server restart
Pas de chargement de Murmur au démarrage
Si le serveur Murmur ne démarre pas en même temps que le Raspberry Pi, il peut s’agir d’un bug :-). Ce dernier semble avoir été identifié ici : https://bugs.launchpad.net/ubuntu/+source/mumble/+bug/1346431
En attendant, il faudra lancer la requête de démarrage à la main
sudo murmurd
Sauvegarder la configuration
Les fichiers suivants contiennent la configuration du serveur Murmur :
- /var/lib/mumble-server/mumble-server.sqlite
- /etc/mumble-server.ini
Installer Raspbian
Ce petit tutoriel présente les étapes de l’installation de Raspbian.
Pour commencer, il faut télécharger Raspbian sur https://www.raspberrypi.org/downloads/raspbian/.
Il faut ensuite rechercher la carte SD sur laquelle faire l’installation. Cela se faite avec la commande « fdisk -l ». Le périphérique est présenté sous la forme « /dev/sdX ».
$ sudo fdisk -l Disk /dev/sda: 512.1 GB, 512110190592 bytes 255 têtes, 63 secteurs/piste, 62260 cylindres, total 1000215216 secteurs Unités = secteurs de 1 * 512 = 512 octets Taille de secteur (logique / physique) : 512 octets / 512 octets taille d'E/S (minimale / optimale) : 512 octets / 512 octets Identifiant de disque : 0x00000000 Périphérique Amorçage Début Fin Blocs Id. Système /dev/sda1 1 1000215215 500107607+ ee GPT ... Disque /dev/sdh : 7969 Mo, 7969177600 octets 246 têtes, 62 secteurs/piste, 1020 cylindres, total 15564800 secteurs Unités = secteurs de 1 * 512 = 512 octets Taille de secteur (logique / physique) : 512 octets / 512 octets taille d'E/S (minimale / optimale) : 512 octets / 512 octets Identifiant de disque : 0xa6202af7 Périphérique Amorçage Début Fin Blocs Id. Système /dev/sdh1 8192 122879 57344 c W95 FAT32 (LBA) /dev/sdh2 122880 6399999 3138560 83 Linux
Une fois identifié, on le démonter (avec umount ou via gparted).
Pour installer l’image téléchargée, on lance la commande suivante (remplacer sdX pour celui trouvé avec la commande fdisk) :
dd bs=4M if=2015-09-24-raspbian-jessie.img of=/dev/sdX
Une fois que la carte est prête, il faut installer Raspbian en démarrant le Raspberry Pi avec la carte SD. Il ne reste plus qu’à suivre l’assistant de configuration.
Pour installer le clavier Suisse, il faut sélectionner le clavier suisse allemand puis sélectionner « french » sur l’écran suivant.
Démarrage en mode graphique
Avec l’arrivée de Raspbian Jessie, l’interface graphique est démarrée par défaut. Il faut donc démarrer la configuration graphiquement en allant sur le « menu –> Préférences –> Raspberry Pi Configuration » ou en démarrant la configuration en ligne de commande (par l’intermédiaire d’une connexion SSH) avec la commande « raspi-config ». Il est possible de désactiver le démarrage sur l’interface par défaut.
Installer un serveur FTP
Pour installer un serveur FTP, lancer la commande suivante :
sudo apt-get install vsftpd
On configure ensuite le serveur en éditant le fichier vsftpd.conf
sudo nano /etc/vsftpd.conf
changez la ligne
Anonymous_enabled=YES
en
Anonymous_enabled=NO
Maintenant, enlevez le # devant les lignes suivantes :
Local_enable = YES
local_unmask=022
Write_enabled=YES
Ascii_upload_enabled=YES
Ascii_download_enabled=YES
Il ne reste plus qu’a sauvegarder et le serveur est prêt.
Installer screen
Screen est un « multiplexeur de terminaux » permettant d’ouvrir plusieurs terminaux dans une même console, de passer de l’un à l’autre et de les récupérer plus tard. C’est par exemple utile lorsque l’on lance un script via une session SSH et que l’on veut le récupérer plus tard lors d’une nouvelle connexion SSH.
Pour l’installer :
sudo apt-get install screen
Utilisation
Créer un nouveau screen en nommant la session :
screen -S nom_de_la_session
Un message annonçant la version utilisée et indiquant que ce programme est publié sous licence GPL s’affiche à l’écran. Il ne reste plus qu’à presser la touche [ESPACE].
La nouvelle session du shell s’affiche et attend qu’on saisisse une commande, par exemple :
echo test
Le shell se présente alors comme ça :
foo@bar $ echo test
test
foo@bar $
Pour se détacher de la session du screen :
Saisir la suite de touche clavier suivante : [CTRL]+[a] suivi de [d]
OU fermer le terminal et/ou ouvrir un autre terminal
Pour se rattacher à la session du screen :
screen -r nom_de_la_session
Raspberry Pi – Faire un backup de sa carte SD
Ce tutoriel est largement copié de l’article suivant (c’est mon backup de « Faire un backup de sa carte SD » 🙂 ) : http://blog.nicolargo.com/2013/04/raspberry-pi-faire-un-backup-de-sa-carte-sd.html
Sauvegarde intégral d’une carte SD
On commence par insérer la carte SD dans le lecteur du PC GNU/Linux sur lequel on veut faire la sauvegarde.
Pour identifier le périphérique correspondant à la carte SD à sauvegarder sur son système, il suffit de saisir la commande suivante et de regarder le device qui correspond à sa carte SD:
$ sudo fdisk -l [sudo] password for nicolargo: Disk /dev/sda: 320.1 GB, 320072933376 bytes 255 têtes, 63 secteurs/piste, 38913 cylindres, total 625142448 secteurs Unités = secteurs de 1 * 512 = 512 octets Taille de secteur (logique / physique) : 512 octets / 512 octets taille d'E/S (minimale / optimale) : 512 octets / 512 octets Identifiant de disque : 0x000e3a56 Périphérique Amorce Début Fin Blocs Id Système /dev/sda1 * 2048 617170943 308584448 83 Linux /dev/sda2 617172990 625141759 3984385 5 Étendue /dev/sda5 617172992 625141759 3984384 82 partition d'échange Linux / Solaris Disk /dev/sdb: 16.0 GB, 16012804096 bytes 64 têtes, 32 secteurs/piste, 15271 cylindres, total 31275008 secteurs Unités = secteurs de 1 * 512 = 512 octets Taille de secteur (logique / physique) : 512 octets / 512 octets taille d'E/S (minimale / optimale) : 512 octets / 512 octets Identifiant de disque : 0x00014d34 Périphérique Amorce Début Fin Blocs Id Système /dev/sdb1 8192 122879 57344 c W95 FAT32 (LBA) /dev/sdb2 122880 31275007 15576064 83 Linux
J’ai donc deux disques détectés sur ma machine:
- /dev/sda (disque de 320 Go) qui est mon disque dur système sur mon PC portable. Ce n’est pas ce disque que l’on veut sauvegarder.
- /dev/sdb (disque de 16 Go) qui est ma carte SD que je souhaite sauvegarder.
On lance la sauvegarde avec la commande suivante:
sudo dd if=/dev/sdb | gzip -9 > ./raspberry-20130420-sdb.img.gz
Restauration intégrale d’une carte SD
Après avoir inséré la clé USB sur laquelle on souhaite faire la restauration (attention la clé va être effacée), on commence par identifier l’identifiant du périphérique comme dans le paragraphe précédant (/dev/sdb dans mon cas).
Puis ensuite, il suffit de saisir la ligne de commande:
gunzip ./raspberry-20130420-sdb.img.gz | sudo dd of=/dev/sdb
Sauvegarde partition par patition d’une carte SD
Petit bonus, la sauvegarde par partition!
Comme on peut le voir sur les deux dernières lignes de la commande fdisk du premier paragraphe , la carte SD (point de montage /dev/sdb dans mon cas) comporte deux partitions (mais il peut y en avoir plus selon la configuration de votre Raspberry Pi).
Il faut sauvegarder toutes les partitions:
sudo dd if=/dev/sdb1 | gzip -9 > ./raspberry-20130420-sdb1.img.gz sudo dd if=/dev/sdb2 | gzip -9 > ./raspberry-20130420-sdb2.img.gz
Ces commandes peuvent prendre plus ou moins de temps selon la taille de votre carte SD. J’ai ainsi mis plus d’une dizaine de minute pour faire la sauvegarde de ma carte SD de 16 Go. On voit ici l’avantage de choisir la taille de ses cartes SD en fonction de ses besoins…
Restauration partition par patition d’une carte SD
Nous allons maintenant restaurer la carte préalablement sauvegardée. La procédure consiste à créer les partitions avec la commande fdisk puis ensuite à y écrire les images avec dd.
On part sur le principe ou la carte est vierge est sans partition (sinon utilisé la commande d pour chacune des partitions puis w pour valider):
$ sudo fdisk /dev/sdb Commande (m pour l'aide): p Disk /dev/sdb: 16.0 GB, 16012804096 bytes 64 têtes, 32 secteurs/piste, 15271 cylindres, total 31275008 secteurs Unités = secteurs de 1 * 512 = 512 octets Taille de secteur (logique / physique) : 512 octets / 512 octets taille d'E/S (minimale / optimale) : 512 octets / 512 octets Identifiant de disque : 0x00014d34 Périphérique Amorce Début Fin Blocs Id Système
On commence par créer le première partition (sdb1):
Commande (m pour l'aide): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Numéro de partition (1-4, par défaut 1):
Utilisation de la valeur par défaut 1
Premier secteur (2048-31275007, par défaut 2048): 8192
Dernier secteur, +secteurs or +taille{K,M,G} (8192-31275007, par défaut 31275007): 122879
Commande (m pour l'aide): t
Partition sélectionnée 1
Code Hexa (taper L pour lister les codes): c
Type système de partition modifié de 1 à c (W95 FAT32 (LBA))
puis la seconde (sdb2):
Commande (m pour l'aide): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Numéro de partition (1-4, par défaut 2):
Utilisation de la valeur par défaut 2
Premier secteur (2048-31275007, par défaut 2048): 122880
Dernier secteur, +secteurs or +taille{K,M,G} (122880-31275007, par défaut 31275007):
Commande (m pour l'aide): p
Disk /dev/sdb: 16.0 GB, 16012804096 bytes
64 têtes, 32 secteurs/piste, 15271 cylindres, total 31275008 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Identifiant de disque : 0x00014d34
Périphérique Amorce Début Fin Blocs Id Système
/dev/sdb1 * 8192 122879 57344 c W95 FAT32 (LBA)
/dev/sdb2 122880 31275007 15576064 83 Linux
On valide les partitions:
Commande (m pour l'aide): w Synchronisation des disques.
Ensuite on restaure les images:
gunzip ./raspberry-20130420-sdb1.img.gz | sudo dd of=/dev/sdb1 gunzip ./raspberry-20130420-sdb2.img.gz | sudo dd of=/dev/sdb2
Et voilà le travail !