% INF1070 — Utilisation et administration des systèmes informatiques % UQAM — Département d'informatique % Plan de cours — Hiver 2020 * Horaires, locaux et enseignants: * Site web du cours: Responsable(s) du cours ======================= Coordination ------------ Privat, Jean PK-4830 poste 3314 Enseignement ------------- Lord, Mélanie PK-4115 Tsheke Shele, Johnny PK-4115 Les étudiants doivent consulter régulièrement leur courriel UQAM, moyen de communication du professeur avec le groupe-cours. Un [canal de discussion](https://ageei-uqam.slack.com/messages/inf1070/details/) en ligne est aussi disponible pour interagir avec les enseignant, démonstrateurs et les autres étudiants. Description du cours ==================== Ce cours vise à former les étudiants à l'utilisation éclairée des systèmes informatiques et à introduire les concepts de l'administration de ces systèmes. Sommaire du contenu ------------------- Commandes et applications, gestion des processus, entrées-sorties et leurs redirections, tubes et conduites, fichiers de commandes. Système de fichiers hiérarchiques, types de fichiers, utilisateurs et droits, recherche et expressions régulières, fiabilité et sécurité des systèmes de fichiers. Terminologie, concepts de base et principaux protocoles des réseaux téléinformatiques. Sécurité des réseaux et vie privée. Installation, configuration, sécurisation et mise-à-jour d'un système informatique. Installation et configuration de services et de serveurs. Supervision et qualité de service. Modalité d'enseignement ----------------------- Ce cours comporte une séance obligatoire de laboratoire (2 heures). Objectif du cours ================= - Comprendre les bases d'un système informatique, en particulier un système Linux/Unix - Développer des bonnes pratiques d'utilisation d'un système informatique - Développer des bonnes pratiques d'administration d'un système informatique Contenu du cours ================ - **Chapitre 1: Introduction.** Présentation du cours, systèmes informatiques, Unix/Linux, ligne de commande. (Semaine 1) - **Chapitre 2: Introduction au shell.** Manuel en ligne, commandes et arguments, redirections et tubes, développement en caractères spéciaux. (Semaines 2 et 3) - **Chapitre 3: Fichiers.** Répertoires et chemins, manipulation des fichiers, types de fichiers, métadonnées des fichiers, droits et utilisateurs, dates, liens, recherche et filtres, compression, archivage, sauvegarde, fichiers spéciaux, partitions, systèmes de fichiers. (Semaines 3 à 6) - **Chapitre 4: Expressions régulières.** Langage et construction, expressions basiques et étendues, captures, recherche et filtres avancés. (Semaines 7 et 9) - **Chapitre 5: Administration des systèmes.** Services et démons, gestionnaire de paquets, configuration, client et serveur (exemple: le web), sécurité, ssh. (Semaine 10) - **Chapitre 6: Processus.** Caractéristiques et gestion des processus, taches, signaux, priorité. (Semaine 11) - **Chapitre 7: Scripts shell.** Programmes et exécutables, groupes et séquences de commandes, redirections avancées, développements et substitutions, paramètres, variables et variables d'environnement, code de retour et structures de contrôle. (Semaines 12 et 13) - **Chapitre 8: Services et réseau.** Internet, modèle en couche, couches réseau, transport et applications, protocoles, sécurité, réseaux locaux, tunnels. (Semaine 14) Modalités d'évaluation ====================== Outil d'évaluation Pondération Échéance -------------------- ------------- ------------------ Quiz 1 5% Semaine 5 Travail pratique 1 15% Semaines 4 à 7 Examen intra 30% 01 mars 2020 Quiz 2 **0%** Semaine 12 Travail pratique 2 **25%** Semaines 11 à 14 Examen final **0%** annulé Devoir à la maison **25%** Semaine 15 Note: les évaluations ont été modifiés suite aux directives de Détails ------- Les Quiz durent 20 minutes et portent sur toute la matière vue à date. Les examens durent 3h et portent sur toute la matière vue à date. L'examen final portera principalement sur la matière vue depuis l'examen intra. Pour les quiz et examens, aucun document ni aucune ressource électronique n'est autorisé. Le TP1 portera majoritairement sur l'utilisation de commande shells et la manipulation de fichiers. Règles concernant le seuil de passage ------------------------------------- L'étudiant doit obtenir - ~~Une moyenne cumulée et pondérée aux quiz et examens supérieure ou égale à 50%~~ directive annulée - **et** une moyenne générale pondérée (quiz, TP et examens) supérieure ou égale à 50% Si ces seuils ne sont pas atteints, la mention échec sera automatiquement attribuée au cours. Séances de laboratoires ======================= Les laboratoires se font principalement dans un environnement Linux et servent à: - Expérimenter les concepts et outils vus en cours - Approfondir l'utilisation de certains outils - Présenter de la matière technique nouvelle qui ne sera pas vue en classe - Offrir un support pour la réalisation des travaux pratiques Les laboratoires ne sont pas notés mais la participation active aux laboratoires est recommandée. En particulier, de la matière uniquement vue en laboratoire pourra faire partie des évaluations. Matériel et logiciels utilisés ============================== Il est fortement recommandé aux étudiants d'avoir accès à un ordinateur sur lequel ils pourront installer Linux (en système principal, en dual-boot, dans une machine virtuelle, avec docker, etc.). Un laboratoire sera dédié à l'installation d'une distribution Linux. Dans le cadre du cours, nous utilisons des distribution basées sur Debian (dont Ubuntu) mais la plupart des autres distributions Linux à jour seront acceptables. MacOS X n'est pas supporté. Calendrier détaillé du cours ============================ Le calendrier donné à titre indicatif seulement. Semaine 1 --------- - Chapitre 1 : Introduction à l'utilisation et à l'administration des systèmes informatiques - Pas de laboratoires la première semaine Semaine 2 --------- - Chapitre 2: Introduction au shell (partie 1) - Laboratoire: Introduction à Linux et ses outils Semaine 3 --------- - Chapitre 2: Introduction au shell (partie 2) - Chapitre 3: Fichiers (partie 1) - répertoires et manipulation - Laboratoire : Installer une machine virtuelle Semaine 4 --------- - Chapitre 3: Fichiers (partie 2) - types, taille et droits - Distribution du sujet du TP1 - Laboratoire: Commandes shell Semaine 5 --------- - Chapitre 3: Fichiers (partie 3) - dates et liens - Quiz noté en classe - Laboratoire: Manipulation des fichiers Semaine 6 --------- - Chapitre 3: Fichiers (partie 4) - chercher, compression et archivage, fichiers spéciaux et partitions - Correction du quiz - Laboratoire: Chercher, filtrer, couper Semaine 7 --------- - Chapitre 4: Expressions régulières (partie 1) - expressions régulières basiques (BRE) - Laboratoire: Expressions régulières - Remise du TP1 Semaine 8 --------- - Examen intra commun (pas de cours) - Laboratoire de révision Semaine 9 --------- - Chapitre 4: Expressions régulières (partie 2) - expressions régulières étendues (ERE) - Correction de l'examen - Laboratoire: Plus d'expressions régulières - Attention à la date limite d'abandon sans mention d'échec Semaines 10 et 11 ----------------- - Décalées (COVID-19) Semaine 12 ---------- - Chapitre 5: Administration des systèmes - Laboratoire: Administration des systèmes Semaine 13 ---------- - Chapitre 6: Processus - Laboratoire: Processus - Distribution du sujet du TP2 Semaine 14 ---------- - Chapitre 7: Scripts shell (partie 1) - programmes, commandes et redirections avancées - Quiz noté en classe - Laboratoire: shell avancé et scripts Semaine 15 ---------- - Chapitre 7: Scripts shell (partie 2) - développement, substitutions, paramètres et variables - Laboratoire: plus de scripts Médiagraphie ============ Obligatoire ----------- - [Site web du cours](https://info.uqam.ca/~privat/INF1070/), incluant entre autres les diapositives utilisées en classe. Ressources complémentaires -------------------------- - [The Linux Command Line](http://linuxcommand.org/tlcl.php), par William Shotts, 4e édition, 544 pages. Disponible en ligne, seulement en anglais. - [The Debian Administrator's Handbook](https://debian-handbook.info/), par Raphaël Hertzog and Roland Mas, 512 pages. Disponible en ligne. Existe en français [Le cahier de l'administrateur Debian](https://debian-handbook.info/get/#french). - [UNIX and Linux System Administration Handbook](https://www.admin.com/), par Evi Nemeth, Garth Snyder, Trent R. Hein, Ben Whaley et Dan Mackin, 1232 pages. Disponible à la bibliothèque, en anglais. - [Les cahiers du débutant, Debian sans se prendre la tête](https://dflinux.frama.io/lescahiersdudebutant/), par l'Équipe 3HG, 328 pages. Disponible en ligne en français.