
Linux
Présentation
Linux est un système d’exploitation libre et gratuit basé sur le noyau Linux. Il est connu pour sa stabilité, sa sécurité et sa flexibilité. Il est utilisé dans de nombreux domaines, des systèmes embarqués aux superordinateurs en passant par les serveurs. Il n’est donc pas étonnant qu’il soit largement utilisé en développement et en administration de systèmes.
En entreprise, il est souvent utilisé pour sa légèreté en plus des points évoqués ci-dessus. En effet, il est plus simple, moins cher et plus approprié d’installer un Raspberry Pi qu’un Windows lorsque tout ce qu’il faut est afficher une interface web montrant des statistiques.
La popularité du système d’exploitation ne semble pas cesser d’augmenter. S’il est difficile d’imaginer qu’un jour Linux deviendra le système le plus utilisé en tant qu’ordinateur personnel, ce système est déjà le plus répandu en entreprise.
Pour rendre cela plus concret, quelques chiffres :
- 85 % des smartphones fonctionnent sous Linux
- 96,3 % des 1 000 000 serveurs Web les plus fréquentés utilisent Linux
- 13,6 % des serveurs tournent sous Linux
Plus de données peuvent êtres trouvées dans cet article : https://www.enterpriseappstoday.com/stats/linux-statistics.html.
De plus, avec la montée de la virtualisation et de la conteneurisation (voir la compétence Docker), des milliards de micro instances de Linux sont utilisées chaque jour par de grands groupes tels que Google, Amazon ou Microsoft.
Mon expérience
Dans le domaine de l’informatique, il est important d’avoir une expérience de Linux. Comme dit au début de l’article, c’est le système majeur utilisé en entreprise pour le développement et déploiement d’applications. Je n’ai pas besoin d’avoir une connaissance exhaustive de l’OS, mais je dois impérativement être capable de me débrouiller pour mes cas d’utilisations. Principalement, le développement web et l’automatisation de scripts.
Un projet bien marquant où j’ai utilisé Linux est le Liveboard (voir l’article). Chez un de nos clients, nous devions installer des affichages en temps réels d’une page web sur des téléviseurs non connectés à internet. Il fallait mettre un ordinateur connecté à chaque télévision. Pour réduire le coût, nous avons pris des Raspberry Pi. Le serveur web étant installé sur une machine à part.
Ensuite, ces contrôleurs devaient automatiquement démarrer un service pour afficher la page web voulue en grand écran. On a donc ajouté un script qui ouvre le navigateur sur la page voulue et un service pour démarrer ce script.
#!/usr/bin/env sh
xset s noblank
xset s off
xset -dpms
unclutter -idle 1.0 -root &
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' /home/pi/.config/chromium/Default/Preferences
sed -i 's/"exit_type":"Crashed"/"exit_type":"Normal"/' /home/pi/.config/chromium/Default/Preferences
/usr/bin/chromium-browser --noerrdialogs --disable-infobars --kiosk http://localhost:8080[Unit]
Description=Liveboard Kiosk Mode
Wants=graphical.target
After=graphical.target
[Service]
Environment=XAUTHORITY=/home/pi/.Xauthority
Environment=DISPLAY=:0.0
Type=simple
ExecStart=/usr/bin/liveboard-kiosk
Restart=on-abort
User=pi
Group=pi
[Install]
WantedBy=graphical.targetEnfin, nous avons sécurisé l’application en n’ouvrant que les ports nécessaires à cette connexion web et à la maintenance des services. En fortifiant les règles de gestion du réseau et en paramétrant l’ordinateur avec les commandes natives du Raspberry Pi, ce n’était pas un problème.
Voilà comment nous avons pu installer notre solution en nous adaptant à l’utilisation sur écran télévisé grâce à Linux.
Autocritique
J’utilise fréquemment Linux et suis capable d’installer et maintenir des serveurs web avec différents services (DNS, logs, SSH, mail) mais je n’ai pas une longue expérience dans le domaine et trouve encore difficiles certaines opérations de configuration du système. J’ai également besoin d’apprendre la gestion de micro contrôleurs en Linux “pur”, donc sans applications ajoutées.
Cela fait 2 ans que j’utilise Linux au sein de mon entreprise, n’ayant pour expérience préalable que l’allumage d’Ubuntu en “découverte” pour ma formation. Depuis, j’ai continué d’apprendre à utiliser ce système et je l’utilise maintenant tous les jours avec autant d’aisance que Windows.
Avec le recul, si c’était à refaire, j’aurais demandé une formation ou avoir un superviseur pour me guider.
Pour m’améliorer, je vais essayer de suivre Linux From Scratch afin de me familiariser avec le cœur derrière le fonctionnement de Linux. Je vais aussi essayer d’utiliser la distribution Gentoo qui demande de plus amples connaissances pour paramétrer correctement.