Comment limiter le temps et l'utilisation de la mémoire des processus dans Linux
- 1941
- 387
- Romain Martinez
Le temps libre Le script est un programme de surveillance des ressources utile pour limiter le temps et la consommation de mémoire des processus dans Linux. Il vous permet d'exécuter des programmes sous contrôle et d'appliquer des limites de temps et de mémoire, mettant fin au programme en violation de ces paramètres.
Aucune installation nécessaire, exécutez simplement une commande avec ses arguments en utilisant temps libre programme et il surveillera la mémoire et la consommation de temps de la commande, interrompant le processus s'il sort des limites et vous avertit avec le message prédéfini.
Pour exécuter ce script, vous devez avoir Perl 5 Installé sur votre système Linux et le système de fichiers / proc monté.
Pour vérifier la version installée de Perler Sur votre système Linux, exécutez la commande suivante.
$ perl -vVérifiez la version perl dans Linux
Ensuite, clone le temps libre Référentiel de votre système à l'aide de la commande git, puis déplacez-vous dans le référentiel local à l'aide de la commande CD et appelez-le comme commande Linux habituelle.
$ cd ~ / bin $ git clone https: // github.com / pshved / timeout.Git $ CD Timeout
Voyons maintenant comment temps libre Script fonctionne.
Limitation de mémoire de base (100m de mémoire virtuelle):
Ce premier exemple montre comment limiter l'utilisation de la mémoire d'un processus pour 100m de mémoire virtuelle, en utilisant le -m
drapeau. L'unité par défaut pour la mémoire est dans kilobytes.
Ici, la commande de stress-ng exécute 4 facteurs de stress de mémoire virtuelle (VM) qui se combinent à utiliser 40% de la mémoire disponible pendant 10 minutes. Ainsi chacun stress les usages dix% de la mémoire disponible.
$ ./ Timeout -M 100000 stress-ng --vm 4 --vm-octets 40% -T 10mLimiter la mémoire du processus
Considérant la sortie du temps libre commande ci-dessus, le stress-ng Les processus de travailleurs ont été interrompus après 1.16 secondes. En effet, la consommation combinée de mémoire du Machines virtuelles (438660 kilobytes) est supérieur à l'utilisation de la mémoire virtuelle autorisée pour stress-ng et ses processus enfants.
Limitation de temps de base du processus:
Pour permettre la limitation du temps du processus, utilisez le -t
Flag comme indiqué.
$ ./ Timeout -T 4 Stress-ng --vm 4 --vm-octets 40% -T 10mLimitation de temps du processus
Dans l'exemple ci-dessus, lorsque stress-ng CPU + SYS le temps dépasse la valeur définie de 4, Les processus des travailleurs sont tués.
Limiter le temps et la mémoire du processus
Vous pouvez également limiter les deux mémoire et temps tout de suite comme suit.
$ ./ Timeout -T 4 -M 100000 stress-ng --vm 4 --vm-octets 40% -T 10m
Le délai d'attente prend également en charge certaines options avancées telles que --détection-hangups
, qui permet la détection.
$ ./ Timeout --Detect-Hangups -M 100000 Stress-ng --vm 4 --vm-octets 40% -T 10m
Vous pouvez surveiller RSS (Taille de l'ensemble résident) Limite de mémoire en utilisant le --memiminit-RSS
ou -s
changer.
$ ./ Timeout -M 100000 -S Stress-ng --vm 4 --vm-octets 40% -T 10m
De plus, pour retourner le code de sortie ou le signal + 128 d'un processus, utilisez le --confesser
ou -c
Option comme indiqué.
$ ./ Timeout -M 100000 -C Stress-ng --vm 4 --vm-octets 40% -T 10m
Pour plus d'informations et un exemple d'utilisation, consultez le temps libre Référentiel GitHub: https: // github.com / pshved / timeout.
Vous pouvez également trouver ces articles connexes suivants tout aussi utiles:
- Comment trouver les 15 meilleurs processus par utilisation de la mémoire avec «Top» en mode lot
- Cputool - Limiter et contrôler l'utilisation du processeur de tout processus dans Linux
- Comment limiter l'utilisation du processeur d'un processus dans Linux avec l'outil CPULIMIT
Le temps libre Le script est un programme de surveillance des ressources simples qui restreint essentiellement la consommation de temps et de mémoire des processus dans Linux. Vous pouvez nous donner des commentaires sur le temps libre script via le formulaire de commentaire ci-dessous.
- « Configuration de lier en tant que serveur DNS privé sur RHEL 8
- Installez la surveillance du réseau OpenNMS dans Debian et Ubuntu »