Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
floss:lpi_linux_essentials [2012/10/13 23:21] – [1.1 Evolution de Linux et des distributions populaires] villersd | floss:lpi_linux_essentials [2012/10/17 00:22] (Version actuelle) – villersd | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Etudier et s' | ====== Etudier et s' | ||
Document en construction ! (document de travail à usage interne : [[intra: | Document en construction ! (document de travail à usage interne : [[intra: | ||
+ | |||
+ | Le document proposé sur ces pages est également disponible sur le [[|wiki de l'ASBL LoLiGrUB]], et bénéficie de l' | ||
+ | |||
===== Définition de la certification ===== | ===== Définition de la certification ===== | ||
Ligne 13: | Ligne 16: | ||
===== 1.1 Evolution de Linux et des distributions populaires ===== | ===== 1.1 Evolution de Linux et des distributions populaires ===== | ||
La naissance de [[http:// | La naissance de [[http:// | ||
+ | |||
+ | Dès cette époque, Linux est devenu un OS principalement utilisé pour des serveurs. L' | ||
+ | |||
+ | Plus tard, le développement d' | ||
+ | |||
+ | A l'aube des années 2010 Linux a encore franchi une étape supplémentaire dans la popularité, | ||
+ | |||
+ | Pour celui qui voudra installer, utiliser et comprendre un système Linux complet, le choix d'une [[http:// | ||
+ | |||
+ | Toutes semblables, toutes différentes, | ||
+ | * l' | ||
+ | * un [[http:// | ||
+ | * le nombre de paquets proposés | ||
+ | * Un modèle de développement communautaire, | ||
+ | * le rythme de sorties des versions | ||
+ | * l' | ||
+ | * des supports matériels plus ou moins important | ||
+ | |||
+ | Les principales distributions : | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | Pour un comparatif des distributions, | ||
+ | ==== Exercices ==== | ||
+ | - Proposer des distributions Linux adaptées aux contraintes suivantes : | ||
+ | - Ordinateur ancien, avec peu de mémoire (256 Mo), usages : bureautique, | ||
+ | - Ordinateur récent et performant. Usages particuliers : montages vidéos, photographie numérique, jeux (avec les dernières versions des logiciels) | ||
+ | - Serveur personnel (fichiers, web), robuste et à oublier, sans trop de mises à jour nécessaires | ||
+ | - Mediacenter | ||
+ | - Distribution bien finie côté esthétique, | ||
===== 1.2 Principales applications Open Source ===== | ===== 1.2 Principales applications Open Source ===== | ||
+ | Les applications sont innombrables, | ||
+ | * Accessoires | ||
+ | * Éditeur de texte (gedit) | ||
+ | * Calculatrice | ||
+ | * Scan (Xsane) | ||
+ | * Bureautique | ||
+ | * Traitement de texte (writer) | ||
+ | * Tableur (calc) | ||
+ | * Logiciel de présentation (presentation) | ||
+ | * Graphisme | ||
+ | * Traitement d' | ||
+ | * Graphisme vectoriel (Inkscape) | ||
+ | * Animation 3D (Blender) | ||
+ | * Internet | ||
+ | * Navigateur web (Firefox, Chromium) | ||
+ | * Client de courrier (Thunderbird) | ||
+ | * Messagerie instantanée | ||
+ | * Serveurs (Apache, MySQL, SSH,...) | ||
+ | * Jeux | ||
+ | * Outils systèmes | ||
+ | * Bureau à distance | ||
+ | * Compression | ||
+ | * Logithèque | ||
+ | * Programmation | ||
+ | * Nombreux compilateurs ou interpréteur (C, C++, java, Python, Perl, Ruby, PHP,...) | ||
+ | * Son et vidéos | ||
+ | * Éditeur de sons (Audacity) | ||
+ | * Éditeur vidéo (Cinelerra, openshot) | ||
+ | * Transcodeur vidéo (Avidemux) | ||
+ | * Lecteurs son, vidéo | ||
+ | * Télévision numérique | ||
+ | * Enregistreur de son | ||
+ | |||
+ | Différents outils permettent d' | ||
+ | |||
===== 1.3 Comprendre les logiciels Open Source et leurs licences ===== | ===== 1.3 Comprendre les logiciels Open Source et leurs licences ===== | ||
===== 1.4 Compétences ICT (Information & communications technology) et travail sous Linux ===== | ===== 1.4 Compétences ICT (Information & communications technology) et travail sous Linux ===== | ||
====== 2 Trouver son chemin sur un système Linux (pondération : 8) ====== | ====== 2 Trouver son chemin sur un système Linux (pondération : 8) ====== | ||
===== 2.1 Les bases de la ligne de commande ===== | ===== 2.1 Les bases de la ligne de commande ===== | ||
+ | |||
+ | ==== 2.1.1 Introduction ==== | ||
+ | |||
+ | |||
+ | Les utilisateurs de Windows qui passent à Linux risquent d' | ||
+ | Toutefois les versions récentes de Linux intègrent également une interface graphique équivalente à celle utilisée dans Windows, Mac OSX .... | ||
+ | |||
+ | L' | ||
+ | Le « Shell » est un moyen pratique pour réaliser des opérations qui peuvent être difficile à exprimer graphiquement. | ||
+ | |||
+ | ==== 2.1.2 Le «Shell», c'est quoi? ==== | ||
+ | |||
+ | Les utilisateurs ne peuvent pas communiquer directement avec le noyau du système d' | ||
+ | Le Shell est donc un programme spécial pour utilisateur. | ||
+ | Il va lire les commandes introduites au clavier et les interpréter comme commandes a être exécutées. Le Shell agit donc comme «interface» vis à vis de l' | ||
+ | Le « Shell » est un des nombreux programmes qui accèdent au système d' | ||
+ | |||
+ | {{http:// | ||
+ | |||
+ | La courbe d’apprentissage du Shell est plus longue parce que moins intuitive, mais sur certains points comme le traitement par lots de plusieurs fichiers, la ligne de commande conserve un avantage évident. | ||
+ | |||
+ | Types de Shell : | ||
+ | |||
+ | le /bin/sh [[http:// | ||
+ | le /bin/bash [[http:// | ||
+ | le /bin/csh [[http:// | ||
+ | le /bin/ksh [[http:// | ||
+ | le /bin/tcsh [[http:// | ||
+ | |||
+ | Le principe de base est toujours resté le même : Les shells sont des interpréteurs, | ||
+ | |||
+ | La plupart des Shells peuvent également lire des fichiers contenant des séquences de commandes préparées. De tels fichiers sont appelé des « scripts shell ». | ||
+ | |||
+ | Un Shell utilise les étapes suivantes : | ||
+ | |||
+ | 1 lire une commande du terminal ( ou d'un fichier) \\ | ||
+ | 2 valider la commande \\ | ||
+ | 3 lancer directement la commande ou démarrer le programme correspondant \\ | ||
+ | 4 afficher le résultat à l' | ||
+ | 5 continuer à l' | ||
+ | |||
+ | En plus de cette boucle standard, un shell contient un langage de programmation qui inclut des structures plus complexes comme les boucles, conditions et variables. | ||
+ | |||
+ | Ici, nous utiliserons le Shell Bash, l’un des plus couramment utilisé sur les systèmes [[http:// | ||
+ | Bash est un logiciel libre publié sous [[http:// | ||
+ | |||
+ | |||
+ | |||
+ | === Lancer un Shell (mode console ou terminal) === | ||
+ | |||
+ | |||
+ | Plusieurs possibilités sont offertes : | ||
+ | |||
+ | * utiliser le menu du bureau (Gnome, Kde, etc.). | ||
+ | |||
+ | * utiliser le menu lancer une application. \\ | ||
+ | * Dans la fenêtre ainsi ouverte, taper le nom de terminal et valider.\\ | ||
+ | * La fenêtre **lancer une application** peut être ouverte avec Alt+F2 \\ | ||
+ | |||
+ | * Utiliser les consoles virtuelles (il y en a 6). | ||
+ | * La console virtuelle (tty1 à tty6) est un écran noir où une invite de commande apparaît, de la forme utilisateur@machine ~ $ \\ | ||
+ | |||
+ | Depuis l' | ||
+ | la combinaison de touches Ctrl+Alt+FN, | ||
+ | Pour revenir au mode graphique depuis une console virtuelle, utiliser la combinaison de touches ALT+F7. | ||
+ | | ||
+ | | ||
+ | |||
+ | === EXERCICES === | ||
+ | |||
+ | * Quel est l' | ||
+ | |||
+ | |||
+ | ==== 2.1.3 Les commandes. ==== | ||
+ | |||
+ | Pourquoi des commandes? | ||
+ | |||
+ | Le fonctionnement d'un ordinateur, indépendamment de son système d’exploitation, | ||
+ | |||
+ | - l' | ||
+ | - l' | ||
+ | - l' | ||
+ | |||
+ | |||
+ | Dans un système Linux, le Shell affiche un chemin (prompt), indiquant ainsi qu'une commande peut être introduite.\\ | ||
+ | Ce « prompt » contient le nom de l' | ||
+ | |||
+ | utilisateur@machine ~ $ | ||
+ | |||
+ | * utilisateur -> représente l' | ||
+ | * machine -> représente le nom de la machine sur laquelle l' | ||
+ | * ~ -> est un raccourci qui signifie le répertoire personnel / | ||
+ | * $ -> signifie que vous êtes connecté en tant qu' | ||
+ | |||
+ | |||
+ | === Structure d'une commande === | ||
+ | |||
+ | une commande est essentiellement un suite de mots (inspirés vaguement de l' | ||
+ | Pour que le Shell puisse interpréter cette suite de mots, ceux-ci doivent suivre une syntaxe. \\ | ||
+ | Le premier mot de la ligne est souvent le nom de la commande et les autres mots sont les paramètres qui expliquent ce qui est demandé en détail. | ||
+ | |||
+ | A ce stade il est important de savoir que //**le shell fait la distinction entre les majuscules et les minuscules**// | ||
+ | Le séparateur entre le nom de la commande et les paramètres peut être un espace ou une tabulation. \\ | ||
+ | Notez que vous pouvez également utiliser ↩ (Enter) comme séparateur, | ||
+ | ne l' | ||
+ | |||
+ | |||
+ | **Les paramètres d'une commande peuvent être divisées en deux types : ** | ||
+ | |||
+ | * les options : elles sont précédées d'un tiret « - » et peuvent être considérées comme des « switches » qui autorisent ou pas certaines actions. Si vous souhaitez passer plusieurs options à une commande vous pouvez taper la séquence suivante «-a -l -F» ou «-alF». Les options longues débutent le plus souvent avec deux tirets mais ne peuvent pas être regroupées : « foo –bar --baz » | ||
+ | |||
+ | |||
+ | * les arguments : les paramètres non précédés de tiret sont appelés les arguments. Ils correspondent souvent au nom de fichiers que la commande doit traiter. | ||
+ | |||
+ | |||
+ | la structure générale d'une commande peut être expliquée comme suit : \\ | ||
+ | • Command—“Que faut-il faire?” \\ | ||
+ | • Options—“Comment le faire?” \\ | ||
+ | • Arguments—“Sur quoi faut-il agir?” \\ | ||
+ | |||
+ | |||
+ | === Types de Commandes === | ||
+ | |||
+ | Dans les shells il y a essentiellement __deux types de commandes__ : | ||
+ | |||
+ | * **Commandes Internes**. Ces commandes sont disponibles dans le Shell lui-même. Le Bash (Bourne-again shell) contient approximativement 30 commandes de ce type. Les commandes comme « exit » et « cd » modifient l' | ||
+ | |||
+ | * **Commandes Externes**. Le Shell n' | ||
+ | |||
+ | En tant qu' | ||
+ | |||
+ | |||
+ | === EXERCICES === | ||
+ | |||
+ | * Ouvrez un terminal. Sur quelle machine êtes vous connecté ? Quel est le nom du répertoire courant ? | ||
+ | |||
+ | * labomons@labomons-N130: | ||
+ | |||
+ | * la commande « cal » est une commande interne ou externe ? | ||
+ | |||
+ | * La commande « date » affiche par exemple« dimanche 7 octobre 2012, 17:17:14 (UTC+0200) » dans le terminal. Comment faire pour, au départ de la même commande, n' | ||
+ | |||
+ | * utilisez la commande « date » pour affichez dans le terminal le texte suivant : nous sommes un « jour complet semaine » du mois « nom complet du mois ». //Exemple: nous sommes un **dimanche** du mois **octobre**. // | ||
+ | |||
+ | |||
===== 2.2 Utiliser la ligne de commande pour obtenir de l'aide ===== | ===== 2.2 Utiliser la ligne de commande pour obtenir de l'aide ===== | ||
===== 2.3 Utiliser les répertoires et listings de fichiers ===== | ===== 2.3 Utiliser les répertoires et listings de fichiers ===== |