Maison  >  Article  >  Opération et maintenance  >  Comment surveiller l'état du serveur Linux

Comment surveiller l'état du serveur Linux

步履不停
步履不停original
2019-06-19 16:12:343387parcourir

Comment surveiller l'état du serveur Linux

Nous traitons quotidiennement avec des serveurs Linux, en particulier des ingénieurs Linux. Afin de garantir la sécurité et les performances du serveur, nous devons souvent surveiller certains statuts du serveur pour garantir que le travail peut être effectué sans problème.

Les différentes commandes présentées dans cet article sont non seulement adaptées à la surveillance des serveurs, mais également à notre développement quotidien.

1. watch

La commande watch est utilisée très fréquemment. Sa fonction de base est d'exécuter à plusieurs reprises une certaine instruction à une fréquence spécifiée. En utilisant cette commande, nous pouvons appeler à plusieurs reprises certaines commandes pour surveiller le serveur.

Par défaut, la période d'exécution de la commande watch est de 2 secondes, mais nous pouvons utiliser l'option -n pour spécifier la fréquence d'exécution. Par exemple, si nous voulons exécuter la commande date toutes les 5 secondes, on peut l'exécuter comme ceci :

$ watch -n 5 date

Un serveur doit être utilisé par plusieurs personnes, notamment des amis de ce département. Nous pouvons utiliser certaines commandes pour vérifier si ces amis pêchent en eaux troubles.

Nous pouvons exécuter la commande who toutes les 10 secondes pour voir qui utilise le serveur.

$ watch -n 10 who
Every 10.0s: who                             butterfly: Tue Jan 23 16:02:03 2019

shs      :0           2019-01-23 09:45 (:0)
dory     pts/0        2019-01-23 15:50 (192.168.0.5)
alvin     pts/1        2019-01-23 16:01 (192.168.0.15)
shark    pts/3        2019-01-23 11:11 (192.168.0.27)

Si nous constatons que le système fonctionne très lentement, nous pouvons appeler la commande uptime pour vérifier la charge moyenne du système.

$ watch uptime
Every 2.0s: uptime                           butterfly: Tue Jan 23 16:25:48 2019

 16:25:48 up 22 days,  4:38,  3 users,  load average: 1.15, 0.89, 1.02

Certains processus clés ne doivent pas se bloquer, sinon cela pourrait affecter le développement de l'entreprise, nous pouvons donc compter à plusieurs reprises le nombre de tous les processus sur le serveur.

$ watch -n 5 'ps -ef | wc -l'
Every 5.0s: ps -ef | wc -l                   butterfly: Tue Jan 23 16:11:54 2019

245

Si vous souhaitez connaître dynamiquement l'utilisation de la mémoire du serveur, vous pouvez exécuter à plusieurs reprises la commande free.

$ watch -n 5 free -m
Every 5.0s: free -m                          butterfly: Tue Jan 23 16:34:09 2019

              total        used        free      shared  buff/cache   available
Mem:           5959         776        3276          12        1906        4878
Swap:          2047           0        2047

Bien sûr, il n'y a pas que cela, nous pouvons également appeler à plusieurs reprises de nombreuses commandes pour surveiller certains paramètres clés du serveur,

top

En utilisant la commande top nous. peut savoir De nombreux paramètres clés du système sont mis à jour dynamiquement. Par défaut, top surveille l'état global du système. Si nous voulons uniquement connaître l'utilisation d'une certaine personne, nous pouvons utiliser l'option -u pour spécifier cette personne.

$ top -u alvin
top - 16:14:33 up 2 days,  4:27,  3 users,  load average: 0.00, 0.01, 0.02
Tasks: 199 total,   1 running, 198 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.2 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   5959.4 total,   3277.3 free,    776.4 used,   1905.8 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   4878.4 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
23026 alvin      20   0   46340   7820   6504 S   0.0   0.1   0:00.05 systemd
23033 alvin      20   0  149660   3140     72 S   0.0   0.1   0:00.00 (sd-pam)
23125 alvin      20   0   63396   5100   4092 S   0.0   0.1   0:00.00 sshd
23128 alvin      20   0   16836   5636   4284 S   0.0   0.1   0:00.03 zsh

Dans ce résultat, vous pouvez non seulement voir le nombre de tous les processus exécutés par l'utilisateur alvin, mais également les ressources système (CPU, mémoire) consommées par chaque processus. Vous pouvez également voir les paramètres clés de. l'ensemble du système.

3. ac

Si vous souhaitez connaître le temps nécessaire à chaque utilisateur pour se connecter au serveur, vous pouvez utiliser la commande ac. Cette commande nécessite que vous installiez le package acct (Debian) ou le package psacct (RHEL, Centos).

Si nous voulons connaître la somme du temps passé par tous les utilisateurs à se connecter au serveur, nous pouvons exécuter directement la commande ac sans aucun paramètre.

$ ac
        total     1261.72

Si nous voulons connaître le temps utilisé par chaque utilisateur, nous pouvons ajouter l'option -p.

$ ac -p
        shark                                5.24
        alvin                                5.52
        shs                               1251.00
        total     1261.76

Nous pouvons également visualiser la somme du temps de serveur utilisé par les utilisateurs chaque jour en ajoutant l'option -d.

$ ac -d | tail -10
Jan 11  total        0.05
Jan 12  total        1.36
Jan 13  total       16.39
Jan 15  total       55.33
Jan 16  total       38.02
Jan 17  total       28.51
Jan 19  total       48.66
Jan 20  total        1.37
Jan 22  total       23.48
Today   total        9.83

Résumé

Nous pouvons utiliser de nombreuses commandes pour surveiller l'état de fonctionnement du système. Cet article en présente principalement trois : La commande watch vous permet d'exécuter à plusieurs reprises un certain. Surveillez les modifications de certains paramètres. La commande top peut afficher le nombre de processus exécutés par un utilisateur et les ressources consommées, tandis que la commande ac peut afficher le temps du serveur utilisé par chacun. utilisateur. Quelle commande utilisez-vous souvent ? Bienvenue à laisser un message pour discussion !

Pour plus d'articles sur Linux, veuillez visiter la colonne Tutoriel Linux pour apprendre !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Bases de Linux, série 2Article suivant:Bases de Linux, série 2