Table des matières

Linux

Ressources Linux

Les liens:

Français

Anglais

Livres

Commandes Linux

Commandes de commande

man

  
  <nom de la commande> : permet de consulter le manuel associé à la commande passée en paramètre (man = manual). C’est à mon avis la commande la plus utile qui soit puisque grâce à elle, vous pourrez utiliser n’importe quelle commande facilement 🙂

whereis

  <nom de la commande> : permet de connaître quel script est exécuté lors de l’appel à la commande.

Système

top :

htop :

kill :

df :

fdisk

mkfs

uname :

su :

pwd :

cd <nom ou chemin du répertoire> : permet de changer de répertoire courant (cd = change directory). Cette commande permet de réaliser les mêmes actions que lorsque vous vous baladez avec votre souris dans l’arborescence de votre système.

mkdir :

ls :

touch :

chmod et chown :

Exemples :

cp :

cat :

Exemple :

grep :

find :

Téléchargements

wget :

curl :

ftp :

Réseau

ping :

ifconfig :

nmap :

Enfin, notez que lorsque vous installez un nouveau logiciel sur votre machine, de nouvelles commandes seront disponibles. Par exemple, après avoir installé le logiciel de traitement de texte Emacs, la commande « emacs » sera disponible en ligne de commande pour lancer le programme.

speedtest

installation de speedtest =⇒ sudo apt-get install speedtest

iftop

installation de iftop =⇒ sudo apt-get install iftop

rsync

Voici un exemple d'une commande, utilisant le protocole SSH, qui copie à l'identique le dossier <source> vers le dossier <destination>.

Copie du dossier source vers le serveur:

  rsync -e ssh -avz --delete-after /home/source user@ip_du_serveur:/dossier/destination/

où :

  1. -delete-after : à la fin du transfert, supprime les fichiers dans le dossier de destination ne se trouvant pas dans le dossier source.
  2. z : compresse les fichiers (Limite la bande passante mais augmente l'utilisation processeur et le temps de transfert : inutile en réseau locale ou avec très bon débit)
  3. v : verbeux
  4. e ssh : utilise le protocole SSH

Si chemin(s) avec des espaces, on peut écrire les chemins entre guillemet en échappant les espace :

  rsync -e ssh -avz --delete-after "/home/source\ avec\ espace/" user@ip_du_serveur:"/dossier/destination\ avec\ espace/"

Avec l'option -n la commande liste ce qu'elle va faire sans l'exécuter:

  rsync -e ssh -avzn --delete-after /home/mondossier_source user@ip_du_serveur:/dossier/destination/
  
  

blkid

commande : sudo blkid

Qu'est-ce que l'UUID ? :

Il s'agit d'une suite plus ou moins longue de caractères alpha-numériques qui permet d'identifier de façon absolument sûre chaque périphérique de stockage et partition.

Le chiffre de l'UUID est calculé automatiquement au moyen d'un algorithme intégrant notamment certaines données de l'ordinateur hôte, au moment de la création ou du formatage de la partition ou de la table des partitions. Ce mode de calcul ne présente aucun risque de sécurité crédible.

Un UUID est de la forme : 1124d9e8-6266-4bcf-8035-37a02ba75c69.

Il est à noter que l'UUID d'une partition est stockée dans le système de fichier. Une partition vierge (non formatée) ne peut donc avoir d'UUID et une partition clonée a le même UUID que l'originale. On peut ajouter que ceci est vrai même avec un partitionnement gpt. Bien que GPT définisse un UUID qui est stocké dans la table de partition, ce n'est pas ce dernier qui est utilisé par linux pour identifier les partitions.

mount et fstab

Le montage automatique ou manuel des systèmes de fichiers

éditer le fichier : sudo nano /etc/fstab

fstab

Le fichier /etc/fstab liste les partitions qui seront montées automatiquement au démarrage ou à la connexion du périphérique, avec toujours les mêmes options. Il est composé de plusieurs lignes décrivant chacune les conditions de montage de chaque partition / système de fichier. Le fichier fstab est créé lors de l'installation, avec le montage de la partition principale, et de la swap. Mais on peut y ajouter manuellement des partitions supplémentaires, qui seront alors automatiquement lues par le système au démarrage.

Variables d'environnement

Variables du prompt PS1

Le prompt Unix / Linux est défini par la variable PS1, généralement dans le .bashrc. Les variables suivantes peuvent être utilisées :

  \a an ASCII bell character (07)
  \d the date in "Weekday Month Date" format (e.g., "Tue May 26")
  \D{format} - the format is passed to strftime(3) and the result is inserted into the prompt string; an empty format results in a locale-specific time representation. The braces are required
  \e an ASCII escape character (033)
  \h the hostname up to the first part
  \H the hostname
  \j the number of jobs currently managed by the shell
  \l the basename of the shell's terminal device name
  \n newline
  \r carriage return
  \s the name of the shell, the basename of $0 (the portion following the final slash)
  \t the current time in 24-hour HH:MM:SS format
  \T the current time in 12-hour HH:MM:SS format
  \@ the current time in 12-hour am/pm format
  \A the current time in 24-hour HH:MM format
  \u the username of the current user
  \v the version of bash (e.g., 2.00)
  \V the release of bash, version + patch level (e.g., 2.00.0)
  \w the current working directory, with $HOME abbreviated with a tilde
  \W the basename of the current working directory, with $HOME abbreviated with a tilde
  \! the history number of this command
  \# the command number of this command
  \$ if the effective UID is 0, a #, otherwise a $
  \nnn the character corresponding to the octal number nnn \\ a backslash
  \[ begin a sequence of non-printing characters, which could be used to embed a terminal control sequence into the prompt
  \] end a sequence of non-printing character

On utilise généralement les combinaisons :

export PS1=“\u@\h \w> ”

Exemple :

jdoe@laptop-jdoe /var/www/jdoe/sites/default/themes/vincentl >

ou, plus concis

export PS1=“\u@\h \W> ”

Exemple :

jdoe@laptop-jdoe vincentl >