Travail pratique 1

Énoncé

Ce court document contient l'énoncé du travail pratique 1 donné dans le cadre du cours INF1070 Utilisation et administration des systèmes informatiques au trimestre d'hiver 2019 de l'Université du Québec à Montréal. Ce TP est commun aux 3 groupes.

L'objectif de ce premier travail pratique est de vous familiariser avec une utilisation avancée du shell dans un contexte de jeu sérieux, basé sur le jeu GameShell, développé principalement par Pierre Hyvernat, de l'Université de Savoie Mont Blanc.

Le travail peut être réalisé seul ou en équipe d'au plus 2 étudiants.

Dans un premier temps, vous devez télécharger l'archive du jeu sérieux disponible ici:

Note: il s'agit d'une archive différente de celle des laboratoires. Elle contient des exercices conçus spécialement pour le TP1.

Note 2: nous regrettons que GameShell n'ai pas été développé de façon très portable. Il est prévu pour fonctionner sur les machine Ubuntu disponibles dans les laboratoires du PK et devrait fonctionner sur la plupart des distributions Linux à jour (natif ou dans une VM). macOS n'est pas supporté.

Travail à réaliser

L'objectif du travail consiste à compléter chacune des missions présentées et à expliquer votre démarche pour résoudre les problèmes en remplissant le gabarit fourni sous le nom solutions-tp1.md. Le gabarit sera disponible à la racine du jeu lorsque vous le lancerez pour la première fois.

Utilisation de GameShell

Comme vous l'avez fait lors des laboratoires, vous devez télécharger l'archive (par exemple avec la commande wget):

$ wget https://gitlab.com/ablondin/inf1070-labos/raw/master/tp1/tp1_inf1070.tar

Désarchiver (par exemple avec la commande tar) et entrer dans le répertoire:

$ tar -xf tp1_inf1070.tar
$ cd tp1_inf1070

Ensuite, vous pouvez lancer le jeu à l'aide de la commande

$ ./start.sh

Note La version courante est la 1.1. Elle est affichée au lancement de GameShell. Si rien n'est affiché, télécharger à nouveau l'archive.

TP1 INF1070 UQAM - version 1.0 (28 janvier 2019)

En tout temps, vous pouvez utiliser les commandes suivantes:

  • gash help : affiche une petite liste des commandes
  • gash HELP : affiche une liste plus complète des commandes
  • gash show : affiche l'objectif de la mission courante
  • gash check : vérifie si la mission actuelle est validée
  • gash restart : recommence la mission courante

En tout temps, prenez l'habitude d'entrer la commande

$ gash save

pour sauvegarder une copie de votre fichier solutions-tp1.md dans votre répertoire personnel.

Si vous devez arrêter le jeu avant de l'avoir complété, il suffit d'entrer

$ exit

Lorsque vous redémarrerez, le fichier solutions-tp1.md sera toujours disponible.

Missions à résoudre

Chaque mission est indépendante mais le niveau de difficulté est plus ou moins croissant.

La commande gash check vous permet de valider une mission. Toutefois:

  • l'objectif n'est pas de satisfaire gash check à tout prix ;
  • l'important est de détailler votre solution dans le document solutions-tp1.md ;
  • une solution incomplète qui ne satisfait pas gash check est préférable à pas de solution du tout ;
  • certaines missions n'ont pas de vérification (gash check passe directement à la mission suivante)

Si vous êtes bloqués sur une mission en particulier, il est possible de démarrer la prochaine mission en entrant

$ ./start.sh -m <n>

<n> est le numéro de la mission souhaitée, entre 1 et 19.

Notez que même si vous pouvez faire la mission 1, elle n'est pas comptabilisée dans le barème, car elle est déjà résolue, à titre d'exemple, dans le fichier solutions-tp1.md.

Modalités de remise

Votre travail doit être remis au plus tard le 22 février 2019 à 23h55 par l'intermédiaire de la plateforme Moodle. Vous ne devez remettre qu'un seul fichier nommé exactement solutions-tp1.md. Une pénalité de 2 points par heure de retard sera appliquée.

Plus précisément, rendez-vous sur la page Moodle de votre cours et cliquez sur le lien illustré ci-bas

Capture d'écran

Ensuite, il suffit de remplir le formulaire pour y déposer votre fichier solutions-tp1.md. Notez que vous pouvez faire autant de dépôt que vous le souhaitez, seule la dernière version sera prise en considération.

Aucune remise par courriel ne sera acceptée, peu importe le motif. Plus précisément, si vous envoyez votre travail par courriel, il sera considéré comme non remis. Il est donc de votre responsabilité de vous assurer d'être capable de faire une remise par l'intermédiaire de Moodle quelques jours avant la remise.

Si vous êtes en équipe de deux, un seul des deux étudiants doit effectuer la remise.

Le format Markdown

Le gabarit solutions-tp1.md que vous allez remettre doit respecter le format Markdown, qui est un format texte à balisage léger. Le site officiel qui décrit ce format se trouve ici.

Faites bien attention de respecter le format actuel du gabarit et d'utiliser une syntaxe comparable à celle employée dans la mission 1, dont la solution complète est décrite pour vous donner un exemple de ce qui est attendu.

Barème de correction

Les points suivants seront considérés lors de l'évaluation:

  • Votre travail sera calculé sur un total de 100 points.
  • La mission 01 est déjà complétée.
  • Les missions 02 à 09 valent 5 points chacune.
  • Les missions 10 à 19 valent 6 points chacune.
  • pour avoir la totalité des points d'une mission, il faut : avoir les bonnes commandes et donner une explication détaillée de la démarche suivie pour chaque mission
  • Une pénalité pouvant aller jusqu'à 50 points pourra être appliquée si la qualité générale du fichier remis n'est pas adéquate (qualité des phrases, format du fichier, utilisation de Markdown, fautes de français, etc.)
  • Les missions résolues mais sans explication et justification ne valent aucun points.
  • Tel que mentionné plus haut, une pénalité de 2 points par heure de retard sera appliquée.