CER SCHMITT Mathieu Prosit Linux Objectifs : Savoir appréhender une nouvelle commande ! Savoir se débrouiller avec la console. Définition des mots-clés : Hierarchie de Chomsky : Chomsky s’est rendu célèbre en étudiant différentes sortes de langages formels et leur capacités respectives à intégrer des caractéristiques intrinsèques du langage humain. La hiérarchie de Chomsky décompose les grammaires formelles en catégories de pouvoir d’expression croissant, c’est-à-dire en groupes successifs pouvant chacun générer une variété de langages plus large que le groupe précédent. Il est intéressant de noter que, d’après Chomsky, certains aspects du langage humain nécessitent de recourir à une grammaire formelle plus complexe (en termes de hiérarchie chomskyenne) que pour d’autres. Morphologie : La morphologie est la branche de la linguistique qui étudie la façon dont les morphèmes se combinent pour former des lemmes (par dérivation, composition, flexion, redoublement et/ou affixation). Fichier : Un fichier informatique est une unité informationnelle physiquement stockée sur un support de mémoire de masse permanent (disque dur par exemple). Un fichier a généralement comme attributs : un nom ; un chemin d'accès ; une taille mesurée en octets ; une date de création et une de dernière modification Processus : Un processus (en anglais, process), en informatique, est défini par : un ensemble d'instructions à exécuter (un programme) ; un espace mémoire pour les données de travail ; éventuellement, d'autres ressources, comme des descripteurs de fichiers, des ports réseau, etc. Ihminen : Veut dire Homo-Sapiens. Unix : UNIX™ est le nom d'un système d'exploitation multitâche et multiutilisateur créé en 1969, à usage principalement professionnel, conceptuellement ouvert et fondé sur une approche par laquelle il offre de nombreux petits outils chacun dotés d'une mission spécifique. Commande d'exploitation : nice : nice (fixe un niveau de priorité pour une tâche, de +19 (le moins prioritaire) à -20) Dennis Ritchie : Dennis MacAlistair Ritchie (9 septembre 1941) est un des pionniers de l'informatique moderne, inventeur du langage C et développeur de Unix. Ken Thompson : Instigateur du langage B. Axe de recherche : o Etudier les processus et les commandes (terminal) ps Cette commande sert à lister les processus et leurs propriétés. Sous Unix, chaque tâche s’exécute au sein d’un ou plusieurs processus. Chaque processus a un PID (Processus ID) qui lui est propre. Si un processus plante, les autres processus ne sont pas affectés. On peut tuer un processus avec la commande kill ou killall. – ps : liste les processus de l’utilisateur qui exécute la commande qui sont rattachés au terminal depuis lequel la commande est exécutée. – ps -u : liste les processus de l’utilisateur qui exécute la commande quel que soit le terminal de rattachement. – ps -au : liste les processus de tous les utilisateurs quel que soit le terminal de rattachement. – ps -aux : liste les processus de tous les utilisateurs même ceux qui sont rattachés à aucun terminal. Cette commande liste donc l’intégralité des processus du système. Elle est équivalente à la commande ps -A – ps -faux : liste tous les processus du système en les regroupant par enchaînement d’exécution. kill et killall Les commandes kill et killall servent à envoyer des signaux à des processus. – kill 42 : envoie le signal TERM au processus dont le PID est 42. En gros, on demande au processus 42 de se terminer tout seul. Bien sur, on ne peut terminer que les processus que l’on a soi-même lancé, sauf le root qui peut faire ce qu’il veut avec tous les processus. – kill -9 42 : envoie le signal KILL au processus dont le PID est 42. Quand un processus est planté, c’est le seul moyen de l’arrêter, car la commande précédente n’aura pas d’effet. – killall vlc : envoie le signal TERM au processus dont le nom est vlc. Cette commande est à répéter plusieurs fois s’il y a plusieurs processus qui portent le nom vlc. killall -9 vlc : envoie le signal KILL au processus dont le nom est vlc. nice et renice Les commandes nice et renice servent à gérer la priorité des processus. La priorité d’un processus est un nombre entier relatif compris entre -20 (priorité haute) et 19 (priorité basse). Par défaut, les programmes lançés par les utilisateurs du système ont la priorité 0 (priorité moyenne). Certains services sont lançés par le système avec une priorité différente de 0. Pour voir la priorité des processus lançés, utilisez le programme top : il vous affiche la liste des processus classés par utilisation du processeur et actualisée toutes les 5 secondes. La quatrième colonne intitulée NI indique la priorité. Pour quitter top, appuyez sur q. Seul le root a le droit de lancer des processus avec une priorité comprise entre -20 et -1 inclus. Pour lancer un programme avec une priorité X (X compris entre -20 et 19) : # nice -n X nom_du_programme Pour changer la priorité d’un processus déjà lancé, il faut être soit root soit le propriétaire du processus et connaître son PID : # renice X PID_du_processus Revoir les commandes de bases cf. Prosit précedent. Etudier les dossiers système : Pour assurer la compatibilité et la portabilité, les systèmes Linux respectent l'unique norme FHS (File Hierarchy Standard). La hiérarchie de base est la suivante : / la racine, elle contient les répertoires principaux /bin contient des exécutables essentiels au système, employés par tous les utilisateurs (par exemple, les commandes ls, rm, cp, chmod, mount, ...) /boot contient les fichiers permettant à Linux de démarrer /dev contient les points d'entrée des périphériques /etc contient les commandes et les fichiers nécessaires à l'administrateur du système (fichiers passwd, group, inittab, ld.so.conf, lilo.conf, ...) /etc/X11 contient les fichiers spécifiques à la configuration de X (contient XF86Config par exemple) /etc/opt contient les fichiers de configuration spécifiques aux applications installés dans /opt /home répertoire personnel des utilisateurs /lib contient des bibliothèques partagées essentielles au système lors du démarrage /mnt contient les points de montage des partitions temporaires (cd-rom, disquette, ...) /opt contient des packages d'applications supplémentaires /root répertoire de l'administrateur root /sbin contient les binaires système essentiels (par exemple la commande adduser) /tmp contient les fichiers temporaires /usr Hiérarchie secondaire /usr/X11R6 ce répertoire est réservé au système X version 11 release 6 /usr/X386 utilisé avant par X version 5, c'est un lien symbolique vers /usr/X11R6 /usr/bin contient la majorité des fichiers binaires et commandes utilisateurs /usr/include contient les fichiers d'en-tête pour les programmes C et C++ /usr/lib contient la plupart des bibliothèques partagées du système /usr/local contient les données relatives aux programmes installés sur la machine locale par le root /usr/local/bin binaires des programmes locaux /usr/local/games binaires des jeux locaux /usr/local/include fichiers d'en-tête C et C++ locaux /usr/local/lib Bibliothèques partagées locales /usr/local/sbin binaires système locaux /usr/local/share hiérarchie indépendante /usr/local/src fichiers sources locaux /usr/sbin contient les fichiers binaires non essentiels au système réservés à l'administrateur système /usr/share réservé aux données non dépendantes de l'architecture /usr/src contient des fichiers de code source /var contient des données variables Editeur de fichiers en ligne de commandes Il existe différents types d'editeur en console : -vim Réponses aux Hypothèses : Faux. Ihminen est une commande qui ressemble à "man". Vrai. Le terminal agit sur "Unix". Vrai. Le projet de Linus donnera Linux. Vrai. Les systèmes d’exploitation sont basés sur la hiérarchie de Chomsky. Vrai. On peut entièrement gérer le système, les processus et les fichiers via le terminal. Vrai. On peut planifier des tâches via le terminal. Vrai. La hiérarchie de Chomsky définit l’arborescence du système. Vrai. La commande pwd permet de savoir où on est dans l’arborescence. Faux. La commande "Nice" permet de gérer la priorité des processus et est noté de 0 à 20. Vrai. Le terminal graphique est une adaptation du terminal. Il est entièrement personnalisable. Vrai. Linux est finlandais.