ApprentisLinux
Salut le monde. Je me suis beaucoup intéressé ces derniers temps à la possibilité de me perfectionner au système Linux mais je me suis égaré bien des fois sur la manière d'assimiler toutes les possibilités qu'offre cet OS. Le meilleur moyen de garder une ligne de conduite est de trouver la meilleur méthode d'apprentissage qui nous permettrais de nous fixer un objectif à long terme, celui d'acquérir un niveau de connaissances assez vaste afin de pouvoir aider tout ceux qui voudraient s'y mettre mais qui sont encore réticents à l'installation de Linux sur leur pc. Pour cela, le meilleur moyen est d'essayer d'obtenir une certification Linux afin d'avoir les bons réflexes quand on dépanne un proche, un ami ou une relation et, par cela, diffuser ce savoir à tous ce qui ça intéresse.
(à suivre)
Travailler sur plusieurs environnements Linux
Travailler sur deux ou trois gestionnaires de fenêtre différents.
Il est intéressant de pouvoir travailler sur une session graphique autre que celle que l'on est habitué à utiliser (pour ma part c'est gnome).
Voici une liste des plus connus sur linux :
fvwm-crystal
ion3
icewm
afterstep
windownmaker
pcmanfm
xfce4
gnome-shell
pekwm
wmii
jwm
ratpoison
fluxbox
Donc, on est sur gnome et on aimerais comprendre le fonctionnement d'awesome. On l'installe et, on change de session pour pouvoir choisir l'environnement graphique qui nous intéresse par l'intermédiaire du gestionnaire de session de démarrage de mon linux (Debian, Ubuntu, etc..., ). C'est pratique si on désire uniquement travailler directement sur celui-ci.
D'un autre coté, il existe une methode qui nous permet de rester sur notre environnement familier et de switcher sur autre. Pour cette méthode, il y a deux façon de faire :
1/
a/ On créer un fichier ~/.xinitrc dans notre home.
b/ On fais Ctrl-Alt F1 (ou F2, F3, etc...) pour passer en mode console et à l'invite on entre notre login et mot de passe.
c/ On tape $echo "exec awesome" > ~/.xinitrc && startx -- :1
2/ On commence directement par la procédure b/ de la première méthode.
On tape $startx /etc/X11/Xsession awesome -- :1 (vérifier le PATH: pour les autres distributions).
Ensuite, on a plus qu'à passer de l'un à l'autre avec les touches Ctrl-Alt F7, Ctrl-Alt F8, Ctrl-Alt ... .
Voici deux scripts bash qui offrent à l'utilisateur un menu pour démarrer le gestionnaire que l'on veut (l'un est un simple scripts et l'autre utilise Dialog). Il vous faudra configurer le menu selon les gestionnaires que vous avez installer sur votre pc. Ne pas oublier de changer .txt en .sh .
script gestionnaires 1 et script gestionnaires 2 (avec Dialog).
Les shells linux
Il ya bien des manières d'utiliser la ligne de commande sous linux. Je vais, dans cet article, détaillé certains shells bien pratique et agréable à utiliser sous son nux.
Commandes shell (suite)
Manipulation de texte
* uniq : Recopie les données en entrée en ne conservant qu'un unique exemplaire de lignes identiques consécutives.
* unix2dos : Convertit les retours à la ligne d'un fichier pour qu'elles soient compatibles avec le monde DOS.
* wc : Permet de compter le nombre de caractères, de mots ou de lignes dans un fichier.
Permissions
* chgrp : Change le groupe propriétaire d'un fichier. (CHange GRouP)
* chmod : Change les permissions en lecture, écriture et/ou exécution d'un fichier.
* chown : Change le propriétaire d'un fichier. (CHange OWNer)
* getfacl, setfacl : respectivement, lister ou modifier les ACL de fichier (grossièrement, c'est l'équivalent du CACLS pour le NTFS de Windows)
Processus
* free : Affiche des informations sur l'utilisation de la mémoire.
* fuser : Affiche quel processus utilise le fichier donné en paramètre.
* kill : Envoyer un message à un processus donné, généralement pour y mettre fin
Signal SIGTERM (15) par défaut : arrêter le processus proprement
63 signaux possibles de SIGHUP (1) à SIGRTMAX (63)
Valeur la plus utilisée : SIGKILL (9), qui termine brutalement un processus
* killall : Tue tous les processus d'un certain type, ou leur envoie un signal donné.
* killall5 : Tue tous les processus
* nohup: Permer de lancer un processus qui restera actif même après la déconnexion de l'utilisateur l'ayant initiée
* nice : Exécute une commande avec une priorité modifiée.
* pidof : Donne le PID du processus spécifié
* pkill : même commande que kill, mais par son nom au lieu de son numéro.
* ps : Affiche les processus en cours d'exécution (Process Status)
* pstree : Affiche l'arbre des processus en cours d'exécution.
* renice : Modifie la priorité d'un processus.
* top : Programme interactif qui affiche les processus les plus actifs selon un critère donné.
* xkill : Permet de killer une application lancée sous X
* vmstat : Affiche les statistiques système (consommation CPU, mémoire virtuelle)
Commandes shell
Aide
* info (GNU) : Obtenir le manuel GNU info d'une commande.
* apropos : Liste les pages de manuel contenant dans leur description le(s) mot(s) clé(s) recherché(s).
* man : Obtenir le manuel d'une commande.
* help : Obtenir de l'aide pour une commande interne du shell.
* which : Où se trouve ce programme ?
* whatis : Liste quelles commandes sont en rapport avec un mot-clef.
* Commande --help : Affiche une aide succincte et liste les arguments qui peuvent être passés à la commande Commande en question. Cette option est la forme longue de l'option Commande -h, des premiers systèmes UNIX.Commandes générales
* history : Affiche l'historique des commandes.
* type : Affiche le type de la commande (alias, exécutable, etc.) et précise sa nature.
Communications
* mesg : Contrôler l'accès à votre terminal par d'autres personnes (par write). * talk : Faire une conversation avec un autre utilisateur du système.
* wall : Envoyer un message à tous les utilisateurs du système (Write ALL).
* write : Envoyer un message à un utilisateur en particulier (voir mesg).
Écran
* less (GNU) : Visualise le contenu d'un fichier texte, avec une progression ligne par ligne ou page par page et la possibilité de retourner en arrière et d'effectuer une recherche ; beaucoup plus élaboré que son prédécesseur more, less est son opposé (le nom de ce programme comporte une touche d'humour car less signifie moins, alors que more signifie plus) ;
* more : Affiche le contenu d'un fichier texte, page par page (la page correspond à la taille du terminal) ;
* screen : Permet d'ouvrir des programmes associés à des écrans virtuels desquels l'utilisateur peut se détacher et auxquels il peut de nouveau s'attacher plus tard.
* twin : Simule en mode texte (ncurses) un écran graphique.
Éditeurs de texte
* ed : Éditeur de texte orienté ligne.
* emacs : Éditeur de texte
* nano : Éditeur de texte
* pico : Éditeur de texte
* vi : Éditeur de texte présent dans presque tous les systèmes Unix.
* vim : voir vi (VI aMélioré, ou VI iMproved). [1] [archive]
Fichiers et répertoires
* cd : Change le répertoire courant. (Change Directory)
* cp : Copie un fichier (CoPy), peut copier une liste de fichiers dans un autre répertoire en conservant leur nom. * dd[1] : Effectue une copie d'un fichier avec possibilité de conversion du format (Copy and Convert, mais cc étant déjà pris, les lettres suivantes de l'alphabet ont été choisies, soit dd).
* dir : Equivalent à ls (DIRectory), n'existait pas à l'origine d'UNIX
* du : Affiche l'utilisation du disque. (Disk Usage)
* df : Affiche l'utilisation des disques. (Disk Free)
* file : Affiche le type de fichier en lisant son en-tête.
* ln : Crée un lien avec un autre dossier ou fichier. (LiNk)
* ls : Affiche la liste des fichiers dans le dossier courant ou d'un autre dossier. (LiSt)
* mkdir : Crée un ou plusieurs répertoires (MaKe DIRectory)
* mv : Déplace (ou renomme) un fichier, y compris si c'est un répertoire (MoVe), peut déplacer une liste de fichiers dans un autre répertoire en conservant leur nom.
* pwd : Affiche le chemin du dossier courant. (Print Working Directory)
* rm : Supprime un/des fichier(s) ou des répertoires (avec l'option -r). (ReMove)
* rmdir : Supprime un ou plusieurs répertoires (ReMove DIRectory) s'il est (ou s'ils sont) vide(s)
* touch : Change la date de modification d'un fichier, en le créant s'il n'existait pas.
* lsof : Affiche la liste des fichiers ouverts. (LiSt Open Files)
Manipulations d'archives et compressions
* bzip2/bunzip2 : Compresse et décompresse des fichiers
* cpio : Copie de fichiers à partir de ou vers une archive cpio/tar (obsolète)
* gzip/gunzip : Compresse et décompresse des fichiers. (Gnu ZIPper)
* pax : un outil qui rassemble les fonctions de tar et de cpio
* tar : Archiveur, capable de fonctionner avec bzip2 ou gzip. (Tape ARchiver)
* zip/unzip : Compresse et décompresse des fichiers. (ZIP)
* zcat : Affiche un fichier compressé (comme cat, mais décompresse au passage)
Recherche
* find : Recherche récursive, à partir d'un répertoire, de fichiers ayant des caractéristiques données.
* locate : Recherche un fichier à partir de la dernière version de la base de données des fichiers (base généralement créée par updatedb). Beaucoup plus rapide que find, mais moins flexible.
* whereis
Recherche une commande dans le PATH et les pages de man correspondants (éventuellement dans MANPATH) et retourne le ou les chemins d'accès complet(s).
Si une commande existe avec plusieurs extensions différentes, il les liste toutes (exemple : whereis fsck listera non seulement le chemin complet de fsck, mais aussi celui de fsck.ext2)
Il recherche aussi l'éventuelle présence des fichiers sources
* which : Retourne le chemin d'accès complet d'une commande.
Gestion des disques/points de montage
* df : Affiche l'espace libre sur les partitions (Disk Free)
* dump/restore : sauvegarde et restauration d'un système de fichiers.
* fsck : Effectue une vérification du système de fichiers (FileSystem ChecK); en fonction du type de partition, il appelle l'utilitaire correspondant
o e2fsck (ou fsck.ext2) pour ext2 ou ext3 (NB : fsck.ext2 et e2fsck sont identiques, il s'agit de 2 liens vers le même fichier) o reiserfsck pour ReiserFS
o cramfsck pour cramfs
o fsck.jfs pour JFS
o fsck.xfs pour XFS
o fsck.minix pour le système de fichier de minix
o fsck.xiafs pour XIAFS, voir (en) XIAFS
* fsdb, débogueur de système de fichiers, pour les experts
* hdparm Tuning d'un disque IDE
* sdparm Tuning d'un disque SCSI
* mkfs : Crée un système de fichiers. (MaKe FileSystem)
* mount : Attache un système de fichiers sur un point de montage.
* umount : Détache un système de fichiers. (UnMOUNT). « unmount » reste autorisé.
* sync Pour imposer une écriture disque (par exemple, avant un arrêt électrique brutal)
* tune2fs pour le paramétrage d'une partition ext2 ou ext3
* cryptsetup : Cryptage d'image disque transparent
Manipulation de texte
* awk : Effectue des opérations sur les fichiers (afficher une colonne, la traiter, ..) (initiales de ses créateurs : Aho, Kernighan, Weinberger)
* cat : Concatène des fichiers texte. Peut aussi servir à simplement afficher ou lire un fichier. (conCATenate)
* cut : Supprime une partie des lignes d'un fichier selon un critère.
* diff : Affiche les différences entre deux fichiers.
* dos2unix : Convertit les retours à la ligne d'un fichier pour qu'elles soient compatibles avec le monde Unix.
* echo : Affiche une ligne de texte donnée en paramètre.
* expr : Évaluer une expression (mathématique ou sur une chaîne de caractères)
* fgrep : Affiche les lignes qui contiennent une chaîne de caractères donnée (grep -f sous Linux).
* grep et egrep : Affiche les lignes qui contiennent une expression régulière donnée, egrep (grep étendu) est plus riche en possibilités.
* head : Affiche les premières lignes d'un fichier. (opposé de tail)
* join : Fusionne les lignes de deux fichiers contenant un ou plusieurs champs identiques.
* nl : Permet de numéroter les lignes d'un fichier.
* read : Lit une chaîne de caractères à partir de l'entrée standard.
* sed : Effectue des transformations sur un flux de texte (Stream EDitor)
* sort : Trie les lignes d'un texte selon l'ordre alphabétique (ou numérique avec l'option -n).
* strings : Affiche seulement les caractères imprimables (ASCII) d'un fichier binaire.
* tail : Affiche les dernières lignes d'un fichier. (opposé de head)
* tee : Copie de l'entrée standard sur la sortie standard et vers un fichier. (le nom vient de la forme de la lettre T, qui a aussi une « entrée » et deux « sorties »)
* tr : Transpose ou élimine des caractères dans une chaîne (TRanspose)