Configuration d’un Olinuxino A20 en serveur Debian headless

J’ai acheté un deuxième appareil Olinuxino A20 MICRO.

Source : Olimex
Source : Olimex

Cet appareil correspond tout à fait à mes attentes pour en faire un serveur headless : 1 à 4W de consommation, fanless, architecture armhf (donc utilisation des packages debian standards), processeur dual core à 1GHz, 1Go de mémoire vive, open hardware, connectique très complète, pas cher.

Voici comment je l’ai paramétré pour m’en servir de serveur Debian.

Configuration de base

J’ai utilisé la carte micro-SD proposée par le fabricant : https://www.olimex.com/Products/OLinuXino/A20/A20-Debian-SD/. Mais on peut a priori utiliser n’importe quelle carte : le contenu (filesystem Debian Wheezy) est disponible au téléchargement sur leur wiki : https://www.olimex.com/wiki/A20-OLinuXino-MICRO. Au moment où j’écris ces lignes, la dernière version est la « release 8 ».

Avant d’insérer la carte micro-SD dans l’appareil, j’ai configuré le réseau en DHCP (je préfère affecter des baux DHCP permanents). Il suffit d’éditer le fichier /etc/network/interfaces, pour y mettre :

Une fois accessible en TCP/IP, le serveur peut être administré via SSH.

Il manque l’auto-complétion dans Bash, dont je ne sais plus me passer :

Dans la release 5,  il fallait également ajouter dans ~/.bashrc :

… mais ce n’est plus nécessaire dans la release 8

Pour être à l’heure française :

Pour renommer le serveur (qui s’appelle « a20-olimex » par défaut), il suffit de modifier les fichiers /etc/hosts et /etc/hostname

Récupération de la mémoire réservée à la carte graphique

L’appareil possède 1Go de mémoire vive. Pourtant, dans la configuration de base, 115 à 175 Mo (selon la version) sont réservés à la carte graphique.

Pour un serveur headless, ça ne sert à rien donc on peut récupérer cette mémoire. Voir https://www.olimex.com/forum/index.php?topic=2509.msg11180#msg11180

Il suffit de créer un fichier uEnv.txt dans la partition de boot.

Comme cette partition de boot n’est pas montée par défaut, je conseille de le faire en rajoutant dans /etc/fstab :

(ajuster si nécessaire le uuid : c’est celui de l’image d’Olimex. Un « blkid » vous donnera le vôtre)

puis en faisant un :

On peut ensuite créer le fichier /boot/uEnv.txt avec le contenu :

Suppression du serveur X et de tous les packages associés

Dans l’image proposée par Olimex, il y a un serveur X et quelques applications graphiques (puisqu’il y a une sortie HDMI, cela fait partie des usages possibles). Ils ne me sont d’aucune utilité en headless.

Plutôt que de supprimer les packages un par un, j’ai préféré supprimer d’un coup tout ce qui dépend du serveur X :

A faire suivre d’un :

Optimisation de la gestion des fréquences du processeur

Edité le 05/12/2014 : Les manipulations ci-dessous fonctionnaient en release 5, mais ne fonctionnent plus en release 8. En release 8, on choisit la stratégie dans le fichier /etc/default/cpufrequtils. Par défaut, c’est en mode « performance ». Après réflexion, j’ai gardé ces valeurs par défaut.

En release 5, j’avais initialement choisi la stratégie dite « ondemand ». Cf https://www.olimex.com/forum/index.php?topic=2575.0.

Pour choisir cette stratégie, il faut créer un fichier /root/tune_sunxi.sh avec le contenu :

… et l’appeler depuis /etc/rc.local, en y rajoutant la ligne suivante AVANT le « exit 0 » :

Utilisation des miroirs Debian français

C’est optionnel, mais pas la peine d’aller chercher à l’autre bout du monde ce qui se trouve pas très loin.

Remplacer le contenu de /etc/apt/sources.list par :

Et finir par installer les mises à jour :

Enjoy !

Et vous voilà avec un serveur Debian (presque) standard, avec lequel vous allez pouvoir jouer comme vous voulez :-)

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *