Et n'hésitez pas à me signaler si vous voyez d'autres outils à ajouter.
Réseau
Il s'agit ici des commandes classiques pour configurer et surtout dépanner votre réseau.La commande ifconfig
La commande ifconfig permet la configuration locale ou à distance des interfaces réseau de tous types d'équipements (unité centrale, routeur). Sans paramètres, la commande ifconfig permet d'afficher les paramètres réseau des interfaces. Sous Debian, la configuration de l'adresse IP peut se faire avec Network-Manager (pas sur un serveur) et via le fichier /etc/network/interfaces.La commande ping
Outil très connu, la commande ping est en général très mal utilisée, les utilisateurs se contentant d'un ping google.fr avant de décréter que rien ne fonctionne. Voici une proposition de tests à faire avant de crier au désastre.ping 127.0.0.1 adresse de bouclage
ping 172.16.1.1 adresse locale
ping 172.16.1.2 adresse d'une autre machine de notre réseau
ping 172.16.1.254 adresse de notre passerelle
ping ... adresses de toutes les passerelles connues
ping 8.8.8.8 adresse de google
ping 172.16.0.11 adresse du serveur DNS
ping google.fr adresse de google avec résolution de nom
La commande arp
La commande arp permet de visualiser ou modifier la table du cache arp de l'interface. Cette table peut être statique et/ou dynamique. Elle donne la correspondance entre une adresse IP et une adresse MAC (Ethernet).Le cache ARP est obtenu avec la commande arp -va
Utiliser arp -d pour supprimer une entrée
Un ping ultérieur permettra d'obtenir des informations fraîches.
La commande route
Le routage définit le chemin emprunté par les paquets entre un point de départ et un point d'arrivée. La commande route permet également la configuration de pc, de switchs et de routeurs. Sans vouloir nous appesantir sur le routage ici, l'affichage des routes connues par la machine est un indice très intéressant. On utilise route -n pour ce faire.La commande netstat
La commande netstat permet de tester la configuration du réseau, visualiser l'état des connexions, établir des statistiques, notamment pour surveiller les serveurs. Pour information, netstat -nr donne la table de routage de la machine, comme route -n.La commande traceroute
La commande traceroute permet d'afficher le chemin parcouru par un paquet pour arriver à destination. Cette commande est importante, car elle permet d'équilibrer la charge d'un réseau, en optimisant les routes.La commande dig
La commande dig remplace ce qui était la commande nslookup. Cette commande sert à diagnostiquer des dysfonctionnements dans la résolution de noms (service DNS). Elle affichera le contenu de la réponse obtenue auprès du serveur DNS.La commande host
La commande host interroge les serveurs de noms. Elle peut par exemple être utilisée pour détecter des dysfonctionnement sur un réseau (serveurs hors services). Attention, n'utilisez pas cette commande sur des réseaux dont vous n'avez pas l'administration.Système
Passons aux commandes utiles pour mieux cerner, dépanner, configurer votre système.La commande lsof
La commande lsof permet de lister les fichiers ouverts et les processus actifs.Pour indiquer les processus de type internet : lsof -i
On peut ne demander que pour un protocole lsof -ni tcp:25
ou que vers une machine : lsof -ni @192.168.0.1:25
La forme suivante de la commande permet de connaître tous les fichiers ouverts par l'utilisateur 500 ou toto ou par le processus 1234 ou 12345. lsof -p 1234, 12345 -u 500, toto
La commande telnet
Telnet était l'outil indispensable à connaître. Malheureusement, elle pose de sérieux problèmes de sécurité (elle transmet les mots de passe en clair sur le réseau). C'est pourquoi on lui préfère la commande ssh surtout si on doit s'en servir sur un réseau local ou sur internet.La commande tcpdump
La commande tcpdump permet de faire des captures de paquets sur votre réseau. Il n'est pas le plus agréable à utiliser des utilitaires de ce type et on trouve bien plus convivial dans l'interface.La commande nmap
nmap est un outil pour scanner les ports ouverts sur une machine distante. Énormément d'options sont disponibles. Il existe une surcouche graphique nommée Zenmap.La commande top
Un outil indispensable pour afficher les processus les plus gourmands de votre machine.La commande who
Cette commande permet l'affichage des utilisateurs connectés.La commande tload
tload affiche la charge CPU sous forme de graphique.La commande ps
Cette commande affiche les processus exécutés sur la machine.
ps -ef : affiche tous les processus lancés.ps -ejH: afficher process en arbre
La commande kill
Complément régulier de la commande précédente kill permet de tuer un processus (via son PID)kill -9 : force à quitter
killall : quitte toutes les occurrences d’un programme
Les commandes halt, reboot et shutdown
halt, reboot, shutdown permettent l'arrêt, le redémarrage, ou la programmation de cet arrêt ou redémarrage.La commande last
Pour obtenir l'historique des connexions : last.La commande df
df sert à connaître le remplissage des disques (l’option -h permet d’obtenir les tailles en « human readable »).La commande fdisk
Pour afficher la table des partitions, utiliser fdisk -l.La commande free
free indique l’allocation de la ram et la mémoire libre restante.free -m : information sur la mémoire
La commande vmstat
vmstat permet l'obtention d'information sur la ram, le swap, et l'utilisation cpu.La commande hostname
hostname affiche le nom d’hôte de la machine conformément à ce qui est écrit dans le fichier /etc/hostname.La commande uname
uname permet de récupérer des informations sur le système et le matériel.La commande lsb_release
lsb_release -a donne toutes les informations sur la distribution.La commande lspci
lspci liste tous les périphériques PCI.La commande lsusb
lsusb liste tous les périphériques USB.La commande dmesg
dmesg affiche les messages loggés par le buffer du noyau.La commande apt-cache
apt-cache permet la gestion des paquets. Deux options sont très utilesapt-cache search nom_paquet, permet de chercher un paquet,
et apt-cache show, permet d’obtenir des détails sur un paquet.
La commande apt-get
apt-get quqnt à lui permet la gestion des paquets. Les commandes que l’on utilisera le plus sontupdate : mise à jour des sources de paquets disponibles,
upgrade : mise à jour du système et autres logiciels,
install : apt-get intall paquet-à-installer pour installer un nouveau logiciel et ses dépendances,
purge : permet de désinstaller un paquet de manière plus « propre » que remove car cela efface aussi les fichiers de configuration.
La commande dpkg
dpkg commande travaillant sur les paquets.Pour obtenir des informations sur les paquets installés (options pour lister tous les paquets, désinstaller, etc.).
dpkg --get-selections : liste des paquets installés
Mais aussi pour installer un paquet téléchargé : dpkg --install
La commande make
make permet de compiler un programme dont on détient les sources. La procédure classique est la suivante :./configure (à lancer avec –help pour voir les différentes options de compilation) qui lance le script de configuration qui vérifie la présence de toutes les dépendances et écrit le fichier makefile qui contient les ordres de compilation,
make qui lance la compilation
et enfin make install qui installe le logiciel.
La commande update-rc.d
update-rc.d permet de configurer le démarrage ou l’arrêt automatique de service au démarrage de la machine ou selon le runlevel. On donne en argument le nom du service et l’action (remove ou default pour l’ajout) update-rc.d -f apache2 remove-f permet de forcer l’effacement du lien symbolique même si le nom existe encore. On peut aussi placer un script de démarrage dans répertoire /etc/init.d ou le renseigner le fichier /etc/rc.local (qui a lui-même un lien symbolique dans /etc/init.d).
Quelques commandes supplémentaires
cat /etc/passwd affiche les utilisateurs.cat /etc/group affiche les groupes.
which localise une commande. ex : which cat /bin/cat.
whereis localiser un fichier binaire.