Maison > Article > Opération et maintenance > 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.
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,
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.
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
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!