Case départ#
Cette page décrit comment accéder au matériel pédagogique (cours, TP) avec les logiciels requis pour travailler dessus interactivement.
Résumé si vous connaissez déjà bien la procédure
Pour travailler en salle de TP
Pour travailler en salle de TP :
Sous Linux, ouvrez un terminal et lancez le tableau de bord du cours avec
info-111 start
.
Pour travailler sur le service JupyterHub@Paris-Saclay :
Authentifiez vous sur JupyterHub@Paris-Saclay;
Ouvrez le tableau de bord du cours.
Pour travailler en local sur votre ordinateur
Suivez les instructions pour installer les logiciels. Puis procédez comme en salle de TP.
Généralités#
Chaque semaine, vous téléchargerez un devoir, c’est-à-dire un
répertoire contenant le matériel pédagogique: sujet de TD, de TP,
éventuellement documents de cours. En semaine 1, ce sera le devoir
Semaine1
qui ira dans le répertoire ~/ProgImperative/Semaine1
. Il
y aura aussi un devoir pour le projet.
Vous déposerez ensuite régulièrement votre devoir. Cela aura pour effet de sauvegarder votre travail sur la forge logicielle GitLab de l’université. Cela vous permettra de le transférer ensuite facilement entre les différents endroits où vous travaillerez dessus (salles de TP, service JupyterHub depuis chez vous, …). Pour certains TP (tous?), le dépôt vous permettra d’obtenir un retour automatique sur votre travail.
Cela permettra aussi à vos enseignants de se faire une idée de l’avancement général du groupe. Cela pourra servir pour des TP notés (vous serez prévenu à l’avance par votre enseignant de TP).
Le matériel pédagogique est disponible pour tous, inscrits officiellement au cours ou auditeurs libres. En revanche, le dépôt sur la forge GitLab de l’université Paris Saclay n’est possible que pour les étudiants et personnels de l’université.
À l’attention des redoublants#
Note
La première fois que vous accéderez aux salles de TP et la première fois que vous utiliserez le service JupyterHub, vous devrez déplacer vos devoirs de l’an dernier afin qu’ils ne se mélangent pas avec ceux de cette année.
Dans les instructions ci-dessous, avant d’ouvrir le tableau de bord, ouvrez un terminal, et tapez les commandes suivantes :
mkdir -p 2021-2022
mv ProgImperative 2021-2022
En cas de doute, demandez à votre enseignant.
Étape 1 : Accéder à l’environnement de travail#
Pour travailler sur les devoirs, vous avez plusieurs options, listées ci-dessous par ordre décroissant de préférence.
Option 1 : Sur les ordinateurs des salles de TP
Utiliser les logiciels installés en local, sous Linux.
Démarrez votre ordinateur en choisissant Linux ou Ubuntu (et non Windows) lorsque cela est demandé au démarrage.
Ouvrez un terminal. Pour cela vous pouvez utiliser le menu principal du système (bouton tout en bas à gauche de l’écran) et cliquer sur « Terminal ».
Ouvrez le tableau de bord du cours en tapant la commande suivante dans le terminal et en validant avec Entrée :
info-111 start
Option 2 :Avec le service JupyterHub@Paris-Saclay, depuis tout autre ordinateur ou tablette connectée à Internet
Avertissement
Sauf instruction contraire de votre enseignant, n’utilisez pas le service JupyterHub@Paris-Saclay lorsque vous travaillez sur un ordinateur des salles de TP, cela afin de ne pas surcharger le service.
Ouvrez la page de connexion du service JupyterHub@Paris-Saclay et cliquez sur «Se connecter». Dans la boîte de sélection d’établissement, tapez
Saclay
puis sélectionnezUniversité Paris-Saclay
. Utilisez votre identifiant prenom.nom et votre mot de passe de l’université (Adonis).Si vous avez pu vous connecter, c’est tout bon, vous pouvez fermer l’onglet de votre navigateur. Si non, prévenez votre enseignant.
Ouvrez le tableau de bord du cours.
Option 3 : Avec le «service de secours» Binder
Avertissement
Le lancement peut prendre quelques minutes.
Binder est un service en ligne avec des sessions anonymes et temporaires. Il est donc impératif de déposer ou télécharger son travail régulièrement, sous peine de le perdre!
Le répertoire de travail est à la racine. Il convient donc de remplacer, dans les instructions du terminal,
~/Info111
par~/
.
Option 4 : Sur votre machine personnelle, en local
Voir la rubrique «Utilisation sur votre propre machine» de cette page.
Option 5 : Accès à distance aux salles de TP (pour les plus expérimentés)
Les instructions ci-dessous vous indiquent comment utiliser ssh
pour
ouvrir un terminal à distance sur les salles de TP, voire y lancer
Jupyter. Elles supposent ici que vous ayez accès à un terminal
(GNU/Linux, MacOS, Windows+Cygwin). Elles
s’adressent aux plus expérimentés d’entre vous, ainsi qu’aux
enseignants. Nous sommes toujours preneurs de suggestions
d’amélioration, mais nous n’assurons pas de support.
Installation de ssh
Sous Linux / Ubuntu ou si vous utilisez le «Linux subsystem» de Windows (voir la page dédiée), ouvrez un terminal et lancez:
apt install openssh-client
Sous Windows: vous pouvez installer Putty
Sous MacOS: chercher les instruction sur internet
Depuis le service JupyterHub: ssh y est déjà installé
Ouverture d’un terminal distant
Ouvrez un terminal sur votre ordinateur ou depuis JupyterHub.
Lancez la commande suivante, en remplaçant prenon.nom par votre identifiant Adonis:
ssh prenom.nom@tp-ssh1.dep-informatique.u-psud.fr
Vous avez maintenant accès à toutes les commandes usuelles du terminal pour travailler sur votre dossier personnel en salle de TP. Cela peut par exemple permettre de lancer un dépôt que vous auriez oublié de faire.
Vous pouvez aussi lancer des applications graphiques en rajoutant
l’option -X
. Cependant cela exige une bonne bande passante et le
plus souvent c’est trop lent pour être réellement utilisable.
Lancement de Jupyter à distance
Lancez les commandes suivantes depuis le terminal d’origine:
port=8899
ssh -L $port:localhost:$port prenom.nom@tp-ssh1.dep-informatique.u-psud.fr info-111 jupyter lab --no-browser --port $port
Ouvrez votre navigateur à l’URL affichée, qui ressemblera à:
http://127.0.0.1:8899/?token=b627....253cd
Étape 2 : Téléchargement et ouverture des feuilles d’exercices#
À ce stade, vous devriez être sur une feuille nommée « Tableau de bord du cours ». Suivez les instructions pour faire apparaître le tableau de bord qui sera similaire à celui-ci :
En utilisant le tableau de bord, téléchargez puis ouvrez le devoir de la semaine (par exemple
Semaine1
).Suivez les instructions qu’il contient.
Dépôt des feuilles d’exercices#
Accédez au tableau de bord du cours comme ci-dessus, et déposez votre travail.
Bonnes pratiques#
Vos répertoires personnels en salle de TP et sur le service
JupyterHub@Paris-Saclay sont distincts. Si vous travaillez sur un
devoir (par exemple Semaine1
) de part et d’autre, il y a risque de
conflit entre les deux versions.
Bonnes pratiques :
lorsque vous commencez à travailler, téléchargez systématiquement votre devoir pour vous assurez que vous travaillez bien sur la dernière version.
déposez régulièrement votre travail, et en particulier systématiquement lorsque vous avez fini de travailler.
En cas de divergence ou de conflit#
Le dépôt de votre travail sur GitLab
échouer en indiquant qu’il y a
des modifications sur votre dépôt GitLab
que vous n’avez pas en
local.
Voici deux scénarios types où cela peut se produire :
Vous travaillez sur
Semaine1
sur JupyterHub et vous déposez votre travail à la fin. Plus tard, vous allez en salle de TP et vous travaillez surSemaine1
, mais sans y avoir au préalable retéléchargé votre devoir. Vous avez alors deux versions de votre travail qui ont divergé. Les bonnes pratiques ont pour objectif d’éviter cela.Vous téléchargez votre sujet et travaillez dessus, mais votre premier dépôt n’intervient que quelques temps plus tard. Entre temps, le sujet a été mis à jour et la mise à jour s’est propagée à votre dépôt personnel.
Lancez alors un téléchargement. Il y a des chances que cela se passe bien : les modifications sont automatiquement fusionnées. Dans le cas contraire, il vous sera proposé de forcer la mise à jour avec une commande dans le terminal comme :
cd ~/ProgImperative
./course.py fetch Semaine1 --force
Votre dossier Semaine1
sera alors renommé avec la date et
l’heure Semaine1-2021-...
, et la version déposée sur GitLab sera
téléchargée dans Semaine1
. Vous devez alors résoudre le conflit :
consultez les documents dans les deux dossiers et faites le nécessaire
pour que la version que vous souhaitez soit dans Semaine1
; vous
pouvez par exemple utiliser le navigateur de fichiers de Jupyter pour
déplacer les fichiers sur lesquels vous avez récemment travaillé
depuis Semaine1-2021-...
dans Semaine1
. Il vous reste à déposer à
nouveau.
Instructions avancées#
Cette section décrit comment utiliser le terminal pour gérer vos devoirs (téléchargement, dépôt, …) plutôt que d’utiliser le tableau de bord. Vous découvrirez au fur et à mesure de l’année tous les avantages d’utiliser le terminal.
Ouvrir un terminal#
Option 1 : Sur les ordinateurs des salles de TP#
Vous pouvez utiliser le menu principal du système (bouton tout en bas à gauche de l’écran) et cliquer sur « Terminal ».
Option 2 : depuis JupyterLab (par exemple avec le service JupyterHub)#
Utilisez le menu
Fichier -> Nouveau -> Terminal
.
Télécharger ou mettre à jour un devoir avec le terminal#
Après avoir ouvert un terminal, tapez les commandes suivantes,
en validant avec Entrée
après chacune d’entre elles.
Attention: ces commandes doivent être tapées avec le plus
grand soin: les majuscules, les espaces, les symboles sont tous
importants.
Si vous n’avez pas encore de répertoire
ProgImperative
:cd git clone https://gitlab.dsi.universite-paris-saclay.fr/Info111/ComputerLab.git ProgImperative
Téléchargez le devoir :
cd ~/ProgImperative ./course.py fetch Semaine1
Si une authentification vous est demandée, utilisez vos identifiants Adonis
prenom.nom
, comme GitLab. Il est normal que rien ne s’affiche quand vous tapez votre mot de passe. Tapez-le simplement en entier puis appuyez sur Entrée.
Votre terminal devrait ressembler à ceci:
Le devoir a été téléchargé dans le répertoire
ProgImperative/Semaine1
de votre répertoire personnel. Vous pouvez le vérifier avec la commande:ls ~/ProgImperative/Semaine1
Vous pouvez maintenant naviguer – par exemple avec le navigateur de fichiers de Jupyter – jusqu’au répertoire
ProgImperative/Semaine1
et ouvrir le fichierindex.md
pour commencer à travailler.
Déposer votre travail avec le terminal#
Dans un nouveau terminal, tapez les instructions suivantes pour aller dans le répertoire
ProgImperative
et déposer votre travail. RemplacezSemaine1
ci-dessous par le nom du devoir etMI1
par votre groupe de TD :cd ~/ProgImperative ./course.py submit Semaine1 MI1
Une fois votre travail déposé, vous pouvez ouvrir l’adresse affichée (clic-droit, Ouvrir le lien) pour consulter ce que vous avez déposé sur GitLab. Votre travail est maintenant sauvegardé et vous pouvez y accéder depuis chez vous.
Lancer Jupyter Lab#
Ouvrez un nouveau terminal.
Tapez la commande:
info-111 jupyter lab
Cette application ouvre une fenêtre dans votre navigateur web avec un navigateur de fichiers.
Attention: le terminal qui vous a permis de lancer Jupyter doit rester ouvert pendant toute votre utilisation de Jupyter! Le mieux est de le minimiser (sans le fermer!). De plus tant que Jupyter est lancé, il n’est pas possible de taper d’autres commandes dans ce terminal. Si vous avez à nouveau besoin d’un terminal par la suite, il faudra utiliser un autre terminal.
Commandes de base dans le terminal#
Lister les fichiers :
ls
Se déplacer dans un répertoire XXX
cd XXX
Créer un répertoire XXX
mkdir XXX
Astuces
Flèches vers le haut et le bas pour naviguer dans l’historique des commandes
Complétion automatique pour aller plus vite, au lieu de taper le nom d’un fichier ou répertoire en entier, vous pouvez indiquer le début du nom et essayer de le compléter avec la touche
Tab
(tabulation, à gauche de la touche A). Si plusieurs fins sont possibles elles vous seront proposées. Ici, pourIntroScienceDonnees
, tapezPro
puis la toucheTab
.