Combinaisons de touches utiles pour les commandes sous Linux
CTRL + ALT + F1 (à F6) = passer en terminal non graphique.
CTRL + ALT + F7 = passer en mode graphique.
CTRL + D = lancer une déconnexion.
CTRL + C = quitter la ligne de commandes.
CTRL + L = effacer dans un terminal.
Terminal = interface (connecté au serveur). Console = logiciel qui fait interface (attention, la console désigne un terminal sous Linux). TTY = abréviation pour TéléTYpe. Il s'agit du terminal (qui est en mode caractère). Le TTY permet de dépanner certaines cartes graphiques. Attention, les cartes ATI désactivent le TTY. Autres terminaux virtuels = Konsole, Terminator, Goshi…
Les couches système
Architecture Système Informatique
wiki distribution
| 1 | matériel |
| 2 | noyau |
| 3 | X Serveur ? |
| 4 | distribution |
| 5 | Gnome Display Manager (GDM) où Kde Display Manager (KDM) |
| 6 | window manager |
| 7 | console |
Sous linux, quand nous lançons une console c'est interpréteur de commande (en Anglais prompt) que nous voyons en premier, au départ, apparaît : [user@host:~$]
la syntaxe est similaire comme pour une adresse postale : [Utilisateur @ (adresse) nom de la machine : à partir de ~ (~ représente le répertoire home) $ par l'utisateur]
- « user » est le nom de l'utilisateur.
- « @ » pour l'adresse.
- « host » où « localhost » est le nom de la machine.
- « : » à partir du chemin.
- « ~ » dans le répertoire (équivalent à /home/user).
- « $ » indique qu'il s'agit d'un utilisateur normal.
- « # » indique qu'il s'agit de l'administrateur, appelé «root».
Bash (= Bourne-again shell) est le plus utilisé. Il en existe d'autres : ksh, tsh, sh, zsh…
Les fichiers intéressants (cachés, d'où la présence du point avant le nom du fichier) : .bash_profile, .bashrc, .bash_history, .bash_aliases, .bash_logout.
« .bash_history » contient l'enregistrement des lignes de commande.
« .bash_logout » contient la commande exécutée à la déconnexion (efface souvent, nettoie la console).
« . bashrc » contient la génération de l'environnement, la définition des variables dans une console.
« .bash_aliases » contient les raccourcis pratiques, de sécurité, etc (pour rendre les alias permanents, il suffit de les rajouter dans « .bashrc »).
Exemples :
alias rm ='rm -i' (rm est la commande de l'alias qui permet de supprimer un fichier, rm -i est la commande à exécuter qui demande confirmation avent de supprimer le fichier).
alias cp='cp -i' (copier un fichier).
alias mv='mv -i' (déplacer un fichier).
alias apgi='apt-get install'
alias apgu='apt-get update'
alias netw='/etc/init.d/network '\_
alias apache='/etc/init.d/apache '
alias sys='tail -n100/var/log/syslog'
alias mess='/var/log/messages'
alias l='ls -ailh'
Exercice : enlever les # devant les « if … then … » du .bash_aliases…
env donne les variables : user, home, shell, term… Remarque : le PS1 (prompt) est une variable d'environnement.
pwd donne le chemin (/…).
sudo su (switch user).
sudo su -.
sudo -user (=user).
export thebest=manu
echo $thebest ($variable, sans espace)
unset $thebest : unset (utilisé en PHP) détruit les variables spécifiées
exp: Destruction d'une seule variable
unset($thebest);
texte entre guillemets « ».
top ou htop htop est un moniteur système pour Linux très similaire à top, mais qui propose une interface dans un terminal plus conviviale que ce dernier.
Tout est fichier sous Linux. /dev/zero répond zéro. /dev/null constitue un trou noir (poubelle); /dev/random est l'aléatoire.
La commande « man »
man constitue l'aide des commandes. (man man existe !). Le paquet manpage.fr permet d'installer l'aide en français man -l fr Q permet de quitter.
Organisation des commandes
commande -argument1 -argument2 (etc) … [fichier]. Exemples : ls -l -a -i = ls -lai com -e fichier1 -s fichier2 = com -s fichier2 -e fichier1 – signifie la fin des arguments : ls -toto ne fonctionne pas, mais ls.–.-toto oui.
La commande « cat »
Elle permet la lecture des fichiers. cat /etc/apt/sources.list La tabulation permet de compléter les commandes. cat -n /etc/apt/sources.list -n numérote les lignes. tac lit le fichier à l'envers.
La commande « head » Elle permet la lecture de l'en-tête des fichiers. head -n 4 /var/log/messages
La commande « tail »
Elle permet la lecture de la fin des fichiers. tail -n 10 /var/log/messages tail -n 10 /var/log/messages > /tmp/toto le « > » permet de créer un fichier
echo “coucou” > /tmp/fichier Entre guillemets anglais permet d'insérer du texte.
permet d'écraser, » permet de rajouter.
cat /proc/cpuinfo (sortie normale). cat /root/.bashrc > /tmp/toto (message d'erreur). 2>&1 cat /etc/shadow 2 > /dev/null
cat /var/log/messages | grep “kernel” (seulement lignes contenant le mot kernel). head -n 5 /etc/apt/sources.list | tail -n 1
grep motif (ne garde que motif). grep -v motif (inverse : ne garde que pas motif). grep -i
cat fichier | less (vers le haut) cat fichier | more (en fin de ligne : monter et descendre) entrée : ligne à ligne espace page à page écran.
mv (move) fichier origine fichier destination Exemple : mv /tmp/toto /tmp/titi (renommer fichier). cp (copier fichier ou répertoire). cp -r (récursif).
LSB = Linux Standard Base
HFS = Hierarchy File System
/ (racine)
/home/utilisateur (documents)
/tmp (perdu à l'arrêt)
/proc/cpuinfo (processeur ; emplacement virtuel n'occupant aucun espace ; fichiers dynamiques)
/var/log (données variables au lancement des programmes)
/usr/bin (espace utilisateur ; programmes utilisés par l'utilisateur)
/usr/sbin
/bin (programmes utilisés par le root)
/sbin
/etc (extended text configuration)
/opt (programmes optionnels ; plus utilisé)
Chemin absolu et relatif : attention à l'emplacement où l'on se trouve !
Exemple : cp toto.doc /tmp/ et cp /home/utilisateur/documents/toto.doc /tmp/
Toujours penser au dernier / pour un répertoire !
cp /home/utilisateur/documents/toto.doc tmp/ (pas de / si je me trouve dans / !
~ équivaut au home
. équivaut là où je suis
.. équivaut au répertoire parent
./dossier/ équivaut de là où je suis vers le dossier
Liens : symboliques ou durs
ln -s (symbolique)
ln (dur)
exemple :
ln -s /home/manu/bureau/toto.doc / /home/toto/bureau/toto.doc
ln /home/manu/bureau/toto.doc / /home/toto/bureau/toto.doc
Le premier chemin est la source, le deuxième chemin est la destination.
Révision des redirections.