Kit de survie Linux - Documents pour le developpements durable

Transcription

Kit de survie Linux - Documents pour le developpements durable
Kit de survie Linux
Juin 2014
Mémo des commandes usuelles
Vous trouverez ci-dessous un mémento des commandes Linux usuelles
(ou pas) qu'on a tous en tête, plus ou moins, mais dont on oublie souvent
un bout de syntaxe, quand ce n'est pas la syntaxe entière, et, pour
certaines même, dont on avait totalement oublié l'existence, quand ne
l'ignorait pas, tout simplement... Merci à tou(te)s de compléter cette liste
ainsi que celle des catégories. Notes à l'attention des futurs
contributeurs :
Ceci n'est pas un tutoriel mais juste un aide mémoire, à ce titre ne mettez qu'un descriptif le plus
succinct possible suivi par la commande.
Essayer pour les commandes systèmes nécessitant les droits du superutilisateur "root" de faire
précéder ces commandes par le caractère dièse (#) représentatif du "root" et par le caractère dollar
($) pour les commandes ne nécessitant aucun droit particulier et pouvant être exécutées par un
simple utilisateur.
Notes à l'attention des lecteurs :
Pour les systèmes basés sur Ubuntu lorsqu'une commande nécessite les droits du superutilisateur
"root" (représenté ci-dessous par le caractère dièse (#) représentatif du "root"), faites précéder cette
commande par "sudo".
Sommaire
Manuel et aide
Les pages de man
Aide en ligne
Opérations sur les fichiers et répertoires
Affichage
Création
Redirection
Copier
Déplacer
Renommer
Comparer
Trier
Archiver/Désarchiver
Compresser/Décompresser
Décompresser et Désarchiver
Compter
Rechercher
Fichiers
Commandes
Utilisateurs
Dépendances
Administration système
Gestion système
Gestion des utilisateurs
Réseau
Information matériel
Tests et mesures
Configuration
Connexion
Connaitre son matériel
Système
Processeur
Mémoire
Descriptif matériel
Vérification prise en charge matérielle
Périphériques inconnus (unknow) ?
Bios
Module
Disque dur
CD/DVD/Graveur
Température (lm_sensors)
Multimédia
Conversion de format vidéo
Capture d'écran
Conversion de formats graphiques
Redimensionnement d'images
Divers
Manuel et aide
Les pages de man
Afficher la page de man d'une commande
$ man commande
Rechercher les pages faisant référence à un mot-clé ("mot-clé" peut être un mot simple ou le nom d'une
commande)
$ man -k mot-clé
$ apropos commande/mot-clé
Documentation supplémentaire avec info (pour certaines pages)
$ info commande
Aide en ligne
Type d'une commande (alias, mot-clé réservé au shell, fonction, commande interne ou simple fichier sur le
disque)
$ type commande
$ type -t commande
Afficher l'aide sommaire d'une commande interne (builtin)
$ help commande
Afficher l'aide sommaire d'une commande externe
$ commande --help
$ commande -h
Opérations sur les fichiers et répertoires
Affichage
Affichage d'un fichier
$ cat fichier
Affichage page par page (touche "Espace" avance d'une page, touche "Entrée" avance d'une ligne)
$ more fichier
Affichage ligne par ligne (flêche haut <=> flêche bas)
$ less fichier
Afficher les 5 dernières lignes d'un fichier
$ tail -5 fichier
Lire en temps réel les 5 dernières lignes d'un fichier
$ tail -5f fichier
Afficher le 5 premières lignes d'un fichier
$ head -5 fichier
Afficher un fichier à l'envers
$ tac fichier
Numéroter un fichier en sortie
$ cat -n fichier
$ nl fichier
Connaitre le type d'un fichier
$ file fichier
Lister un répertoire
$ ls
$ ls -l
Affichage récursif
$ ls *
$ ls -R
Afficher les fichiers cachés
$ ls -a
Afficher le fichier en supprimant le caractère '0'
$ tr -d "0" < fichier
Afficher le fichier en remplaçant le caractère '0' par "gag"
$ sed ' s/0/gag/g' fichier
Création
Créer un fichier vide
$ > fichier
$ touch fichier
Créer 10 fichiers vides
$ touch fichier{1..10}.txt
Créer un répertoire
$ mkdir répertoire
Créer un répertoire et ses sous-répertoires
$ mkdir -p rep_parent/rep1/rep2/rep3
Redirection
Dans un fichier
$ ls -R /home/$USER/*.txt > liste.txt
Dans un fichier mais en ajoutant à la suite
$ ls -R /home/$USER/*.txt >> liste.txt
À la fois à l'écran et dans un fichier
$ ls -R /home/$USER/*.txt | tee liste.txt
À la fois à l'écran et dans un fichier mais en ajoutant à la suite
$ ls -R /home/$USER/*.txt | tee -a liste.txt
Copier
Copier un fichier
$ cp fichier_source fichier_destination
Copier un ensemble de fichiers
$ cp /répertoire_source/*.html /répertoire_destination
Copier un répertoire
$ cp -R /répertoire_source /répertoire_destination
Déplacer
Déplacer un fichier
$ mv -i /chemin/fichier /chemin
Déplacer un répertoire
$ mv /chemin/rep_à_déplacer/ /chemin/destination/
Renommer
Renommer un fichier
$ mv fichier_source fichier_destination>
Comparer
Comparer 2 fichiers
$ cmp fichier1 fichier2
$ diff fichier1 fichier2
$ sdiff fichier1 fichier2
Comparer 3 fichiers
$ diff3 fichier1 fichier2 fichier3
Trier
Trier alphabétiquement
$ sort fichier
Trier numériquement
$ sort -n fichier
Éliminer les doublons
$ sort fichier | uniq
$ sort -u fichier
Afficher uniquement les doublons
$ sort fichier | uniq -d
Archiver/Désarchiver
Archiver un dossier/répertoire
$ tar -vcf nom_archive.tar nom_dossier_à_archiver
Désarchiver un dossier/répertoire
$ tar -vxf mon_archive.tar
Lister le contenu d'une archive
$ tar -tf mon_archive.tar
Compresser/Décompresser
Compresser une archive (sans sauvegarde de l'original)
$ compress mon_archive.tar
$ gzip mon_archive.tar
$ bzip2 mon_archive.tar
Compresser une archive (avec sauvegarde de l'original)
$ compress -c mon_archive.tar > mon_archive.tar.Z
$ gzip -c mon_archive.tar > mon_archive.tar.gz
$ bzip2 -k mon_archive.tar
Décompresser une archive
$ uncompress mon_archive.tar.Z
$ gunzip mon_archive.tar.gz
$ bunzip2 mon_archive.tar.bz2
Décompresser et Désarchiver
Une archive tar.gz
$ tar xvzf mon_archive.tar.gz
Une archive tar.bz2
$ tar xvjf mon_archive.tar.bz2
Compter
Compter les caractères d'un fichier
$ wc -c fichier
Compter les mots d'un fichier
$ wc -w fichier
Compter les lignes d'un fichier
$ wc -l fichier
$ sed -n '$=' fichier
Rechercher
Fichiers
Rechercher un fichier
$ find /chemin -name "nom" -print
Rechercher un motif dans une arborescence ( en affichant le chemin, le nom du fichier et le numéro de
ligne dans ce fichier)
$ find /chemin -name "*" -type f -exec grep -Hn "motif" {} \;
Mettre la base de slocate à jour
# updatedb
Rechercher un fichier indexé
$ locate nom
Un motif dans un fichier
$ grep "motif" fichier
Commandes
Localiser une commande
$ which commande
Rechercher les fichiers exécutables
$ whereis commande
Rechercher le nom du fichier qui sera exécuté à l'appel de commande
$ type -p commande
Utilisateurs
Qui est connecté ?
$ who
$ finger
Qui est connecté et qui fait quoi ?
$w
Qui suis-je ?
$ whoami
Où suis-je ?
$ pwd
Dépendances
Afficher les bibliothèques nécessaires à un programme
ldd /chemin/programme
Administration système
Gestion système
Activité du système
$ top
État des processus
$ ps -ef
Taux d'occupation du disque
$ df -h
Taux d'utilisation du disque
$ du -h /home/$USER
Gestion des utilisateurs
Ajouter un utilisateur
# useradd new_user
Supprimer un utilisateur
# userdel user
Ajouter un groupe
# groupadd new_groupe
Supprimer un goupe
# groupdel groupe
Changer le propriétaire d'un répertoire
# chown $USER /chemin/repertoire
Changer son mot de passe
$ passwd
Changer le mot de passe d'un utilisateur
# passwd login
Afficher les groupes auxquels appartient un utilisateur
$ groups $USER
Information utilisateur
$ finger $USER
Réseau
Information matériel
Connaitre le module d'une carte
# ethtool -i eth0
Plus d'infos
# udevinfo -a -p /sys/class/net/eth0/
Liste des interfaces détectées par le noyau
$ /sbin/ifconfig
$ /sbin/ip link show
Informations pour le sans-fil
# iwconfig
Outils supplémentaires
# mii-tool eth0
# mii-diag -a
Tests et mesures
Tester l'adresse locale
$ ping -c4 localhost
Pinger une adresse réseau
$ ping -c4 Adresse_IP
Vérifier les adresses MAC du LAN
# nmap -sP 192.168.1.1-254
Configuration
Configurer une adresse
# ifconfig eth0 192.168.10.1 netmask 255.255.255.0 broadcast 192.168.10.255
Ajouter une passerelle par défaut
# route add default gw nom_passerelle
Empêcher le ping
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
Connexion
ssh
$ ssh login@serveur
telnet
$ telnet adresse_IP
scp
$ scp /chemin/fichier login@serveur:/chemin/destination/
Connaitre son matériel
Système
Noyau
$ uname -r
Système d'exploitation
$ uname -o
Processeur
Type de processeur
$ uname -p
Informations détaillées
$ cat /proc/cpuinfo
Charge moyenne du processeur
$ cat /proc/loadavg
Mémoire
Informations détaillées
$ cat /proc/meminfo
Afficher l'état
$ free -m
Descriptif matériel
Ressources matérielles
# dmidecode
Liste matérielle
# lshw
# lshw -html > fichier.html
# lshal
Liste des cartes PCI
$ lspci -v
Liste des périphériques USB
# lsusb
Résolution d'écran
$ xrandr -q
Vérification prise en charge matérielle
Lister les codes fabricants et périphériques PCI
$ lspci -n
Coller le résultat sur "http://kmuto.jp/debian/hcl/" et cliquer sur "Check"
Périphériques inconnus (unknow) ?
# scanpci -v
Relever dans le descriptif de l'élément en question, son code "vendor" (0xXXXX) ainsi que son code
"device" (0xYYYY, puis rendez vous sur le site "PCIDatabase.com" pour en déterminer le constructeur et
le périphérique inconnu.
Bios
Information sur le Bios
# biosdecode
Module
Afficher les modules chargés
$ /sbin/lsmod
Afficher la listes des modules
$ /sbin/modprobe -l
Charger un module
# insmod chemin_vers_module
# modprobe nom_module
Supprimer un module
# rmmod nom_module
$ modprobe -r nom_module
Obtenir des infos sur un module
$ /sbin/modinfo nom_module
NOTES: insmod charge un module avec partir du chemin vers son fichier. Par exemple si vous voulez
charger le module machin.ko situé dans le répertoire courant, alors tapez insmod ./machin.ko Pour le
décharger: rmmod machin (sans ./ko derrière). insmod ne gère pas les dependances, donc si votre module
a besoin d'un autre pour se charger, insmod ne le chargera pas pour vous. Insmod est plutôt un outil de
développement. La commande modprobe est plus intelligente. Prenant en paramètre un nom de module
(sans le .ko en suffixe), elle va chercher le module dans le répertoire /lib/modules/`uname -r` et le charger
ainsi que ses dépendances.
Disque dur
Table des partitions
$ /sbin/fdisk -l
Informations disque
# hdparm -I /dev/xxx
(si smartmontools est installé)
# smartctl -i /dev/xxx
Test disque
# smartctl -t short /dev/xxx
Sauvegarder la table des partitions (MBR)
# dd if=/dev/hdx of=/chemin/sauvegarde.dd bs=512 count=1
Sauvegarder la table des partitions de la partition étendue
# sfdisk -d /dev/hdx > /chemin/save_etendue.sf
Restaurer la table des partitions (MBR)
# dd if=/chemin/sauvegarde.dd of=/dev/hdx
Restaurer la table des partitions de la partition étendue
# sfdisk /dev/hdx < /chemin/save_etendue.sf
Déterminer l'UUID d'un disque (Universal Unique IDentifier)
$ ls -l /dev/disk/by-uuid
# vol_id -u /dev/sda1
# blkid
Ajouter/retirer un périphérique de swap
# swapon chemin_périphérique
# swapoff chemin_périphérique
CD/DVD/Graveur
Trouver l'adresse SCSI du graveur
$ cdrecord --scanbus
$ cdrecord --scanbus dev=ATA
Débloquer le graveur Si pour une raison ou pour une autre le graveur ne répond plus à aucune
commande, renvoie des messages d'erreur et refuse de s'ouvrir même en appuyant sur le bouton
d'éjection, alors vous pouvez utiliser cdrdao pour le réinitialiser
# cdrdao unlock --device y,z
Température (lm_sensors)
Recherche des capteurs
$ sensors-detect
Chargement des modules
# modprobe i2c-xxx i2c-yyy i2c-zzz
Affichage température
$ sensors
Multimédia
Conversion de format vidéo
avi => flv
$ ffmpeg -i video.avi -f flv video.flv
flv => avi
$ ffmpeg -i video.flv -f avi video.avi
wmv => avi
$ ffmpeg -i video.wmv -f avi video.avi
avi => SVCD
$ ffmpeg -i video.avi -target pal-SVCD video.mpeg
Capture d'écran
Avec ImageMagcik
$ import -pause 5 capture.png
Conversion de formats graphiques
GIF => PNG
$ convert fichier_d_entree.gif fichier_en_sortie.png
JPG => PNG
$ convert fichier_d_entree.jpg fichier_en_sortie.png
etc.
Redimensionnement d'images
Avec ImageMagcik Dans les exemples ci-dessous, le format d'entrée peut être un autre format que PNG,
les dimensions peuvent être modifiées :
Redimensionnement à une taille donnée
$ convert fichier_d_entree.png -resize 320x200 fichier_en_sortie.png
Redimensionnement à une largeur donnée
$ convert fichier_d_entree.png -resize 320x fichier_en_sortie.png
Redimensionnement à une hauteur donnée
$ convert fichier_d_entree.png -resize 320x fichier_en_sortie.png
Redimensionnement de la première image d'un GIF animé
$ convert fichier_d_entree.gif[0] -resize 320x200 fichier_en_sortie.gif
Redimensionnement en forçant la valeur du fond transparent (afin d'éviter un fond noir peu
esthétique). Ici le fond est forcé en blanc :
$ convert fichier_d_entree.png -resize 320x200 -background white -flatten fichier_en_sortie.png
Divers
Afficher un calendrier du mois en cours
$ cal
Afficher un calendrier annuel
$ cal 2008
Ce document intitulé « Kit de survie Linux » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition
sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions
fixées par la licence, tant que cette note apparaît clairement.

Documents pareils