Atelier individuel Linux 101 Frédérick Lefebvre & Maxime Boissonneault frederick.lefebvre@calculquebec.ca U. Laval - Janv. 2014!1
!2 Se connecter à Colosse colosse.calculquebec.ca SSH est un protocole pour ouvrir un terminal sécurisé sur un système distant Sur Linux et Mac OS Intégré au système sous la forme de la commande ssh dans le terminal: $ ssh user1@colosse.calculquebec.ca Sur Windows Télécharger Putty: http://goo.gl/f1wuee!
!3 Commandes de bases man : Affiche la documentation d une commande pwd : Afficher votre emplacement actuel cd : Changer de répertoire ls : Lister les fichiers et sous-répertoire du répertoire courant cp : Copier un fichier mv : Déplacer/Renommer un fichier rm : Effacer un fichier mkdir : Créer un répertoire tar : Créer ou ouvrir une archive
!4 Commandes de bases - Exemples ls [Répertoire] cd [DESTINATION] cp [Source] [Destination] rm [Fichier1] [Fichier2] Astuce 1 : L «*» peut remplacer ou compléter un nom de fichier comme paramètre à une commande. «*» signifie «tous» alors que «fichier*» signifie tout ce qui commence par «fichier». mkdir [Répertoire1] [Répertoire2] Astuce 2 : La plupart des commandes qui modifient des fichiers n opèrent par défaut sur des répertoires. Il faut leur ajouter un paramètre pour leur indiquer d opérer de manière récursive. Utiliser «man» pour trouver le bon paramètre (ex: «man cp»)
!5 Exercice #1 - Commandes de bases 1. Lister le contenu du répertoire /clumeq/formation/linux101 2. Créer un répertoire «Linux101» dans votre répertoire personnel ($HOME) 3. Copier le contenu de /clumeq/formation/linux101/ dans votre répertoire personnel ($HOME/Linux101) 4. Aller dans le sous-répertoire «$HOME/Linux101/exercice1» 5. Renommer «torename.txt» en «renamed.txt» 6. Supprimer «toremove.txt» 7. Supprimer «directory-to-remove»
Calcul Québec - Université Laval!6 Solutions #1 - Commandes de bases 1. Lister le contenu du répertoire /clumeq/formation/linux101 $ ls /clumeq/formation/linux101 2. Créer un répertoire «Linux101» dans votre répertoire personnel ($HOME) $ mkdir Linux101 3. Copier le contenu de /clumeq/formation/linux101/ dans votre répertoire personnel ($HOME/introlinux) $ cp -r /clumeq/formation/linux101/* Linux101/ 4. Aller dans le sous-répertoire «$HOME/Linux101/exercice1» $ cd $HOME/Linux101/exercice1 5. Renommer «torename.txt» en «renamed.txt» $ mv torename.txt renamed.txt 6. Supprimer «toremove.txt» $ rm toremove.txt 7. Supprimer «directory-to-remove» $ rm -r directory-to-remove
!7 (Dé)Compression de fichiers Formats les plus courants : «.tar.gz» et «.zip» «.tar.gz» (ou «.tgz») Archive tar + compression gzip Extraire: $ tar -xfvz fichier.tar.gz Astuce 3 : Aussi disponible: archive tar + compression bzip2 (.tar.bz2). Remplacer «z» par «j» dans les commandes Voir «man tar» pour d autres options. Créer: $ tar -cfvz fichier.tar.gz <fichiers ou répertoires> «.zip» Extraire: $ unzip fichier.zip Créer : $ zip -r fichier.zip <fichiers ou répertoires>
!8 Transfert de fichiers sftp est une extension du protocole SSH offrant une interface interactive de transfert de fichiers semblable à FTP. scp est une autre extension du protocole SSH pour transférer des fichiers de façon noninteractive (remplacement de rcp).
Dans Filezilla, spécifier port = 22 Calcul Québec - Université Laval!9 Sur Linux et Mac OS Transfert de fichiers scp et sftp sont disponibles sur la ligne de commande via le terminal $scp fichier-à-transférer.tar user1@colosse.calculquebec.ca: Sur Windows, Linux et MacOS winscp Cyberduck Filezilla
!10 Exercice #2 - Transfert de fichiers 1. Transférer un ou plusieurs fichiers de votre poste vers Colosse dans le sous-répertoire «exercice2» 2. Compresser vos fichiers en une archive «.tar.gz» 3. Dans le répertoire $HOME/Linux101/exercice2, décompresser les fichiers SQUACK_2.0.0.zip et gsl-1.15.tar.gz
!11 Solutions #2 - Transfert de fichiers 1. Transférer un ou plusieurs fichiers de votre poste vers Colosse dans le sous-répertoire «exercice2» $ scp -r un-repertoire user1:colosse.calculquebec.ca:exercice2: 2. Compresser vos fichiers en une archive «.tar.gz» $ cd exercice2 ; tar cfvz exercice2.tar.gz * 3. Dans le répertoire $HOME/Linux101/exercice2, décompresser les fichiers SQUACK_2.0.0.zip et gsl-1.15.tar.gz $ cd exercice2 ; tar cfvz exercice2.tar.gz *
!12 Visualisation de fichiers La ligne de commande offre plusieurs applications pour visualiser le contenu d un fichier texte. «cat» : Affiche la totalité d un fichier «less»/«more» : Affiche le fichier, 1 page à la fois «tail» : Affiche les dernières lignes d un fichier «head» : Affiche les premières lignes d un fichier
!13 Édition de fichiers Plusieurs éditeurs disponibles : nano : très simple mcedit : pour les nostalgiques de DOS vim et emacs : pour les connaisseurs puissants mais complexes : Tutoriel vim : http://goo.gl/orn1k Tutoriel emacs : http://goo.gl/rxjs4s
!14 Exercice #3 - Édition de fichiers 1. Obtenir les instructions du fichier «exercice3/instructions.txt» 2. Suivre ces instructions! Astuce 4 :! «man head» vous indiquera comment choisir le nombre de lignes à afficher.! Pour quitter les commandes «more» et «less», tapez «q»
!15 Solutions #3 - Édition de fichiers 1. Obtenir les instructions du fichier «exercice3/instructions.txt» 2. Suivre ces instructions! $ cd exercice3 $ nano instructions.txt ^o pour sauvegarder sous un nouveau nom ^x pour quitter $ cat data.txt $ head -n 50 data.txt $ more data.txt
!16 Édition de fichiers - option facile Certains éditeurs sous Windows et Mac OS vous permettent d éditer des fichiers à distance directement de votre poste : Windows: notepad++ Download: http://goo.gl/jozd0c Instructions: http://itekblog.com/ssh-with-notepad/ Max OS : TextWrangler Download: http://goo.gl/ucxh1w Instructions: «File->Open from FTP/SFTP server»
!17 Exercice #3a - Édition de fichiers 1. Installer une des 2 applications précédente (Notepad++ ou TextWrangler) 2. Ouvrir et modifier exercice3/instructions.txt à partir de votre poste! Astuce 5 :! Attention à FTP vs SFTP. Vous devez choisir sftp sur le port 22.! Le serveur est toujours colosse.calculquebec.ca
!18 Variables d environnements Les variables d environnement définissent (presque) toute la configuration : ce qui est visible, ce qui ne l est pas, les chemins par défaut, etc. Elle peuvent aussi servir de raccourcis pour simplifier vos commandes.
!19 Exercice #4 - Environnement 1. Exécuter la commande «pwd» 2. Exécuter «cd $HOME» suivis de «pwd» à nouveau. Que contient la variable d environnement $HOME? 3. Exécuter la commande «env» pour afficher toutes les variables d environnements initialisées. Quelle variable pointe vers votre espace de projet? Laquelle pointe vers votre espace de travail?!
!20 Solutions #4 - Environnement 1. Exécuter la commande «pwd» 2. Exécuter «cd $HOME» suivis de «pwd» à nouveau. Que contient la variable d environnement $HOME? $HOME pointe vers votre répertoire personnel: /home/user1 3. Exécuter la commande «env» pour afficher toutes les variables d environnements initialisées. Quelle variable pointe vers votre espace de projet? Laquelle pointe vers votre espace de travail?! $RAP : Espace de groupe $SCRATCH : Espace de travail
Calcul Québec - Université Laval!21 Module Les modules modifient les variables d environnement pour rendre accessible des applications ou librairies. «module avail» : liste les modules disponibles «module list» : liste les modules chargés «module load <nom>» : active le module «nom» «module unload <nom>» : désactive le module «nom» «module purge» : désactive tous les modules «module what-is <nom>» : affiche une description du module «nom»
!22 Exercice #5 - Modules 1. Exécuter «R version» 2. Exécuter «module load apps/r/3.0.0-1 3. Exécuter «R version» 4. Qu est-ce que vous observez? 5. Exécuter «module avail»!
Fin!23