Lorsque l’on évoque Linux, généralement cela implique également une nécessité d’apprendre le développement, de monter en compétences sur ce système d’exploitation, et peut par conséquent faire peur. Mais cela est-il réellement justifié ? C’est ce que nous allons tenter de décrypter dans cet article.
Introduction - Qu’est-ce que Linux?
Linux est un système d’exploitation de type Unix basé sur le noyau Linux. Les systèmes Unix sont des systèmes d’exploitation multi-processeurs et multi-tâches, et ont été conçus pour être le plus stable possible, avec un niveau de sécurité élevé. Il s’agit d’un système d’exploitation gratuit (licence GNU/Linux) et open-source. Par conséquent, les utilisateurs disposent d’une très grande autonomie en termes de personnalisation et de configuration.
Il est légitime au départ de ressentir une certaine crainte avant de franchir le cap. La peur de ne pas retrouver ses logiciels, de devoir apprendre le scripting Bash ou Python, de s’y perdre parmi les différentes distributions, etc, sont autant de raisons qui peuvent freiner. Ce n’est pas un hasard si environ 75% des serveurs web utilisent Linux (selon w3techs.com), ou encore que des appareils tels que télévisions connectées, appareils de divertissement, logiciels de vol spatial, ou encore vos smartphones sous Android embarquent également ce système d’exploitation.
En bref, Linux est aujourd’hui considéré comme étant le système d’exploitation le plus sécurisé et performant.
Rapidité et fluidité d’exécution
Il est nécessaire de bien comprendre que les systèmes d’exploitations Unix, ici Linux, fonctionnent au plus près de votre architecture matérielle avec bien moins d’interfaçage comparativement à Windows. De ce fait, l’exécution des programmes et scripts est rendue beaucoup plus fluide. En termes de sécurité également, tout est beaucoup plus clair que sur d’autres systèmes d’exploitation. En effet, ici, exit les mises à jour cumulatives très gourmandes en ressources. La gestion des mises à jour de sécurité est pensée pour être la plus transparente possible.
Et pour les développeurs ?
Comme énoncé précédemment, Linux est aujourd’hui considéré comme l’un des systèmes d’exploitation le plus performant et sécurisé. Cela s’avère d’autant plus vrai pour les développeurs. Open-source et donc gratuit, Linux est un choix idéal pour développer, que ce soit en tant qu’amateur, étudiant ou professionnel. En bonus, la plupart des logiciels conçus spécifiquement pour Linux sont également gratuits. Parmi eux, on retrouve bien entendu des logiciels grand public et relativement connus, comme Obs, VLC, LibreOffice, mais également des logiciels spécifiques comme VI (éditeur de texte), ou Geary (client mail).
Il y a encore quelques années, installer Linux n’était pas à la portée de tous. À présent, avec une interface graphique intuitive, et surtout un mode opérationnel simplifié et direct, cette étape est un jeu d’enfant. Cependant, certaines distributions peuvent demander un peu plus de connaissances.
Il est très important de noter que Linux intègre un support natif pour la plupart des langages de programmation, du C au Python, en passant par Vala, Perl ou encore Javascript. Plus globalement, tant qu’un langage n’est pas limité par une architecture spécifique (tel que le .NET pour Microsoft par exemple), il fonctionnera sous Linux.
Si vous lisez cet article, vous vous intéressez sûrement au développement (ou alors êtes-vous déjà un développeur). Maîtriser Linux, ou du moins avoir quelques compétences, vous permettra également d’embellir votre CV, et par conséquent pourra augmenter votre employabilité.
Le bash
Le bash (Bourne-Again Shell) est l’interpréteur de commandes du shell Unix. Le shell permet d’accéder aux composants du système d’exploitation. Il donne ainsi accès aux éléments à l’intérieur du système. Par cet interpréteur, il est donc possible d’effectuer de simples tâches comme de la manipulation de fichiers, mais également des tâches bien plus complexes permettant d’automatiser certaines actions, ou de gérer des Cron tasks (équivalent à des tâches planifiées pour Windows)
Les distributions
Une fois qu’on se décide à franchir le pas, se pose une question primordiale : quelle distribution vais-je choisir ? D’Ubuntu à OpenSUSE, en passant par Manjaro ou encore CentOS, les distributions sont nombreuses, et il y a de quoi s’y perdre. Nous n’allons pas ici entrer dans les détails de chaque distribution, cela nécessiterait un article dédié. Pour faire court, le choix s’orienterait ainsi : si vous souhaitez une distribution qui a fait ses preuves, très populaire et avec une grosse communauté, il faut choisir sans l’ombre d’un doute Ubuntu. Si, en revanche, vous êtes à la recherche d’un écosystème très orienté autour du développement, alors Manjaro sera sûrement l’idéal. Dans tous les cas, il y a pléthore d’articles comparatifs des distributions en fonction de vos besoins sur Internet.
Comparatif
Ce serait une erreur de qualifier Linux meilleur que Windows, ou vice-versa, car ils s’adressent à une population différente et répondent aux besoins des utilisateurs de manières distinctes. Par conséquent, nous ne parlerons pas non plus de concurrence, car cela n’est pas le cas ici. Nous l’avons vu dans cet article, Linux coche donc beaucoup de cases par rapport à son homologue. Ils ne s’adressent pas à la même population et ont chacun des avantages. Voici ci-dessous un petit comparatif (non exhaustif) entre ces deux systèmes d’exploitation :
Fonctionnalités | Windows | Linux |
Tarif | Licence nécessaire | Gratuit (pour la plupart des distributions) |
Environnement graphique | Reconnu depuis toujours pour son environnement très “user-friendly” | La plupart des distributions offrent à présent des GUI. Il y a également un large choix de GUI disponibles |
Logiciels | La plupart des logiciels sont compatibles Windows (sans parler ici d’architecture) | Les logiciels doivent être compatibles, et le choix reste plus restreint |
Installation et désinstallation | L’installation se fait après récupération des installeurs (téléchargement et/ou achat du produit). La désinstallation laisse des résidus sur le système (fichiers, base de registre, etc.) | L’installation se fait automatiquement au travers d’une bibliothèque très fournie. La désinstallation supprime toute trace du produit |
Fiabilité | Bien qu’elle se soit améliorée, elle reste en rien comparable à son homologue | Connu et reconnu pour sa fiabilité |
Sécurité | Attaques, failles, Ddos, etc sont autant de risques qui doivent être corrigés par patchs de sécurité | De part sa nature, le noyau Linux est très difficilement “attaquable” |
Rapidité | Bien que généralement fluide, le système s'alourdit au fil du temps et de l’utilisation | Très fluide de manière générale |
Mises à jour | Tous les second mardis de chaque mois. Voire de manière plus fréquente pour corriger certaines failles de sécurité | Les utilisateurs ont un contrôle total sur les mises à jour disponibles, nécessaires, expérimentales, etc. |
Loisirs | Les jeux sont quasiment tous compatibles, et l’offre est gigantesque. Avec les différentes possibilités d'accélération matérielle, Windows est le choix le plus adéquat pour les joueurs | De plus en plus de jeux sont compatibles Linux (notamment une grande partie de la bibliothèque Steam), mais l’offre de divertissement est bien moins aboutie |
Cibles | Il a été pensé pour convenir au plus grand nombre. C’est le système d’exploitation de choix pour les utilisateurs débutant ou expert, que ce soit pour un usage personnel (en particulier pour les jeux) ou professionnel | Des connaissances plus abouties peuvent s’avérer nécessaires pour l’utilisation de Linux. Cependant, il est le système idéal pour développeurs, ou plus généralement les utilisateurs dont l’informatique est leur quotidien |
Conclusion
Comme nous avons pu le voir au long de cet article, Linux est donc le système d’exploitation idéal pour le développement. Contrairement aux idées reçues, la montée en compétence et l’apprentissage de ce système d’exploitation ne demande plus autant d’investissement qu’auparavant, dans la mesure où les distributions sont de plus en plus « user friendly ».
Cependant, la personnalisation, et ce qu’il est possible d’obtenir de Linux moyennant de l’investissement, peut être bien plus poussé que Windows par exemple.
Enfin, si vous n’arrivez pas à faire un choix décisif, il est important de noter que Linux propose nativement de s’installer en parallèle de votre installation Windows. Cela se matérialisera par un choix au démarrage de votre ordinateur, entre la partition Windows ou la partition Linux, et cela n’affectera en aucun cas vos données déjà présentes.
Si vous souhaitez apprendre à maîtriser le système d’exploitation Linux, découvrez notre formation Data Engineer !