logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:systeme:gnu-linux [02/05/2013 13:32]
smolski [La connexion en mode graphique]
doc:systeme:gnu-linux [03/05/2013 13:36]
smolski
Ligne 9: Ligne 9:
   * Débutant, à savoir : [[manuel:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)   * Débutant, à savoir : [[manuel:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
  
-===== Démarrage ===== 
  
-==== Généralités ====+===== Généralités ​=====
  
-Pour qu'un système GNU/Linux soit utilisable, il doit d'​abord passer par plusieurs étapes d'​initialisation et de lancement ​de divers programmes. \\ +Un ordinateur seul ne peut effectuer rien de très utile. \\ 
-Dans cet article sera décrit ce qu'il se passe depuis la mise sous tension de la machine jusqu'au moment où l'utilisateur pourra s'en servir.+Pour lui un disque dur n'​est ​qu'un endroit pour stocker des 0 et des 1 et une carte graphique n'est qu'un module mis dans un emplacement.
  
-Pour la plupartces étapes dépendent fortement de la distribution GNU/Linux utilisée. \\ +Pour lui dire que faire de tout celail y a //une première couche logicielle//​ qui est le système d'​exploitation (sur un PC il y a [[manuel:​bios | le BIOS]] avant tout). \\ 
-Selon les choix fait par les créateurs des distributions,​ quelques détails peuvent changer, mais les principes restent les mêmes.+On y trouve dedans tout ce qui est nécessaire pour gérer le matériel et fournir à l'​utilisateur ​les fonctions de base.
  
-Chacune des étapes décrites ci-dessous peut être adaptée selon les besoins afin d'obtenir des fonctionnalités supplémentaires ou de réduire ​le temps de démarrage ​par exemple.+Certains systèmes d'​exploitation relativement récents rendent tout cela un peu confus en mélangeant toutes ​les couches. \\ 
 +//​L'​interface graphique// est fournie //avec le système ​d'exploitation//​ comme c'​est ​le cas par exemple ​avec Windows depuis la version 95.
  
-==== Le chargeur de noyau ====+Pour qui souhaite un peu mieux comprendre l'​architecture interne, il vaut mieux s'​intéresser à un système comme **GNU/​Linux** qui met plus en évidence ce découpage.
  
-Le tout premier programme à être lancé est en réalité [[manuel:​bios | le BIOS]].+===== Gestion de la mémoire =====
  
-Celui-ci va chercher au début ​du 1er disque dur afin d'y trouver un chargeur ​(en réalité l'​endroit où rechercher ​est configuré dans les paramètres du BIOS).\\ +Un des premiers rôles ​du système ​d'exploitation((OS)) est de gérer la mémoire disponible sur la machine. \\ 
-Il s'​agit ​d'un petit programme dont le but sera de lancer le système d'​exploitation complet. +Par cela, il s'agit de la **RAM** présente ​sur la machine, mais pas seulement, comme cela sera expliqué ci-après.
-<​note>​Les chargeurs récents sont capables de laisser à l'​utilisateur le choix du système à lancer (on appelle cela un multiboot). Plusieurs peuvent alors cohabiter ​sur une même machine.</​note>​+
  
-Les plus utilisés pour lancer un noyau Linux sont LILO et GRUB. \\ +Sur une machine plusieurs programmes peuvent s'​exécuter simultanément comme expliqué dans la section suivante. 
-Ils partagent ​de nombreux points communs comme le fait de pouvoir passer des options au noyau.+<note tip>Il ne faut pas que ceux-ci puissent interférer les uns avec les autres.</​note>​ 
 +Durant son déroulement,​ une application a besoin de sauvegarder des données temporairement. \\ 
 +Quand vous utilisez un traitement ​de texte par exemple, il conserve la police actuellement utilisée. \\ 
 +Cela se fait dans la //​mémoire//​. \\ 
 +Et il ne faut pas que le jeu qui est en train d'​être utilisé en même temps (par exemple) puisse altérer cette valeur lorsqu'​il enregistre l'​emplacement actuel du joueur.
  
-La configuration pour GRUBce fait dans le fichier grub.conf: +Pour réaliser celales programmes ne peuvent pas écrire directement ​dans la RAM de la machine\\ 
-<code bash> +Pour eux tout se passe comme si c'​était le casmais le système d'​exploitation se charge d'​écrire dans certaines zones indépendantes les unes des autres\\ 
-cat etc/​grub.conf</​code>​ +Le programme voit un espace de mémoire virtuelle dans lequel il peut faire ce qu'il veut sans risquer de déranger les autres\\
-default=0 +
-timeout=10 +
-splashimage=(hd0,0)/​boot/​splash.xpm.gz +
-title linux +
-  root (hd0,0) +
-  kernel /​boot/​vmlinuz root=/​dev/​hda1 +
-title ancien linux +
-  root (hd1,0) +
-  kernel /​boot/​vmlinuz.old root=/​dev/​hdb1 noapic+
  
-Ce fichier ​fournit un comportement similaire à celui pour LILOOn remarquera que les options sont ici passées à la suite du nom du noyauDe plus, l'​endroit où installer GRUB n'est pas précisé dans ce fichier mais se fait au moment ​de son installation avec le programme grub.+Pour résoudre ce problème, il y a la notion de fichier ​d'​échange (ou **swap**)\\ 
 +La place supplémentaire nécessaire est prise sur le disque dur\\ 
 +Si la mémoire ​est pleine et qu'il faut y écrire ​de nouvelles données, les plus anciennes (ou les moins fréquemment utilisées) seront sauvegardées sur le disque pour libérer de l'​espace.
  
-Les noms de fichiers donnés ci-dessus sont ceux par défaut et utilisé dans la plupart des distributions. Cela peut changer dans certains cas particuliers.+Un programme ne peut travailler directement qu'​avec les données en mémoire vive. \\ 
 +Donc si celles qui avaient été sauvegardées sont requises, elles suivront le chemin inverse pour revenir en mémoire depuis le disque.
  
-Pour que les modifications apportées soient prises en compte, LILO nécessite que soit lancé ​le programme liloPour GRUB ce n'​est ​pas nécessaireet lors du prochain redémarrage,​ la nouvelle version du fichier de configuration ​sera utilisée.+Tout ce mécanisme est invisible pour l'​application. C'​est ​le système d'​exploitation qui se charge de ces opérations selon les besoins. 
 +<note tip>Les temps d'accès au disque dur sont coûteux. Donc si la mémoire ​est insuffisante par rapport aux applications utiliséesl'​utilisation ​du **swap** ​sera intensive et ralentira la machine.</​note>​
  
-Une fois que l'​utilisateur a fait son choix, le noyau est donc lancé avec certains paramètres.+===== Multitâche =====
  
-==== Le noyau ====+Sur un PC standard, on a un seul processeur. Celui-ci ne peut globalement exécuter qu'une opération à la fois. Or lorsqu'​on l'​utilise,​ on peut en même temps regarder une vidéo, relever ses mails et graver un CD-ROM par exemple. \\ 
 +Vu de l'​utilisateur,​ c'est comme si tous ces programmes s'​exécutaient simultanément.
  
-Son rôle lors du démarrage est principalement d'​initialiser les différents composants matériels présents en utilisant notamment les pilotes de périphérique présents dans le noyau. +<​note ​tip>En fait il n'en est rien du fait des limitations matérielles.</​note>​
-<​note>​Ceux qui ont été compilés sous forme de modules ne sont pas pris en compte à ce moment.</​note>​+
  
-Ces initialisations concernent surtout les composants centraux ​de la machine comme le processeur ​ou les contrôleurs ​de périphériques. \\ +Le rôle du système d'​exploitation est de faire exécuter tour à tour ces applications. \\ 
-Les périphériques externes ne seront eux initialisés généralement qu'au moment ​de leur utilisation. \\ +Chacune va à son tour disposer de l'​unité de calcul (le processeur) pour réaliser ce qu'il désire. \\ 
-L'​écran est toutefois utilisé rapidement après ​le lancement du noyau afin de donner des informations à l'utilisateur. Le noyau configure donc la carte graphique dans un mode standard pouvant être reconnu par une majorité ​de cartes. Il est de plus possible de changer cette valeur par une option du noyau (vga=XXX).+Cet intervalle de temps (//​time-slice//​ en anglais) peut varier selon les systèmes ​de quelques millisecondes à plusieurs dizaines de millisecondes. \\ 
 +Plus la valeur est faible, plus l'impression ​de multitâche sera grande. \\ 
 +Mais le passage d'​une ​application à une autre a un coût en termes ​de temps\\ 
 +Il faut restaurer le contexte dans lequel se trouvait l'​application avant que l'​accès au processeur lui ait été retiré.
  
-Il y a deux manières d'​influer sur ce que va faire le noyau. +Il faut donc trouver ​le bon compromis pour que tout le temps ne soit pas passé à basculer.
-  - On peut le recompiler en changeant les paramètres accessibles lors de la configuration ou alors +
-  - lui passer des options.+
  
-L'​avantage des options est que cela peut être changé d'un démarrage sur un autre. Et les chargeurs ​de noyau vus précédemment permettent ​de faire cela très facilement, y compris ​de façon temporaire. \\ +Cette restauration ​de contexte comprend notamment le rétablissement ​de l'​espace ​de mémoire virtuelle évoqué ci-dessus. \\ 
-Mais on rencontrera certains cas (comme par exemple rajouter ​le support d'un matériel particulier) où une recompilation du noyau sera indispensable.+Il y a aussi le processeur qui doit être remis comme il était lorsque ​le programme a été interrompu.
  
-Voici quelques exemples d'options fréquentes et utiles. Leur liste complète est en réalité plus longue mais ne sera pas détaillée ici. \\ +Il faut noter qu'une application ne sait pas quand elle ne sera plus exécutée pour laisser la place à une autre. \\ 
-**Options courantes** +On parle de //​multitâche préemptif//​\\ 
-^Option ^Description ^ +C'est le système ​d'exploitation qui prend la décision.
-|vga=XXX |Sert à changer la résolution d'​écran utilisée pendant le démarrage. Utile si celle par défaut n'est pas reconnue par la carte graphique.| +
-|no-scroll |Permet ​de désactiver le défilement du texte sur l'​écranA utiliser notamment avec des terminaux braille pour lesquels le défilement peut poser problème.| +
-|noapic |L'APIC permet à plusieurs périphériques de partager des ressources communes (les IRQ). Avec cette option, on peut désactiver ce mécanisme qui peut engendrer des problèmes avec certains matériels.| +
-|mem=XXX |Permet d'​indiquer la valeur de mémoire vive présente sur la machine pour le cas ou l'​auto-detection échouerait. On peut utiliser des lettres pour cette taille. Par exemple 512M désignera 512 Méga-octets de mémoire.| +
-|init=XXX |Permet ​d'indiquer de manière explicite quel programme doit être lancé après l'​initialisation du noyau (plus de détails dans la section suivante).|+
  
-==== Le processus init ====+== Nota ==
  
-Une fois que le noyau a fini tout son travail ​d'initialisationil lance alors un programme qui va devenir le père de tous les autres processus et portera l'​identifiant de processus (le PID) 1.+Sur d'anciens systèmes on avait un //​multitâche coopératif//​appelé parfois aussi //​pseudo-multitâche//​.
  
-Ce programme s'appelle généralement init. Le noyau va en fait essayer ​de lancer successivement les programmes suivants :+Dans ce cas-là, c'étaient les applications qui décidaient qu'​elles n'​avaient pendant un certains temps plus besoin du processeur (par exemple si elles attendent des données provenant du disque dur ou du réseau) et peuvent donc être mise en sommeil. \\ 
 +Windows 3.1 rajoutait cette couche ​de multitâche coopératif sur //MS DOS// qui était **monotâche**.
  
-    /​sbin/​init +===== Interface graphique =====
-    /etc/init +
-    /bin/init +
-    /bin/sh+
  
-Dès qu'un de ceux-là est lancé avec succèsles autres ​ne sont même pas testés car le contrôle est passé ​au programme.+Comme dit précédemmentl'​interface graphique ​ne fait pas réellement partie du système d'​exploitation lui-même. \\ 
 +L'​interface graphique vient se placer ​au-dessus de ce dernier et se divise encore en plusieurs parties.
  
-On voit que le programme init est cherché dans différents répertoires ​(/sbin, /etc et finalement /bin). \\ +Tout d'​abord la partie la plus proche du matériel qui comprend les pilotes des cartes graphiques ​(voir section suivante). \\ 
-  * S'il ne se trouve dans aucun de ceux-là, le noyau tente de lancer ​un shell afin que l'​utilisateur ait accès au système+Cette partie utilise les spécificités du matériel pour fournir des fonctions ​de base (afficher ou déplacer ​un rectangle par exemple) ou plus avancées (gestion de la 3D notamment)\\ 
-  Si cela échoue également, le noyau affiche un message d'​erreur et s'​arrête.+Sous GNU/Linux c'est le plus souvent géré par **X.Org**((un fork de XFree86réalisé juste avant le changement de licence)).
  
-Pour pouvoir indiquer un autre programme que ceux-là, il faut utiliser ​l'option du noyau **init=** vue précédemmentOn lui passe en paramètre ​le chemin complet de l'exécutable ​à lancer.+Ensuite vient [[manuel:​gestionnaires | le gestionnaire de fenêtres]]. \\ 
 +Il permet d'​avoir comme son nom l'indique des fenêtres pour les applications\\ 
 +Celles-ci peuvent être agrandies, réduites,​... Et le passage d'une application ​à une autre est facilité.
  
-Le comportement ​d'init se configure à l'aide du fichier ''/​etc/​inittab''​En voici un exemple ​d'extrait : +Et enfin on trouve la partie la plus optionnelle,​ [[manuel:​gui | le gestionnaire de bureau]]. \\ 
-<code> +Il permet ​d'avoir un environnement de travail avec un ou plusieurs bureaux virtuels sur lesquels peuvent être placés des liens vers des programmes\\ 
-id:​5:​initdefault:​+Il y a aussi généralement ​d'autres outils comme une barre des tâches ou des menus configurables. 
 +<note>Les deux représentants les plus connus sous GNU/Linux sont **KDE** et **GNOME**.</​note>
  
-si::​sysinit:/​etc/​rc.sysinit+===== Rôle d'un pilote de périphérique =====
  
-l0:​0:​wait:/​etc/​rc.d/rc 0 +Appelé driver en anglais, le pilote de périphérique est l'​interface entre le matériel et le système ​d'​exploitation\\ 
-l1:​1:​wait:/​etc/​rc.d/rc 1 +Il permet de faire l'​abstraction de celui-ci (on parle de //Hardware Abstraction Layer//) en fournissant une interface toujours identique\\ 
-l2:2:wait:/etc/rc.d/rc 2 +Les différents matériels ne sont pas constitués des mêmes composants électroniquesMais les fonctionnalités qu'ils présentent sont les mêmes.
-l3:3:wait:/etc/rc.d/rc 3 +
-l4:​4:​wait:/​etc/​rc.d/rc 4 +
-l5:​5:​wait:/​etc/​rc.d/rc 5 +
-l6:​6:​wait:/​etc/​rc.d/​rc 6+
  
-ca::​ctrlaltdel:/​sbin/​shutdown -t3 -r now</​code>​+Comme exemple simple, on peut considérer les cartes graphiques. \\ 
 +Pour faire afficher un point à l'​écran,​ différentes cartes ne procéderont pas de la même manière. \\ 
 +Mais le pilote de périphérique va se charger de dialoguer avec la carte selon ses spécifications techniques. \\ 
 +Le système d'​exploitation appelera une méthode toujours identique pour demander à voir apparaître ce point.
  
-Chaque ligne est construite ​de la même manière avec les champs suivants : \\ +Ces différences matérielles peuvent être atténuées avec l'​apparition ​de normes. ​\\ 
-Format dans /​etc/​inittab +Pour en revenir aux cartes graphiques, la norme VGA permet ​de standardiser ​l'initialisation ​et l'utilisation de la carte\\ 
-^Position ^Nom ^Description ^ +Cette norme ne prévoit pas les hautes résolutions,​ ni les fonctions 3D\\ 
-|1 |Identifiant |Une chaîne ​de caractère choisie par l'utilisateur (sauf dans certains cas particuliers) ​et permettant d'identifier ​la ligne.| +Pour ces dernières, ​on en revient à des spécificités pour chaque fabricant/​modèle.
-|2 |Niveaux d'​exécution |Les niveaux d'​exécution (détaillés dans le chapitre suivant) pour lesquels cette ligne doit être prise en compte.| +
-|3 |Action |Contient une des actions prédéfinies indiquant ce qui doit être fait.Le tableau suivant ​les liste.| +
-|4 |Programme |Le programme qui doit être exécuté lorsque l'on rentre dans les niveaux indiqués.|+
  
-Selon l'​action choisie, le comportement sera différent et certains champs peuvent être ignorés. Voici la description des actions le plus souvent utilisées. +Les drivers sont considérés comme faisant partie du système ​d'exploitation\\ 
-Actions pour /​etc/​inittab +Ils ne le sont pas forcément au sens logiciel, car ils peuvent être fournis séparément ​par le constructeurMais ils s'​exécutent ​dans un mode spécialappelé mode réel
-^Action ^Champs ignorés ^Description ^ +<note tip>Ce mode leur permet ​de contourner les protections du système ​d'exploitation du mode protégé ​(dont notamment le contrôle ​de la mémoire).</​note>​
-|initdefault |Programme |Permet ​d'indiquer le niveau d'​exécution à utiliser par défautLe champs Niveaux d'​exécution contiendra alors une seule valeur qui sera ce niveau par défaut.| +
-|sysinit |Niveaux d'​exécution |Le champs Programme contient ​le chemin vers un exécutable qui sera lancé en tout premier ​par init (donc juste après que le noyau ait terminé ses initialisations).+
-|wait |Aucun |Lorsque le système passera ​dans la niveau d'​exécution spécifiéinit exécutera la commande indiquée puis attendra qu'​elle se termine.| +
-|respawn |Aucun |Semblable à wait si ce n'est qu'à chaque fois que le programme se termine, init le relancera.| +
-|ctrlaltdel |Niveaux d'​exécution |Permet d'​indiquer une commande devant être exécutée lorsque l'​utilisateur presse la combinaison ​de touches Ctrl-Alt-Suppr.| +
-Les niveaux ​d'exécution ​(Haut de page)|+
  
-Sur les systèmes GNU/Linux, on a plusieurs niveaux d'​exécution possibles (appelés aussi modes d'​exécution). Il s'agit en fait de mode de démarrage différents qui diffèrent les uns des autres par les services qui y sont lancés. +===== Démarrage ​=====
- +
-La convention choisie est celle appelée ''​System V init''​ qui définit la manière dont doivent être gérés les différents niveaux. \\ +
-Dans le fichier **inittab** donné en exemple dans le chapitre précédent,​ on peut voir que c'est le programme ''/​etc/​rc.d/​rc''​ qui gère cela. Il est lancé avec en paramètre le numéro de niveau lorsque l'on a besoin de basculer dans un certain niveau d'​exécution. +
- +
-On trouve en général 7 niveaux d'​exécution numérotés de 0 à 6. \\ +
-Leur utilisation est libre, mais traditionnellement on a l'​utilisation suivante :  \\ +
-Niveaux d'​exécution +
-^Numéro ^Désignation ^Description ^ +
-|0 |Arrêt |Passer dans ce niveau provoque un arrêt de la machine.| +
-|1 |Maintenance |On a directement accès à un shell, mais quasiment aucun service n'est lancé. Utile pour le dépannage en cas de problème important.| +
-|2 |Multi-utilisateurs simple |Plusieurs utilisateurs peuvent se connecter en mode texte. Mais les services sont limités (souvent pas de réseau par exemple).| +
-|3 |Multi-utilisateurs complet |Tous les services nécessaires sont démarrés et plusieurs utilisateurs peuvent se connecter en mode texte.| +
-|4 |Mode utilisateur |Généralement non utilisé, il peut être librement utilisé.| +
-|5 |Graphique |Identique au mode 3, mais les utilisateurs peuvent se connecter en mode graphique et disposer d'un gestionnaire de fenêtre.| +
-|6 |Redémarrage |Passer dans ce niveau redémarre la machine.| +
- +
-Après le démarrage, le système se trouve dans le mode indiqué par **initdefault** dans ''/​etc/​inittab''​. \\ +
-Pour pouvoir changer, il existe un outil appellé //​telinit//​. Il suffit de le lancer en lui passant en paramètre le numéro du niveau souhait. Par exemple : +
-<code bash> +
-telinit 6</​code>​ +
- +
-Permet de redémarrer la machine. +
- +
-Bien qu'il y ait des conventions pour ce qui doit être fait dans chaque mode, cela peut être entièrement changé. Mais pour comprendre comment influer sur ce comportement,​ il faut d'​abord savoir ce que fait le programme ''/​etc/​rc.d/​rc''​ (ou un autre selon les systèmes et le contenu du fichier inittab). +
- +
-Le programme gérant les niveaux d'​exécution va consulter le contenu du répertoire ''/​etc/​rc.d/​rcX.d''​ (où X correspond au numéro du niveau devant être changé). \\ +
-Il y recherche d'​abord tous les exécutables s'y trouvant et dont le nom commence par la lettre K (pour Kill) suivie par deux chiffres. \\ +
-Il lance ces programmes en leur passant en paramètre stop. Cela correspond aux services qui doivent être arrêté dans ce mode là. Ils sont lancés dans l'​ordre croissant du nombre indiqué après le K, ce qui permet de les ordonner. +
- +
-C'est ensuite au tour des programmes dont le nom commence par la lettre S (pour Start) puis également un nombre sur deux chiffres. Ils sont lancés de la même manière que les précédents si ce n'est que c'est le paramètre start qui est passé. +
- +
-Pour illustrer ceci, voici un contenu possible d'un de ces répertoires : +
-<code bash> +
-ls /​etc/​rc.d/​rc3.d</​code>​ +
-<​code>​ +
-K15httpd +
-K20nfs +
-K45named +
-S10network +
-S55sshd +
-S99local</​code>​ +
- +
-Dans ce cas-là, lorsque l'on passe dans le niveau 3 (soit au démarrage si c'est celui par défaut, soit ensuite si c'est l'​utilisateur qui le demande), on arrêtera les services httpd (serveur web), nfs (serveur de fichiers) et named (serveur de noms). Et ensuite seront démarrés les services network (pour la prise en charge du réseau), sshd (serveur de connexion distante sécurisée) et local (qui va lancer des programmes devant être exécuté en fin de démarrage). +
- +
-Comme des programmes peuvent exister dans plusieurs niveaux différents,​ dans les répertoires ''/​etc/​rc.d/​rcX.d''​ on trouvera en réalité des liens symboliques(([[commande:​ln | la commande ln]])) pointant vers des fichiers dans le répertoire ''/​etc/​rc.d/​init.d''​. \\ +
-Ces fichiers sont en réalité des scripts shell et le même sera lancé pour le démarrage ou l'​arrêt. \\ +
-C'est donc de la responsabilité du script de voir s'il a été appelé avec le paramètre start ou stop pour savoir quelle action entreprendre. +
- +
-En sachant tout cela, ajouter ou supprimer des services dans un niveau donné revient uniquement à créer ou supprimer des liens symboliques. +
- +
-En reprenant l'​exemple précédent,​ voici ce qui pourrait être fait : +
-<code bash> cd /​etc/​rc.d/​rc3.d</​code>​ +
-<code bash> rm S55sshd</​code>​ +
-<code bash> ln -s /​etc/​rc.d/​init.d/​ftpd S40ftpd</​code>​ +
- +
-Cela va faire en sorte que dans le niveau 3, le serveur SSH ne soit plus exécuté. \\ +
-En revanche un serveur FTP sera mis en place. \\ +
-Tout cela suppose qu'un script ftpd soit présent dans le répertoire ''/​etc/​rc.d/​init.d/''​ et qu'il fournisse le service attendu. +
-<​note>​Les distributions GNU/Linux incluent ce genre de script lorsqu'​un service est installé. L'​utilisateur n'a donc ensuite qu'à modifier les liens symboliques.</​note>​ +
- +
-==== La connexion en mode texte ==== +
- +
-Après que le système ait terminé les actions à entreprendre dans un niveau donné, un utilisateur peut alors se connecter au système. \\ +
-Lorsque cela se fait en mode texte, un message invite la personne à entrer son nom d'​utilisateur puis son mot de passe. +
- +
-C'est généralement le programme **login** qui se charge de ça. Une fois le nom et le mot de passe saisis, ce programme va lire le fichier ''/​etc/​passwd''​(([[commande:​passwd]])) pour vérifier ces informations. +
- +
-En mode texte, le programme permettant de se connecter va donc lancer le shell choisi par l'​utilisateur. Sur un système GNU/Linux, c'est par défaut [[manuel:​bash]]. +
- +
-Bash (comme les autres shells) va alors lancer un script dans le répertoire de l'​utilisateur. Il s'agit dans ce cas de ''​.bashrc''​ qui est un fichier caché. \\ +
-C'est donc dans ce script qu'un utilisateur peut rajouter des commandes qu'il souhaite voir exécutées lorsqu'​il se connecte. +
- +
-==== La connexion en mode graphique ==== +
- +
-Lors d'une connexion en mode graphique, l'​utilisateur doit saisir son nom d'​utilisateur et son mot de passe dans une fenêtre créée par ce que l'on appelle souvent un gestionnaire d'​affichage. \\ +
-Il existe plusieurs de ces programmes. Les plus connus sont **KDM** et **GDM**. \\ +
-Ils offrent des fonctionnalités équivalentes : Afficher la liste des utilisateurs,​ vérifier le mot de passe, ... Et surtout lancer ensuite le gestionnaire de fenêtre/​bureau choisi par l'​utilisateur. +
- +
-[[manuel:​environnement_graphique | L'​environnement_graphique]] sélectionné va ensuite se lancer. Cela correspondra à lancer le gestionnaire de fenêtre, éventuellement un gestionnaire de bureau, puis d'​autres applications. \\ +
-Une fois que ceci est terminé, il y a la possibilité pour l'​utilisateur d'​avoir des programmes lancés automatiquement. +
- +
-Selon les cas, choisir ces programmes peut varier fortement. Toutefois, il existe une organisation,​ ''​freedesktop.org'',​ qui tente d'​uniformiser tout ce qui touche aux environnements graphiques. +
- +
-Très souvent un répertoire sera donc utilisé pour stocker les applications devant être lancées (dans la pratique, il contiendra des liens symboliques). Ce répertoire est ''​Desktop/​Autostart/''​ qui se trouve dans le répertoire personnel de l'​utilisateur. \\ +
-Il suffira donc d'y ajouter ce que l'on souhaite.+
  
-A noter également que la plupart des gestionnaires de bureau récents inclut aussi un gestionnaire de session. \\ +  * [[manuel:​gnu_linux:​demarrage | Le démarrage sous GNU/Linux]]
-Le rôle de ce programme est de sauvegarder l'​état dans lequel est l'​environnement de l'​utilisateur quand il se déconnecte (principalement quelles sont les applications lancées). \\ +
-Il va ensuite le restaurer lorsque le même utilisateur se reconnecte sur le système.+
  
-Cette restauration comprend notamment le lancement des applications qui étaient lancées lors de la fermeture de session précédente.+===== Processus =====
  
-===== Source magnifique =====+  * [[manuel:​gnu_linux:​processus | Les processus dans le détail.]]
  
-  * [[http://​www.c-sait.net/​cours/​demarrage.php | Le démarrage d'un système GNU/Linux]] 
doc/systeme/gnu-linux.txt · Dernière modification: 19/04/2023 18:58 par bendia

Pied de page des forums

Propulsé par FluxBB