C'est quoi LINUX ?

Pour la petite histoire : « Linux » signifie « LINUs' uniX ». C'est un projet de système d'exploitation (SE) lancé en 1991 par Linus Torvalds, alors étudiant (finlandais) en informatique.

________________________________________________________________

Qu'est-ce qu'un SE ?

C'est un logiciel / groupe de logiciels qui assure véritablement l'interaction utilisateur/matériel (écran, clavier, disque dur, etc.).
C'est en quelque sorte le moteur du système ; exemple : quand, avec un traitement de texte, vous voulez stocker votre document, en fait le traitement de texte fait appel au SE pour cela.

Exemples de systèmes d'exploitations : 
•liés à une architecture : AmigaOS, MacOS, RiscOS, PalmOS, Windows (destiné aux ordinateurs de type PC)
•multiplateforme : *BSD, les SE de type UNIX dont Linux ; on en reparlera plus tard, le fait que Linux soit un UNIX est important. Remarque : MacOS X en est un aussi ...

On peut remarquer qu'il n'est pas évident de définir précisément cette notion de SE : un logiciel de gravure de CD-Rom est-il une partie du système d'exploitation proprement dit ?

Linux : une approche différente

Linux est un SE dont il existe des versions adaptées à de nombreux types d'ordinateurs (à ma connaissance 11), dont le type PC. C'est un logiciel libre (cf. plus bas).
En tant qu'unix, Linux se doit de respecter un certain nombre de normes informatiques (POSIX) assurant un bon niveau de sécurité, une adaptation aisée d'un logiciel d'un unix à un autre (« portage »), etc. 
Un utilisateur de Linux sur PC pourra donc, sans difficulté, utiliser Linux (et les logiciels qui tournent sous Linux) sur un Mac, une station SPARC, Alpha, ...

C'est un système multi-utilisateurs / multi-tâches par construction, qui sait donc gérer proprement le fait de faire tourner plusieurs logiciels en même temps, avec plusieurs personnes connectées en même temps.
Il est donc, par exemple, tout indiqué pour des fonctionnements en réseau.

Enfin, les UNIX sont très répandus dans le monde universitaire et professionnel : ce point aura son importance un peu plus tard.

En tant que tel, Linux s'inscrit dans la lignée de systèmes d'exploitation existant depuis le début des années 1970.
Linux évolue sur le mode communautaire, et chacun peut, en fonction de ses compétences, y contribuer : écrire des bouts de programmes, traduires des pages de manuel, tester des versions non encore abouties pour traquer les erreurs, etc.
Les évolutions sont toujours le fruit d'un besoin : rectifier des erreurs, ajouter une fonctionnalité à un logiciel, utiliser du matériel nouveau, automatiser certaines tâches qui ne l'étaient pas, appliquer des découvertes théoriques récentes, etc.

C'est quoi une distribution ?

Une distribution Linux est un ensemble structuré de logiciels, organisé de manière cohérente autour d'une version du noyau Linux, et qui comprend d'emblée de quoi utiliser correctement son ordinateur.
Dans une distribution, on trouvera donc rassemblés non seulement le noyau Linux lui-même, mais aussi l'essentiel des logiciels les plus utiles : traitements de textes, tableurs, navigateurs Web, logiciels multimédias, langages de programmation, ... qui autrement seraient éparpillés à travers le vaste monde.

On comprend alors qu'il existe plusieurs distributions Linux : en effet, les différents logiciels proposés ne proviennent pas tous de la même source, il existe plusieurs choix de logiciels pour un même type (traitement de texte, navigateur Web, etc.), différentes versions d'un même logiciel (de la plus éprouvée à la plus récente).

D'ailleurs, cela permet aussi de continuer à réellement faire jouer la concurrence : plusieurs possibilités pour aller sur le Web (mozilla, Galeon, Konqueror), plusieurs logiciels de mail (Qmail, Postfix), plusieurs bureaux virtuels différents (KDE et Gnome étant les plus répandus), etc. 

Une distribution va donc être le résultat de choix faits par des sociétés spécialisées, des particuliers compétents ou des communautés d'utilisateurs, qui auront pris la peine de s'assurer de la compatibilité des différents versions qui cohabitent, et de créer des petits outils spécifiques pour encore mieux homogénéiser l'ensemble, faciliter les installations de logiciels ou leurs mises à jour, etc.

De plus, Linux peut tourner sur différents types d'ordinateurs : là aussi, il faut des distributions adaptées.

Citons : Mandrake (soc. Mandrakesoft), SuSE (soc. SuSE GmbH, rachetée par Novell), Fedora (version communautaire de Red Hat), Slackware (Patrick Volkerding), Debian (équipe Debian).
Mandrake, SuSE ou Red Hat (version commerciale) sont par exemple des distributions commerciales, Debian ou Fedora sont des distributions communautaires.

__________________________________________________________________

C'est quoi le logiciel libre ?

Un logiciel n'est compréhensible par un ordinateur que sous forme de « 0 » et de « 1 » successifs : c'est le langage binaire.
En revanche, un humain va écrire un logiciel dans un langage de programmation suffisamment proche d'un langage au sens courant pour qu'on s'en sorte.
C'est cette version « originale », écrite dans un langage de programmation, qu'on appelle « code source » du logiciel en question. Ce code source sera ensuite « traduit » (on dit « compilé ») pour être exécutable par l'ordinateur.

Un logiciel est dit libre si on peut le diffuser, si on a accès a son code source et qu'on peut modifier celui-ci, et si la version ainsi modifiée reste libre.

Les logiciels libres se présentent le plus souvent sous une licence appelée « GPL » (General Public License) qui assure que les points précédents sont bien remplis.
D'autres licences libres, certaines moins directement dérivées de la philosophie juridique anglo-saxonne, existent ou se développent (voir par exemple : http://www.inria.fr/actualites/inedit/inedit47_actu.fr.html )

En revanche, un logiciel libre n'est pas forcément gratuit, même s'il l'est le plus souvent.

Sachez qu'il existe des logiciels libres qui tournent sous Windows (OpenOffice, mozilla, ...) ; voir le site 
http://gnuwin.epfl.ch

De même, il existe des logiciels propriétaires sous Linux ...

La problématique des brevets logiciels 

Sans entrer dans de longs développements techniques, sachez qu'actuellement se déroule une bataille acharnée autour de cette notion au niveau du Parlement et du Conseil Européen.

L'idée serait de rendre brevetable un logiciel, c'est-à-dire un procédé, un algorithme, bref, une idée.

Si on compare un logiciel à un roman par exemple, autoriser les brevets logiciels reviendrait à autoriser de breveter le discours indirect en tant que technique grammaticale ou le fait de prendre un renard comme personnage symbolisant la ruse.

Il est évident que de tels brevets seraient un coup extrêmement rude pour les logiciels libres : on ne pourrait plus rien écrire soi-même sans risque de « réinventer » ce qu'un autre aura déjà breveté ...

Dernier développement en date : Le 7 mars 2005, la présidence du Conseil a déclaré que l’accord sur les brevets logiciels du 18 mai 2004 était adopté, ceci en violation du règlement intérieur, malgré le manque manifeste d’une majorité qualifiée des États membres et en dépit de demandes de plusieurs pays de rouvrir les négociations.

Ceux que cette problématique intéresse peuvent par exmple suivre cela sur le site de la FFII :
http://www.ffii.fr

________________________________________________________________________________
Avantages des logiciels libres pour un particulier ou pour une association

D'abord : l'entraide. Il est dans la culture du libre de ne pas garder ses astuces pour soi ; en partageant sans attendre forcément de retour immédiat, en sait pouvoir compter en cas de besoin sur la réactivité de la communauté.

Aussi : la sécurité. Pas de virus au sens « classique » sous Linux ! Donc pas d'antivirus onéreux à mettre à jour, etc. 
Certes, il existe des logiciels malveillants sous Linux, mais il s'agit souvent de petits programmes qui tablent plutôt sur la naïveté ou l'imprudence éventuelle d'un utilisateur, ou qui exploitent l'une ou l'autre rare faille de sécurité (vite comblée dans ce cas de figure).

Exemples : les logiciels de type « Cheval de Troie », qui essaient de se faire passer pour ce qu'ils ne sont pas, et de profiter de la confiance un peu imprudente de certains utilisateurs. Mais là intervient le fait que Linux est un Unix, donc n'importe qui, même en usurpant une identité, ne peut pas faire n'importe quoi.
La structure saine d'un unix comme Linux en termes de sécurité le met aussi mieux à l'abri des logiciels espion (« spywares »), qui sont destinés à fouiller à votre insu sur votre ordinateur (sans causer de dommages) ou à en surveiller l'activité pour communiquer des infos (via Internet) à des gens que ça intéresse ... dans le meilleur des cas, à des fins de marketing, souvent pire.

Sécurité encore (association plus particulièrement) : la structuration de Linux en tant que SE multi-utilisateurs impose une hiérarchie cohérente et claire des accès au système, des permissions accordées aux utilisateurs (internes ou externes), etc.

Sécurité enfin, côté matériel  (cas réel existant : école primaire dans le coin de Toulouse) : un réseau organisé autour d'UN SEUL ordinateur raisonnablement puissant, auquel on connecte des couples claviers/écrans. Avantage : pas d'intervention physique des utilisateurs de base sur certaines parties sensibles du matériel (périphériques installés sur l'ordinateur central lui-même), meilleur contrôle et gestion du réseau.

Stabilité des logiciels : 
Pour fixer les idées, disons qu'un système Linux est difficile à planter de manière irrécupérable : sachez qu'il existe des ordinateurs tournant chez des particuliers sous Linux de manière ininterromue depuis des ... années !
Bref : si vous voulez créer et héberger un site Web, Linux s'impose.

De manière générale, les logiciels libres « plantent » très peu. En effet, leur mode de développement fait que des erreurs ne restent pas longtemps cachées, et qu'aussitôt l'un ou l'autre membre de la communauté se met en tête de la rectifier, sachant que tout un chacun en a la possibilité et le droit.

La proportion de personnes qui vont contribuer à traquer et surtout à effectivement rectifier les erreurs est largement favorable : pas d'effet d'engorgement des programmeurs, donc peu d'erreurs qui passent inaperçues ou ne peuvent pas être rectifiées.

L'indépendance : Si vous n'êtes plus satisfait d'un partenaire informatique, vous pouvez, avec un logiciel libre, prendre votre code source sous le bras et aller vous adresser à un concurrent : vous n'êtes pas lié à votre « fournisseur ».

La pérennité : Symétriquement, si vous utilisez un logiciel propriétaire dont l'éditeur a décidé d'arrêter le développement ou, pire, met la clé sous le paillasson, c'est fini : le logiciel est figé et ne peut plus s'adapter aux évolutions techniques.
Avec un logiciel libre, on peut toujours en revenir au code source, et repartir de là avec d'autres interlocuteurs, pour faire évoluer le produit.

En tant qu'UNIX, Linux ouvre la porte à toute une famille de logiciels et de développeurs, issus du monde universitaire et professionnel : on ne manque pas d'interlocuteurs compétents.

Enfin : le prix. Si ce n'est totalement gratuit, ça reste modique. Cependant, attention à ne pas sous-estimer le travail, bien réel, fourni en amont et qui ne se reflète pas dans les prix, ou qui s'y reflète au plus juste.

________________________________________________________________________________

Les formats de fichiers ouverts :

Dans un même logique d'indépendance, il apparaît comme cohérent d'utiliser des formats de fichiers qui ne sont pas liés à un logiciel particulier.
Le cas le plus connu : les fichiers Word, au format « .doc »
De tels formats enferment en quelque sorte les données dans une boîte dont seul un logiciel précis a la clé. 
Certes, certains logiciels libres sont capables de comprendre de tels formats, mais il s'agit d'un pis-aller. D'ailleurs, il est même discutable de recourir à un format qui serait lui-même spécifique à un logiciel libre (cf. Abiword).

Le mieux est donc d'utiliser des formats ouverts, standardisés, documentés ; exemples : le « Rich Text Format » (RTF) pour les textes mis en page, le MPEG pour les vidéos et JPEG pour les images, le OGG pour le son, le HTML « propre » pour des pages Web, etc.

En passant, signalons que la courtoisie dans les échanges de mails voudrait qu'un fichier joint le soit dans un format ouvert, justement, afin de ne pas forcer le destinataire à utiliser un logiciel ou un autre.