Aller au contenu

Ensimag 1A (niv. L3) - Unix: Bienvenue ! ✨

Bienvenue sur la page du cours d'Introduction à UNIX ! Vous trouverez ici toutes les ressources nécessaires pour suivre ce cours, ainsi que quelques documents annexes permettant d'approfondir certains concepts.

Cette page existe en deux copies:

Buts pédagogiques 🞋

Cet enseignement est construit pour vous faire apprendre les fondamentaux des systèmes d'exploitations en les pratiquant, et Unix/Linux en particulier. À votre rythme. Néanmoins, il n'y a que 7h30 de TP encadrés en septembre. Il sera important de continuer à pratiquer pendant le reste de votre cursus. La deuxième partie de janvier traite des aspects plus avancés qui demande d'avoir déjà de l'expérience.

⛏ Les bases creusées dans l'ensemble de ce cours sont les mêmes pour tout le monde. C'est leurs profondeurs qui varient suivant votre niveau de départ.

  • comprendre les fondamentaux d'un système d'exploitation de la famille Unix, en particulier, ses principaux objets: la gestion des processus (les programmes que vous exécutez), les fichiers, les répertoires, les liens symboliques, les droits, le parallélisme d'exécution, l'environnement, le vocabulaire, les opérations possibles et la façon de les exprimer.
  • maîtriser les commandes de base d'UNIX pour savoir manipuler efficacement ses principaux objets (ls, cd, mkdir, mv, rm, ln, ps, kill, cat, echo, grep, |, >, <, &, C-c, C-z, bg, fg)
  • savoir utiliser efficacement votre terminal, l'outil informatique central que vous utiliserez tout le temps. Ce point parait anecdotique, mais comme vous l'utiliserez tout le temps, chaque gain sera très rentable (joker, historique, redirection, pipe, ^Z vs ^C, raccourcis (recherche, déplacement, modifications))
  • automatiser votre travail avec Bash
  • les manipulations automatiques de textes, à la fois dans les contenus des fichiers et dans les noms des fichiers (regexp, sed)
  • gérer l'histoire de vos fichiers avec Git
  • travailler à distance avec Ssh et scp
  • Les éditeurs de texte universels: les immortels Vim et Emacs, ces éditeurs dont certains concepts, et leurs raccourcis clavier, sont omniprésents, et VS Code l'éditeur universel à la mode du moment (durée de vie moyenne de ces prédécesseurs 4-5 ans, son prédécesseur Atom, son frère jumeau technique, est mort en 2021).
  • Divers: configurer votre lecteur d'émail; imprimer; installer Ubuntu sur votre laptop perso; X11; vpn, tmux, etc.
  • Que tous vos comptes fonctionnent (⛐ vous avez en fait plusieurs comptes avec la même authentification. Chacun de ces comptes peut avoir un souci de connexion isolé): login, email, vpn, intranet, gitlab, chamilo
  • Quelques points annexes rigolos en autonomie: mutt, git (modèle de données, flot, etc.), tmate, etc.

Déroulement des TP et calendrier 📅

Ce cours d'introduction à UNIX est composé de trois séquences temporelles :

  1. le stage UNIX (début septembre), dont le but est d'introduire ou approfondir quelques concepts importants de l'informatique et les outils essentiels d'UNIX. Il doit vous permettre de maîtriser les bases de cet environnement afin d'être autonomes et efficaces, d'abord en TP au cours de vos années d'études, puis dans votre vie professionnelle. Il est constitué d'un livre électronique et de petits exercices de TPs à réaliser de façon individuelle (une seule personne par machine). N'hésitez pas à poser des questions aux enseignants ou à répondre à celles de vos camarades !

  2. La Linux Install Party (mi septembre), pour vous aider à installer Linux sur votre laptop personnel. L'installation en elle-même vous impose de comprendre . Le but est de vous permettre une utilisation quotidienne facile de Linux sur votre machine.

  3. la partie UNIX avancé (début janvier), qui comme son nom l'indique, va plus loin en présentant de manière plus poussée certains outils ou notions, comme les scripts shell, git ou la notion d'environnement. Là encore, un certain nombre de sujets de TP vous sont proposés.

Côté calendrier, le stage UNIX se déroule dans la période dite du stage de rentrée (= 3 premières semaines de cours en septembre), sur 5 séances (+2 séances bonus pour l'install party). La partie UNIX avancé a lieu au mois de janvier et s'étale sur 5 séances.

Evaluation

L'évaluation de ce cours porte sur un examen individuel sur machine. Cet examen vous demandera de reproduire un certain nombre de manipulations déjà vues lors du stage UNIX, et de reporter vos réponses sur une interface web dédiée.