Linux 1

Linux, sa communauté et sa philosphie de développement


Linus et le système Minix


En 1989, un étudiant américain du nom de Andrew S. Tannenbaum, trouve que le système proposé sur son ordinateur muni d'un processeur de la famille i386 ne lui convient pas tout à fait. Il s'attèle à une tâche ardue puisqu'il se met à écrire son propre système. Un an plus tard, il sort la version 1.1 de son système qu'il appela Minix. C'est un système à vocation éducative, accessible pour un étudiant. Mais très rapidement Andrew tannenbaum s'essouffle ; il n'a pas que ça à faire et puis il tout seul.


En 1991, le jeune finlandais Linus Torvalds est étudiant en informatique à l'université d'Helsinki. Il utilise Minix sur son ordinateur tout neuf. Il est convaincu que l'informatique doit être pour l'utilisateur un moyen de gagner du temps, un outil et non une contrainte. En dehors des systèmes qu'il peut utiliser sur les serveurs de son université, il trouve que tous les systèmes (y compris Minix) auxquels il a accès pour sa machine personnelle sont soit trop cûteux, soit trop peu efficaces. Le système Minix qu'il a installé sur son ordinateur doté d'un processeur 386 s'avère trop limité pour lui. En conséquence, il décide d'écrire lui-même un système d'exploitation qui le satisfasse. Pour cela, il se fonde sur le système d'exploitation Minix.


Au mois d'août 1991 est né Linux, linus'Unix, L'Unix de Linus dans sa version 0.0.1. Cette version n'était même pas exécutable. L'archive ne contenait que les rudiments des sources du noyau et il fallait compiler Linux sous Minix pour l'utiliser un tant soit peu.

Le 5 octobre 1991, Linux devient autonome lors de la sortie officielle de la version 0.0.2. Celle-ci permet de faire tourner quelques applications GNU (logiciels libres) essentielles comme le compilateur gcc ou le shell bash. Mais Linus Torvalds réalise très bien que réitérer l'expérience d'Andrew Tannenbaum sur Minix n'est pas viable. Il se convainc qu'il faut répartir la tâche de développement, trouver des collaborateurs et étendre ce projet à un cercle le plus large possible. Pourquoi pas la planète ? A cette époque où la guerre froide vient de se terminer, l'Internet commence à envahir les universités et amorce l'explosion que nous connaissons. Linus Torvalds en profite pour lancer un appel qui est resté célèbre, sur le forum comp.os.minix et décide de mettre le code source sous licence GPL de telle sorte que tout le monde peut alors participer au développement de Linux.


Voici le texte de l'appel de Linus :


« Vous regrettez les beaux jours de Minix 1.1, époque où les hommes étaient des hommes et écrivaient leurs propres pilotes de périphériques ? Vous manquez d'un superbe projet et vous vous languissez d'un système que vous pourrez modifier à votre convenance ? Vous êtes frustrés que tout fonctionne doud Minix ? Plus de nuits blanches passées à tenter de faire fonctionner un périphérique récalcitrant ? Alors ce message pourrait bien être pour vous. Comme signalé il y a un mois, je travaille actuellement sur une version libre et gratuite d'un système ressemblant à Minix pour les ordinateurs AT-386. J'ai finalement atteint un stade où il est utilisable (bien qu'il puisse ne pas l'être pour vous, cela dépend de ce que vous recherchez) et je compte soumettre les sources à une diffusion plus large. Il s'agit juste de la version 0.0.2 ... mais j'ai pu exécuter bash, gcc, gnu-make, compress, etc, avec succès sur mon système. »


Définition de Linux


Sur la première page des livraisons régulières de la revue « Linux Magazine France », on peut trouver une bande rectangulaire portant en titre la question « Qu'est-ce que Linux », avec en bas la réponse qui suit :


« Linux est un système d'exploitation multiutilisateur et multitâche qui peut être installé sur plusieurs plate-formes différentes (Intel, Apple, DEC, Sparc, etc.).


Il est conforme à la norme POSIX et peut fonctionner sans problème avec d'autres systèmes d'exploitation comme Apple, Microsoft et Novell.


Le système d'exploitation Linux est libre. Il peut être copié et redistribué gratuitement. Le code source est également disponible pour tous de la même manière. »


La communauté Linux


L'appel de Linus provoqua la formation spontanée d'une communauté qui compte aujourd'hui environ 3000 développeurs (programmeurs) du noyau et 10 millions d'utilisateurs d'après les estimations de différents cabinets d'études. La communauté Linux comprend donc l'ensemble des développeurs, pas seulement du noyau d'ailleurs, et les utilisateurs. Ils mettent à profit l'internet pour tisser des liens et promouvoir une entraide à tous les niveaux. Cette dernière reste une des sources principales de résolution des problèmes techniques, et ce, même pour les informaticiens confirmés. Les informations techniques ou non sont partagées par de nombreux moyens tels que les forums de discussion, les sites spécialisés ou les sites CVS destinés aux développeurs. Aussi de nombreuses associations se sont créées pour regrouper les enthousiastes et faire connaître Linux au plus grand nombre en organisant diverses manifestations. En France ce rôle est assuré par les LUGs 5Linux Users Groups) et quelques associations dont bien sûr l'ANFA.


Le terme de communauté provient de cette collaboration entre développeurs et utilisateurs dans le monde Linux.


La communauté des développeurs de Linux, répartie à travers le monde, développe de nombreux logiciels au sein de projets tout aussi nombreux. Certains de ces projets ont pris une ampleur mondiale qui ferait pâlir d'envie de gran,des multinationales. Les principaux, ou du moins les plus médiatiques, sont le noyau lui-même, bien sûr, mais aussi deux projets de « bureaux », KDE et GNOME, et de nombreux projets de développement de solutions de clusters, de haute disponibilité, ...


Cette communauté Linux présente deux caractéristiques qu'il faut souligner :


  1. La plupart des membres de cette communauté ont en commun une certaine culture informatique qui n'est pas nécessairement une compétence particulière mais surtout un état d'esprit. Plutôt que de se plaindre que « ça ne marche pas », le linuxien tente généralement de découvrir l'origine du problème, et, dans la mesure du possible, de le résoudre par lui-même.

  2. La coopération comme base de la communauté. Sur Internet, on peut trouver aisément la solution à la plupart des problèmes courants rencontés sous Linux. En contrepartie, on attend la même démarche des nouveaux utilisateurs. Une fois un problème résolu, il peut être utile de faire profiter la communauté en publiant la solution sur une page Web, par exemple.


Logiciel libre et le GPL


On qualifie de libre un logiciel qui répond aux principaux critères suivants :

  • il est livré avec ses sources, qu'il est possible de modifier ;

  • il est possible de le redistribuer sans contrainte ;

  • il est possible de distribuer les modifications que l'on a faites. Ce type de diffusion n'interdissant pas la commercialisation.



La tradition du logiciel libre remonte aux sources de l'informatique. Développés principalement en milieu universitaire, les logiciels étaient fréquemment échangés et améliorés entre laboratoires.


Au début des années 80, Richard Stallman , alors professeur au M.I.T, le célèbre Massachusetts Institut of Technologie, s'est vu refuser l'accès au code d'un programme. Il prit conscience du risque de la propriétarisation des logiciels. Il affirme qu' »il n'est pas normal que lorsqu'on utilise un logiciel, on ne puisse pas savoir ce qu'il y a dedans ». En effet, les logiciels commerciaux sont alors livrés uniquement en format exécutable ; ils sont donc illisibles par le commun des mortels, ou du moins des programmeurs. Le risque est que ces logiciels soient développés avec un piètre souci d'optimisation ou, pire, qu'ils contiennent des bouts de codes mal intentionnés qui pourraient mettre en danger la machine ou le réseau sur lesquels ces logiciels s'exécutent. Sans compter que si l'éditeur du logiciel disparaît pour une raison ou une autre, l'utilisateur n'a plus accès au code source du programme.


L'idée de Stallman l'amènera rapidement à la création d'une fondation appelée la Free Software Foundation (FSF), comprendre Fondation pour le logiciel libre. Le fait que les anglophones désignent libre et gratuit par le même terme « free » recèle un risque de confusion entre les deux termes et contient les germes de difficulté futur. D'ailleurs Richard Stallman a certainement pressenti cette difficulté et a fait en sorte que le premier travail de la FSF a été de produire une licence parfaitement adaptée au logiciel Libre : il s'agit de la GPL (General Public Licence, ou Licence Publique Générale). En 1984 il initialise le projet GNU (prononcer gnou). Ce terme est un acronyme récursif qui signifie GNU is Not Unix. L'objectif du projet consiste à créer une version libre de la plupart des outils que l'on trouve courramment sur les systèmes Unix. C'est une suite logique de la pensée de M. Stallman : les logiciels libres étant librement reproductibles, modifiables et distribuables par qui que ce soit, rassemblons-les pour former un Système d'exploitation libre lui aussi et rendre ainsi leur liberté à tous les utilisateurs et développeurs de l'informatique. M. Stallman a lui-même contribué au projet GNU par ses proprements développements, en apportant des logiciels comme le compilateur C/C++ le plus répandu sur la planète, GCC (Gnu C Compiler), le débogueur GDB (Gnu Syumbolic Debugger), Emacs, célèbre éditeur de texte pour lequel il a reçu le prix Grace Hopper en 1991.


La GPL, la licence des produits GNU est une licence libre. Elle ajoute une contrainte particulière : elle autorise l'utilisation d'un programme GPL à l'intérieur d'un autre programme, à la condition que celui-ci soit distribué sous licence GPL. Elle garantit ainsi la non-propriétarisation des logiciels. Le hasard et la nécessité se rencontrent : Linus Torvalds a adopté la GPL pour son noyau Linux, de même qu'il a recupéré l'ensemble des programmes développés par le projet GNU pour fournir une base d'applications pour le système d'exploitation fiable que nous connaissons et qu'il est plus exact de désigner par GNU/Linux.


Les différentes licences d'utilisation des logiciels


Pour mieux saisir la portée de la licence GPL, analysons rapidement les autres licences et on se rend compte du contraste saisissant.

Tout usage d'un logiciel doit s'accompagner de l'acquisition d'une licence d'utilisation. Il s'agit d'un contrat précisant la manière dont vous aurez le droit d'utiliser ce logiciel. On peut classer les logiciels en plusieurs catégories en fonctions du degré de liberté que procure la licence d'utilisation. C'est ainsi que l'on distingue :

  • Les logiciels propriétaires. Il s'accompagnent de licences qui n'autorisent que l'utilisation, généralement assortie de restrictions (limitation d'usage à un nombre donné d'utilisateurs, installation restreinte à un ordinateur, etc).

  • Les partagiciels (sharewares) et les gratuiciels (freewares). Il s'agit de logiciels propriétaires mais ... Les partagiciels sont distribués gratuitement, charge à l'utilisateur de s'acquitter de son prix s'il continue à l'utiliser après une période définie. Les gratuiciels sont des logiciels dont le prix est nul.


Quelques aspects importants de l'économie du logiciel libre


La diffusion de logiciels sous licence GPL n'interdit pas stricto sensu leur vente. En revanche, puisqu'il est possible de les rediffuser à loisir, vous comprendrez que leur rentabilité ne puisse reposer sur l'ancien modèle économique. L'étude de l'économie du logiciel libre sort du cadre de ce manuel. Des thèses universitaires se sont penchés sur la question. C'est dire que ce n'est pas un sujet trivial. Soulignons tout simplement les aspects importants suivants :


  • La vente de service

Les éditeurs de produits GPL réalisent généralement une plus-value importante sur les services et les produits dérivés commercialisés en même temps qu'un logiciel libre. Le support technique est un exemple de service important pour tout entreprise utilisatrice de Logiciels libres. La documentation qui accompagne la plupart des distributions de Linux est un exemple de produit dérivé.

  • Le développeement universitaire

Les universités constituent les berceaux d'un grand nombre de projets développés sous licence libre. C'est le cas de Linux. L'esprit qui anime le développement libre est très proche de l'esprit universitaire de partage des connaissances, d'examen des publications par l'ensemble de la communauté. De plus la publication de logiciels libres permet de rendre un service public, une des vocations de l'administration.

  • La notoriété

Une motivation non négligeable qui pousse au développement d'un logiciel libre est la recherchje de notoriété. Il est assez grisant de savoir que son travail profite à des milliers d'utilisateurs dans le monde, et cela suffit pour motiver un grand nombre de personnes. Cette notoriété peut aussi constituer un atout pour la recherche d'emploi, et ce d'autant plus que chacun peut examiner le code des programmes. Lorsqu'un programmeur peut montrer ce qu'il a développé, il lui est plus facile de faire la démonstration de sa compétence.

  • Les avantages du LL pour l'utilisateur

* Facilité et rapidité de correction. Grâce à la publication du code source (briques constitutives d'un programme, son secret de fabrication), un grand nombre de développeurs peuvent corriger facilement et rapidement (parfois dans un délai de quelques heures, après l'apparition d'un bogue) le programme en cas de problème.

* Pérennité du programme. La disponibilité du code source permet à d'autres de reprendre le développement si l'auteur original se désintéresse du projet.

* La grande diffusion des LL. La liberté de redistribuer les LL rend accessible un grand nombre d'outils aux particuliers. Les LL étant en général diffusés gracieusement sur Internet, l'utilisateur peut disposer d'un large éventail d'applications.

Caractéristiques de Linux et des distributions Linux


Caractéristiques de Linux


La sécurité

La sécurité est nécessaire pour protéger les données des utilisateurs mais aussi pour éviter de servir de point de départ à une attaque sur internet. En effet la sécurité prend une importance grandissante tout particulièrement pour les système qui sont amenés à être reliés au réseau internet. L'expérience a montré par exemple que le pirate précautionneux n'attaque jamais directement sa cible depuis sa machine ; cela permettrait de remonter jusqu'à lui sans trop de difficultés. En piratant au préalable une machine peu défendue, celle d'un particulier en général, le pirate peut brouiller les pistes, causant en fait des ennuis à sa victime. Autre phénomène qui prend de l'ampleur : la propagation rapide des virus qui apparaissent à l'air de l'internet.

Linux offre de bonnes garanties de sécurité. D'abord il est conçu dès le départ pour fonctionner en réseau. Ensuite il profite de son mode de développement. Tous les développeurs intéressés peuvent examiner le logiciel. Par conséquent, il y a plus de chances qu'un oeil averti découvre un bogue potentiellement exploitable. Une fois un problème diagnostiqué, il n'est pas nécessaire d'attendre la publication d'un correctif par l'éditeur original du logiciel. Les chances sont très grandes qu'un développeur membre de la communauté le corrige rapidement si ce n'est le responsable du projet ou de son équipe.

Fiabilité et stabilité

Un effort particulier a été fait lors du développement de linux pour s'assurer que le système soit fiable et stable :
- Les applications sont cloisonnées et ne peuvent faire planter le système entier ;
- Linux est conçu pour des serveurs devant fonctionner des mois durant ;
- les bogues découverts sont corrigés très rapidement.

Simplicité

De grands progrès ont été réalisés ces dernières années pour rendre le système accessible à tous.
L'abondance de la documentation permet à tous de résoudre la plupart des problèmes les plus courants ;
La grande similarité de principes entre la plupart des composants du système facilite la tâche de compréhension des bases du système. Il suffit pour tirer pleinement profit du système, de passer un peu de temps pour comprendre ces bases.
Avec une bonne configuration, Linux se révèle plus simple que la plupart des autres SE dans le cadre de la maintenance quotidienne. D'où un gain de temps appréciable.
Sa conception multi-utilisateur rend possible et même facilite la mise en place d'un environnement distinct pour chacune des personnes amenées à utiliser la machine. Cet environnement peut être personnalisé, empêchant un utilisateur d'accéder aux données des autres. C'est d'ailleurs par défaut le cas.

Les distributions Linux


Pourquoi les distributions

L'abondance des applications disponibles et multiplicité des programmes ayant les mêmes objectifs c'est-à-dire disponibles pour répondre à un même besoin, pose un problème de choix pour l'utilisateur lambda;
L'expérience l'a montré depuis longtemps : compte tenu du nombre impressionnant d'applications que l'on peut être amené à installer sur une machine, il faut absolument disposer d'un outil d'installation et de gestion de ces applications ; d'où la nécessité d'un tel outil d'installation ;
Enfin, faciliter la prise en main pour les débutants (mais aussi pour de nombreux utilisateurs non débutants) doit être une préoccupation des éditeurs et de la communauté. D'où l'importance des manuel s d'installation, et autres outils de configuration du système.

Notion de distribution
Les distributions sont des ensembles logiciels contenant le système linux, une interface graphique - contrairement à Ms-Windows, l'interface graphique est dissociée du reste du système - et un ensemble de programmes. En général elles disposent aussi d'un outil de gestion des applications installées (comme InstallShield sous Ms-Windows, mais en plus riche) et d'autres outils de configuration du système, plus orientés débutant que les méthodes de configuration traditionnelle qui s'adressent principalement aux administrateurs.

Plusieurs éditeurs de logiciels ont décidé de distribuer de tels ensembles afin de faciliter le travail de choix.


Les distributions majeures Linux

Dans la mesure où les logiciels libres peuvent être distribués à volonté, il est relativement facile de créer une nouvelle distribution, en reprenant le travail réalisé par autrui et en l'améliorant. Résultat : il existe un grand nombre de distributions dont certaines ne répondent qu'à un besoin très pointu et spécifique. Nous passons ici en revue les distributions majeurs les plus diffusées en Europe.
  • La distribution Slackware
C'est l'ancêtre des distributions Linux. Pionnier dans ce domaine, la société Slackware commercialisa une distribution Linux contenue sur une centaine de disquettes (le cédérom n'étant pas aussi répandu que de nos jours.
Compte tenu de son âge, cette distribution ne disposait pas d'interfaces conviviales de configuration du système et de ce fait s'adresse à des utilisateurs expérimentés.
De plus sa méthode de gestion des paquets s'appuye sur les fichiers archives compressés (tar.gz) est très sommaire.
  • La distribution Redhat
Considérée par certains comme la référence professionnelle, l'apparition de cette distribution a constitué un événement marquant dans le monde Linux.
Elle intègre un système complexe de gestion d'applications qui permet la mise à jour d'une application tout en en conservant les fichiers de configuration et qui gère les dépendances. Une dépendance est le fait qu'une application ait besoin d'une autre, ou d'une bibliothèque pour fonctionner. Ce système -Redhat Package Manager (rpm) -peut donc installer automatique tous les éléments logiciels requis pour faire fonctionner une application.
  • La distribution Suse
Diffusée par la société allemande SuSE GmbH créée en 1992, la première version de cette distribution sortira en 1993 sur disquettes et était basée sur la distribution Slackware. Depuis elle a beaucoup évolué. Techniquement très proche de la Redhat, elle est basée sur le même type de packages : RPM. Mais elle se différentie essentiellement par le programme d'installation basé sur l'outil YAST et son utilitaire SaX de configuration de l'interface graphique.
YAST - Yet Another Setu Tool - est un puissant outil d'installation et de configuration disposant des carctéristiques suivants :
  • peut être lancé après l'installation ;
  • prend en charge une bonne partie de la configuration de la machine dont l'installation du réseau (config de base, NFS, ISDN, Samba, ...) grâce à une détection hardware et un partitionnement automatiques ;
  • permet d'effectuer des mises à jour et des sauvegardes ;
  • dispose d'une fonction intégrée de gestion des utilisateurs et des groupes ;
  • permet une compilation et une personnalisation du noyau ;
SaX - SuSE Advanced X-Configuration - est l'utilitaire d'installation et de configuration du serveur Xwindow (l'interface graphique).
Seul bémol à tout ce qui précède : SuSE a développé certains outils non GPL.

  • La distribution Debian
La distribution Debian est la seule distribution non commerciale et totalement libre et gratuite. Gérée par une association de plus de 400 volontairs bénévoles dont la majorité sont des développeurs, elle est aussi la plus complète : elle propose un très grand nombre d'applications/d'outils regoupés en plus de 2500 packages.
Son objectif est triple :
  • Fournir une distribution entièrement libre ;
  • Développer un outil de gestion d'application puissant ;
  • N'intégrer que des applications stables.
Points faibles de cette distribution :
  • le mode graphique n'est pas priviligié : de c fait son installation et sa configuration sont relativement plus difficile ;
  • les nouvelles fonctionnalités sont tradivement diffusées.
En conclusion, on peut retenir que la distribution Debian est une bonne distribution très complète et 100% libre mais pour les connaisseurs, et essentiellement pour les serveurs où la fiabilité et la sécurité sont primordiales. Autrement vous pouvez utiliser Ubuntu qui à l'origine est basée sur Debian mais qui à su s'imposer comme une distribution conviviale et facile à prendre en main.

  • La distribution Corel Linux
Cette distribution est l'oeuvre de l'éditeur canadien Corel (qui édite aussi Corel Wordperfect).
Elle est basée sur une Debian , pour laquelle une programme d'installation graphique et une amélioration de KDE ont été développés, de même qu'un nouveau gestionnaire de fichiers - Corel File Manager - qui permet par exemple d'accéder au réseau Windows par Samba sans passer par les outils complexes de configuration. La gestion de l'impression a aussi été facilitée.
La distribution Corel Linux est destinée avant tout à la bureautique , pas pour les serveurs ou les stations de travail plus professionnelles.
Cette distribution est défavorisée par certains choix de l'éditeur canadien au niveau des packages de la version de base : des outils gratuits tels que Netscape et Acrobat reader ne sont pas fournis, de même que Corel Wordperfect 8. Il en est de même des utilitaires les plus proches du système. Enfin le système est non évolutif du fait que Corel a utilisé une version très spécifique de la bibliothèque Qt (la libcqt) qui n'est pas compatible avec la libqt sur laquelle repose KDE. Résultat : la compilation et l'utilisation de programmes KDE standards ne sont pas possibles ; l'utilisateur ne peut utiliser que les programmes KDE préparés par Corel.
  • Mandriva (pour mémoire)

La distribution Linux-Mandriva


Origine

La distribution Linux-Mandriva anciennement Mandrake est une distribution récente , à l'origine basée sur La RedHat. Elle a été la première (avec sa version 5.x) à intégrer l'interface graphique KDE, conviviale et simple d'emploi, ce que refusait de faire Redhat pour des problèmes de licences aujourd'hui résolus. Un effort tout particulier a été fait au niveau de la traduction, pour la rendre utilisable par le plus grand nombre.
A partir de la version 6 Linux-Mandriva a pris son indépendance, et n'est plus basée sur la Redhat.

Les atouts de Linux-Mandriva
  • La distribution Linux-Mandriva offre de nombreux packages supplémentaires par rapport à la Redhat ainsi qu'une installation et une utilisation faciles.
Pour cela, elle est dotée d'outils graphiques pour toutes les étapes de l'installation (programme DrakX), pour la gestion des différents programmes (programme RpmDake), et pour l'installation de nouveaux périphériques (DrakConf).
Tous ces outils sont intégrés dans le gestionnaire de fenêtres KDE, une interface graphique intuitive, avec une traduction en français et une personnalisation du bureau KDE.
  • La distribution Linux-Mandriva utilise bien sûr le système de paquets RPM développé par Redhat. Mais elle ajoute une interface graphique de recherche de paquet, pour une utilisation encore plus facile, intégrée au programme RpmDrake.
  • Distribution française à l'origine, Linux-Mandrake est désormais polyglotte. La documentation de la plupart des applications courantes est disponible dans de nombreuses langues différentes. La procédure d'installation est disponible en plus de 50 langues à l'heure actuelle.
En conclusion, on peut dire que Linux-Mandriva est une réelle amélioration de la Redhat avec des outils d'installation et de configuration très agréables à utiliser, une distribution complète et de grande qualité qui peut convenir à la majorité des utilisateurs aussi bien débutants que professionnels. Elle est souvent recommandée et distribuée par de nombreux magazines (Programmez!, Mirror, Planète Linux, PC info, etc ...).

Session utilisateur et interfaces graphiques sous Linux


Session utilisateur


Le système d'authentification et ses composants

Le système d'authentification comprend, pour chaque utilisateur déclaré dans le système, deux informations capitales qui sont demandées à l'utilisateur, au début de la session : son nom d'utilisateur et son mot de passe.
C'est grâce à ces informations que le système arrive à conserver, pour chaque utilisateur, ses préférences d'une session sur l'autre ainsi que ses droits d'accès et lui permet de retrouver son fond d'écarn, ses icônes, la configuration de ses programmes, ... ainsi que ses données privées. C'est donc un système de reconnaissance del'utilisateur.

  • Le nom d'utilisateur
Encore appelé identifiant ou login, le nom d'utilisateur est généralement basé sur une combinaison du prénom et do nom comme par exemple dalo pour Daouda LO et constitue l'identité de l'utilisateur.
On distingue deux grand types de comptes utilisateur sur un système linux : les comptes administratifs (sys, mail, etc...) qui ne sont utilisés que par le système pour des tâches spécifiques et les comptes d'utilisateurs réels utilisés par les linuxiens.
Deux méthodes peuvent être utilisées pour entrer son nom d'utilisateur : soit la saisir au clavier ; soit cliquer sur l'icône correspondant dans la fenêtre de connexion.

  • Le mot de passe
Le mot de passe permet à l'utilisateur d'apporter au système la preuve de son identité. On dit que l'authentification se fait au moyen d'un mot de passe.
Chaque utilisateur dispose d'un mot de passe propre. Et si quelqu'un connaît le mot de passe d'un utilisateur, il peut accéder à touttes ses données, ou usurper son identité pour déclencher des actions qui pourraient s'avérer nuisibles. C'est pourquoi il faut prendre les précautions suivantes concernant son mot de passe :
  • Ne pas le communiquer une autre personne quelle qu'elle soit ;
  • Ne pas l'écrire ou le noter que quelque manière que ce soit ;
  • Ne pas choisir un mot de passe trop simple ou que les autres peuvent deviner sans difficultés.
Un bon mot de passe doit :
  • comporter un mélange de lettres, de chiffres, de ponctuations, etc...
  • être suffisamment long (8 caractères) ;
  • être dénué de sens (par exemple, ne pas choisir une date d'anniversaire, ou un mot du dictionnaire, son nom d'utilisateur, etc...

Procédure de connexion

La procédure de connexion se compose de quatre petites étapes :
  • Sélection de son identifiant ;
  • Saisie du mot de passe ;
  • Sélection éventuelle de l'interface graphique de son choix ;
  • Validation des informations ainsi fournies

Sélection de son identifiant
En mode graphique, il existe deux méthodes pour entrer son nom d'utilisateur : soit le saisir au clavier, soit cliquer sur l'icône correspondant. Voir la fenêtre de connexion ci-dessous.

Saisie du mot de passe
Le mot de passe est saisi dans la zone du même nom. Pour des raisons de sécurité, le mot de passe n'apparaît pas à l'écran pendant la saisie. A la place, soit on voit autant d'étoiles qu'il comporte de caractères, soit rien du tout. On dit qu'on saisit le mot de passe en « aveugle ».

Choix du gestionnaire de fenêtres
Parce que l'interface graphique ne forme pas sous Unix et sius Linux un bloc monolithique avec le système d'exploitation, il est possible lors de la connexion de choisirun gestionnaire de fenêtres. Celui-ci est responsable de l'ergonomie de l'environnement de bureau. Il existe plus de cinquante gestionnaires différents. On peut choisir le gestionnaire depuis le menu [1].

Validation des informations saisies
La validation se fait, soit en appuyant sur la touche « Enter » de son clavier après la saisie du mot de passe, soit en cliquant sur le bouton « Entrer » après la sélection du gestionnaire de fenêtres.
Sur la fenêtre de connexion, on peut noter la présence du bouton « Arrêter ». Il symbolise le menu système qui permet d'arrêter ou de redémarrer la machine. Lors de l'extinction d'une machine, il est fortement déconseillé d'éteindre brutalement la machine en utilisant l'interrupteur. Aussi dans certains, par exemple pour un poste en libre service, il est possible de désactiver ce bouton qui du coup n'apparaîtra pas dans la fenêtre de connexion.

Interface graphique sous Linux


Objectif de l'interface graphique

L'objectif de l'interface graphique est de fournir un environnement de travail convivial pour les utilisateurs. Elle n'est qu'une application parmi d'autres et donc est considérée comme étrangère au système d'exploitation qui au sens strict ne doit que servir d'interface entre les périphériques (clavier, carte vidéo, souris, disques, etc...) et les différentes applications.
Eléments constitutifs de l'interface graphique

L'interface graphique comporte trois types d'éléments distincts : le serveur d'affichage X, le gestionnaire de fenêtres et les applications. La modularité de l'interface graphique permet :
  • de changer un aspect sans modifier les autres ;
  • de donner à chaque utilisateur son environnement favori.

Passons rapidement en revue les éléments constitutifs
Le serveur d'affichage X
Encore appelé X Window System ou X11, le serveur d'affichage X est le programme chargé de :
  • afficher les programmes sur le ou les écrans disponibles ;
  • autoriser ou non les applications à afficher à l'écran.
C'est la première couche de l'interface graphique. Dans un environnement multi-utilisateur, la nécessité de X11 s'explique par le fait que plusieurs utilisateurs connectés en même temps sur la même machine lancent des applications différentes et ont besoin de les rediriger vers leur écran.
  • Le gestionnaire de fenêtres
Le gestionnaire de fenêtres, seconde couche de l'interface graphique, est un programme chargé de définir l'ergonomie de l'affichage. Il définit la façon dont les fenêtres s'affichent, les boutons présents sur leur barre de titre, les icônes présentes à l'écran, etc. Sous linux il y en a quelques dizaines. Citons en attendant KDE et GNOME en exemple.
  • Les applications
La troisième couche se compose des applications (ou programmes). Tous les programmes sont conçus pour fonctionner indépendamment des couches inférieures. Ils peuvent éventuellement communiquer entre eux en utilisant une interface commune. KDE offre par exemple une telle interface aux différentes applications.

Les interfaces courantes sous Linux

Il existe plus d'une cinquantaine d'interfaces graphiques à l'heure actuelle. Une description détaillée de toutes ces interfaces sort des limites de ce manuel. Passons en revue les quatres plus courantes.
  • KDE
KDE est très utilisé sous Linux. C'est l'interface retenue par défaut par Linux-Mandriva et d'autres distributions. Nous reviendrons très vite sur son fonctionnement et sa configuration.
  • GNOME
Bien que moins répandu et moins utilisé que KDE, GNOMLE est l'interface qui monte. Elle est soutenue par le projet GNU et a été officiellement adopté par plusieurs fabricants d'Unix pour devenir leur interface principale.
  • WindowMaker
WindowMaker est un gestionnaire de fenêtres (window manager) pour XWindow libre et populaire. Il a été développé à l'origine par Alfredo K. Kojima, aussi auteur d'Afterstep . Son apparence est très semblable à celle de l'interface de Nextstep, et il est conçu pour fonctionner de pair avec GNUstep.
WindowMaker est un gestionnaire de fenêtres assez rapide, facile à prendre en main et à configurer. Sa popularité grandissante s'explique aussi par sa finition irréprochable et par son esthétique travaillée.
  • AfterStep
Le principe fondateur de l'interface AfterStep est l'imitation de l'interface NextStep. Toutefois, elle a depuis évolué dans une direction propre.
  • Xfce
Xfce avait comme objectif de ressembler à l'interface CDE (Common Desktop Environment), l'interface standard sur de nombreux Unix.

Prise en main de KDE sous Linux

Bref historique


Le projet KDE a débuté en octobre 1996 sous l'impulsion de Mathias Ettrich. Mais il a connu un développement plus rapide que n'importe quel projet de développeement logiciel comparable. Fin 1998, le projet KDE englobait déjà plus de 800 000 lignes de code source.
Le premier objectif de KDE fut de fournir une interface graphique offrant un moyen simple permettant aux applications graphiques, membres de la couche la plus haute, de communiquer entre elles - ce qui manquait auparavant au système en couche des interfaces graphiques (en particulier, le copier/coller) ; et de devenir un environnement de bureau complet. Cet objectif a été atteint rapidement, en fournissant un grand nombre de fonctionnalités qui manquaient à ses concurrents et un ensemble d'applications (calculatrice, éditeur de fichier, etc.).
Notons que KDE est l'acronyme de K Desktop Environment et que le K qui est comparable au X de X Window ne veut rien dire.

Objectifs du projet KDE


Les objectifs du projet KDE sont ambitieux. KDE n'est un clone d'aucun autre système. Son équipe de développement s'efforce de tirer les meilleures caractéristiques des différents systèmes et de les mettre en oeuvre dans un environnement graphique intégré complet.
Sur le plan technique, KDE vise l'intégration des caractéristiques suivantes qui manquent dans les environnements graphiques de X :
  • un protocole Glisser-Lacher commun pour les applications et le bureau ;
  • une configuration du bureau simple, fondée sur des dialogues, pour toutes les fonctionnalités et les applications de bureau ;
  • un système d'aide uniformisé pouvant être accessible de toutes les applications ;
  • un atelier de développement logiciel commun ;
  • un atelier de préparation de document semblable à CORBAou à ActiveX ;
  • une transparence réseau améliorée au niveau application ;
  • un type de développement simple d'emploi (SDK) pour faciliter la création d'applications compatibles.
Du point de vue de l'utilisateur, les objectifs les plus importants sont :
  • la présentation d'un bureau attrayant et moderne ;
  • le barrage aux problèmes que les applications rencontrent avec les connexions réseau (rendant le réseau transparent pour le bureau et ses applications) ;
  • une aide en ligne intégrée fournissant des points d'accès et une interface utilisateur uniformes pour toutes les applications ;
  • une apparence uniforme pour toutes les applications y compris les menus, les raccourcis clavier, les palettes de couleurs, etc. ;
  • la création d'un produit international, avec un support clavier, menu, aide en ligne et application, pour de nombreuses langues ;
  • la fourniture de centaines d'applications intégrées
La version 2.0 de KDE, finalisée très recemment, intègre une suite bureautique complète, appelée Koffice (un des projets de développement les plus importants de KDE). A terme, KDE pourrait devenir l'environnement standard de Linux, voire d'Unix s'il parvient à intéresser les éditeurs d'Unix propriétaires.

Présentation de l'interface


Cette présentation se focalisera sur trois composants importants de l'interface : le lanceur d'applications, le menu de sélection du bureau et les icônes d'applications.

    1. Le lanceur d'applications
Ce menu déroulant encore appelé menu K permet de lancer les applications faisant partie de l'nvironnement KDE. Celles-ci sont classées par thème à l'intérieur du menu. Son contenu précis dépend des logiciels choisis à l'installation.

    1. Le menu de sélection du bureau
KDE peut afficher les fenêtres sur plusieurs écrans virtuels (quatre par défaut). Chacub de ces écrans se comporte comme un bureau totalement indépendant, sur lequel on peut choisir un fond, des icônes, et des styles de fenêtres différents.
Pour passer de l'un à l'autre, deux possibilités :
  • Le menu situé à droite du sélectionneur de bureau ;
  • Le selectionneur de bureau ;

    1. Les icônes d'applications
Sur la barre d'outils se trouvent des icônes représentant des applications que l'on souhaite avoir sous la main. Il suffit de cliquer sur une icône pour démarrer l'application correspondante (netscape ou advanced Editor pour ne citer que deux exemples). Elles sont similaires aux icônes disposées sur le plan de travail ou bureau.
Mais il est toujours possible de lancer une application non accessible via une icône en tapant Alt-F2. Une fenêtre portant le titre « exécuter une application » s'ouvre qui présente une zone dans laquelle il suffit de saisir le nom du programme que l'on souhaite exécuter et d'appuyer sur la touche « Entrée ».

Navigation entre les fenêtres


Dans ce sous-chapitre, on verrons :
  • Comment passer d'une fenêtre d'application en cours d'exécution à une autre surtout lorsque plusieurs applications sont dans ce cas ;
  • Comment déplacer une fenêtre ;
  • Comment fermer une fenêtre ;

Activation d'une application
Lorsqu'on lance une application, elle s'exécute dans une fenêtre qui s'affiche sur l'écran. Il est toujours possible d'avoir plusieurs applications en cours d'exécution en même temps et toutes les fenêtres sont affichées sur le bureau, celui-ci devient très vite très chargé. Pour éviter une telle surcharge du bureau, il est toujours possible de réduite les réduire (toutes sauf une) en icône. Quelques raccourcis permettent alors de s'y retrouver facilement :
  • Alt-Tab permet de passer en revue les fenêtres ouvertes dans le bureau en cours, et CTRL-Tab de passer d'un bureau à l'autre ;
  • La liste des tâches en cours (bouton à droite des icônes des bureaux) contient le nom de toutes les fenêtres actives. Il suffit d'en sélectionner une pour qu'elle passe en premier plan ;
  • Un clic sur la fenêtre permet de la mettre au premier plan ;
  • Un clic sur la liste des fenêtres ouvertes fait de même ;
  • Un clic sur le bouton du milieu, en dehors de toute fenêtre, affiche sous le curseur un menu identique à la liste des tâches.

Déplacement d'une fenêtre
On peut déplacer les fenêtres sur le bureau en utilisant deux méthodes différentes :
  • en cliquant sur leur barre de titre, et en maintenant le boutant enfoncé. La fenêtre va alors suivre le mouvement de la souris jusqu'au relachement du bouton de celle-ci ;
  • en cliquant avec le bouton droit de la souris dans la barre de titre ; on fait apparaître alors un menu de contrôle qui permet de faire passer la fenêtre en plein écran, de la faire disparaître, de la redimensionner, de l'enrouler , etc.
Notons aussi que « Clouer » une fenêtre permet de l'attacher à l'écran de sorte que lorsqu'on change de bureau virtuel, la fenêtre reste toujours affichée.

Fermeture d'une fenêtre
En général la fenêtre d'exécution d'une application se ferme automatiquement lorsque cette dernière est arrêtée. Toutefois on peut être amené à arrêter brutalement une application et donc à fermer tout aussi brutalement sa fenêtre. Dans ce cas plusieurs solutions s'offrent :
  • Ciquer sur l'option « Fermer » dans le menu de titre de la fenêtre ;
  • Un clic sur l'icône intitulée Xkill (sur le bureau), suivi d'un clic sur la fenêtre à fermer ;
  • Alt-F4 ferme la fenêtre active (celle que l'on a sélectionnée la dernière) ;
  • le bouton X en haut à droite de la barre de titre.

Personnalisation du bureau


Dans ce sous-chapitre, nous allons aborder les points suivants :
  • Comment faire pour lancer automatiquement des application ;
  • Comment faire pour ajouter une icône sur le bureau ;
  • Comment faire pour ajouter une entrée dans le lanceur d'application ;
  • Nous finirons par une brève présentation du centre de contrôle KDE.

    1. Lancement automatique des application
Il est possible de lancer les applications automatiquement à la connexion de l'utilisateur grâce au dossier Démarrage, représenté par la première icône présente sur le bureau. Voici les étapes de la procédure :
  • Ouvrir le dossier Démarrage ;
  • Cliquer doit dans l'espace de travail ;
  • Sélectionner Nouveau/Application ;
  • Taper le nom de l'application dans la zone Exécuter. Si l'application n'est pas graphique, il faut plutôt taper rxvt -e « commande » ou cocher la case « Lancer dans un terminal.

    1. Ajout d'une icône sur la bureau ou d'une entrée dans le lanceur
Un clic droit n'importe où sur le bureau affiche un menu qui permet de rajouter une ou plusieurs icones sur le bureau. Il suffit de sélectionner Nouveau/Application. Le dialogue est identique à celui du dossier Démarrage.
L'ajout d'une entrée dans le lanceur se fait à l'aide de l'éditeur de menu, accessible par Lanceur d'application/Utilitaires/Editeur de menus. Des fenêtres représentant les menus s'affichent. Pour en rajouter une, il suffit de cliquer avec le bouton droit sur l représentation du lanceur, choisir Nouveau et insérer la nouvelle entrée.
Dans la fenêtre qui s'affiche, il est possible de choisir le nom de l'élément à insérer, le programme à exécuter en mode graphique, puis cliquer sur OK pour confirmer.

    1. Présentation du centre de contrôle KDE
Encore appelé panneau de contrôle, le centre de contrôle KDE est un outil rassemblant un grand nombre d'options de configuration de l'ergonomie du bureau. C'est dans cet outil que l'on peut définir le type de clavier que l'on utilise. On peut y définir des raccourcis clavier, toutes les séquences de touches étant entièrement paramétrables. On peut également rajouter n'importe queel image en fond d'écran, configurer les couleurs des barres de titre, ... soit individuellement, soit de façon globale en utilisant un thème de bureau préconfiguré. Il est accessible depuis le lanceur d'application ou par son icône sur la barre d'outils. Il suffit d'aller dans Raccourcis/Raccourcis globaux.