« Outils système » : différence entre les versions

De Banane Atomic
Aller à la navigationAller à la recherche
 
Ligne 77 : Ligne 77 :
# paquet smartmontools
# paquet smartmontools
</kode>
</kode>
= Réseau =
Utiliser {{boxx|nethogs}} pour lister les process par utilisation du réseau.


= Appels système =
= Appels système =

Dernière version du 17 novembre 2023 à 10:50

Processus

ps

Process Status permet de lister les processus en cours d’exécution.
Il existe 2 syntaxes:

  • la standard: ps -option
  • la BSD: ps option
Bash.svg
# liste tous les processus
ps axu
# a → tous les processus avec un terminal tty
# x → les processus sans terminal tty, utilisé avec a permet de lister tous les processus avec et sans terminal tty
# u → colonne user entre autre

# liste tous les processus en arborescence
ps axjf

# liste tous les processus d'un utilisateur
ps U utilisateur u

pgrep

Recherche parmi les processus en fonction de leur nom

Bash.svg
pgrep -a pattern
# -a: list the full command line

# afficher plus d'informations 
ps -p $(pgrep $pattern | xargs echo | sed 's/ /,/g') -o pid,euser,start,args
# -f: full-format listing
# -o: output columns
# -p: recherche par PID
# -w: si le résultat ne rentre pas en entier sur la ligne

lsof

Liste les processus qui utilise un fichier.

Gestionnaire de processus

htop

remove duplicates:

  • F2 → Display options
    • Hide kernel threads
    • Hide userland process threads

top

Utilisation de la RAM

Bash.svg
free -h

Disque dur

espace disque

Bash.svg
df -h

# du avec interface ncurse
ncdu

Vitesse de lecture du disque

Bash.svg
sudo hdparm -t /dev/sdX

Informations SMART

Bash.svg
sudo smartctl --info /dev/sdX
# paquet smartmontools

Réseau

Utiliser nethogs pour lister les process par utilisation du réseau.

Appels système

strace intercepte les appels système d'un programme.

Bash.svg
strace -e open,write -o fichier.log commande_à_éxécuter arguments
Ne marche pas avec sudo

Obtenir la trace avec gdb

Bash.svg
# débugger le processus 666
gdb -p 666
Commandes
c continue
thread apply all bt afficher la trace

Analyser les core dump

Bash.svg
# lister les core dump
coredumpctl list

# le PID est obtenu dans la liste des core dump
coredumpctl info [PID]

# afficher la backtrace
coredumpctl gdb [PID]
# (gdb) bt

lecture / écriture

inotify-tools

Documentation

Surveiller les accès aux fichiers

Bash.svg
# liste tous les fichiers qui sont modifiés dans le dossier chemin et ses sous-dossiers
inotifywait -rme modify /chemin

Options :

  • r : récursif, parcourt des sous-dossiers
  • m : monitoring, normalement le programme stoppe au premier événement. Dans ce cas il reste à l'écoute indéfiniment
  • e : événements à écouter : modify open create ...

Failed to watch ; upper limit on inotify watches reached!

Le nombre maximal d'éléments à écouter a été atteind.

Bash.svg
# Afficher le nombre max de fichiers qui peuvent être surveillés
cat /proc/sys/fs/inotify/max_user_watches  # 8192

# Modifier le nombre max de fichiers qui peuvent être surveillés
echo 65536 > /proc/sys/fs/inotify/max_user_watches

iotop: gestionnaire des entrées / sorties

  • left and right arrow keys to change the sorting.
  • r to reverse the sorting order.
  • o only to see processes or threads actually doing I/O, instead of showing all processes or threads.
  • a display accumulated I/O instead of bandwidth. In this mode, iotop shows the amount of I/O processes have done since iotop started.

Gestionnaire de ressources du serveur X: xrestop

Bash.svg
sudo pacman -S xrestop

xrestop

Historique des arrêts du système

Bash.svg
last -x shutdown | less

Informations sur le matériel

Bash.svg
hwinfo --short

# processeur
lscpu
cat /proc/cpuinfo