Comment modifier les variables du noyau Linux à l'aide de la commande sysctl
- 2142
- 241
- Maxence Arnaud
Vous pouvez configurer plusieurs paramètres ou tunables de Linux (le noyau) pour contrôler son comportement, soit au démarrage ou à la demande pendant que le système fonctionne. sysctl est un utilitaire de ligne de commande largement utilisé pour modifier ou configurer les paramètres du noyau à l'exécution. Vous pouvez trouver les tunables du noyau répertoriés sous le / proc / sys / annuaire.
Il est alimenté par procfs (Système de fichiers Proc), un système de fichiers pseudo dans Linux et d'autres systèmes d'exploitation de type Unix qui fournit une interface aux structures de données du noyau. Il présente des informations sur les processus et les informations système supplémentaires.
Les éléments suivants sont 10 utiles sysctl Commande des exemples que vous pouvez utiliser lors de l'administration d'un système Linux en cours d'exécution. Notez que vous avez besoin de privilèges racine pour exécuter le sysctl la commande, sinon, utilisez la commande sudo lorsque vous l'appelez.
Table des matières
1- Exemples de commande sysctl dans Linux
- 1. Énumérez tous les paramètres du noyau dans Linux
- 3. Liste tous les noms de variables du noyau
- 3. Trouver des variables de noyau spécifiques dans Linux
- 4. Énumérez toutes les variables du noyau, y compris obsolètes
- 5. Énumérer la valeur de variable du noyau spécifique
- 6. Écrivez temporairement la variable du noyau
- 7. Écrire la variable du noyau permanent
- 8. Recharger Sysctl.Variables confr dans Linux
- 9. Recharger les paramètres à partir de fichiers de configuration personnalisés
- dix. Recharger les paramètres qui correspondent au modèle
Exemples de commande sysctl dans Linux
Dans ce guide, nous expliquerons 10 exemples de commandes pratiques Sysctl que vous pouvez utiliser sur un système Linux.
1. Énumérez tous les paramètres du noyau dans Linux
Pour répertorier tous les paramètres du noyau actuellement disponibles, exécutez la commande sysctl avec le -un
ou --tous
Flag comme indiqué.
$ sudo sysctl -a ou $ sudo sysctl - tout
Les variables sont affichées dans ce format:
. =
Par exemple,
noyau.Ostype = LinuxVérifiez les paramètres du noyau dans Linux
3. Liste tous les noms de variables du noyau
Pour imprimer uniquement des noms de variables sans leurs valeurs, utilisez le -N
Option comme indiqué.
$ sudo sysctl -a -nVérifiez les noms de variables du noyau dans Linux
3. Trouver des variables de noyau spécifiques dans Linux
Pour trouver une variable spécifique, vous pouvez filtrer la sortie de sysctl via la commande grep, par exemple, pour filtrer toute variable associée à mémoire Gestion, vous pouvez exécuter la commande suivante:
$ sudo sysctl -a | Mémoire Grep ou $ sudo sysctl - tout | mémoire grepVérifiez la variable de mémoire du noyau dans Linux
4. Énumérez toutes les variables du noyau, y compris obsolètes
sysctl La commande affiche également les variables obsolètes ainsi que la liste de toutes les variables disponibles à l'aide du --déprécié
Flag comme indiqué.
$ sudo sysctl -a --préféré ou $ sudo sysctl -a --préféré | mémoire grep
5. Énumérer la valeur de variable du noyau spécifique
Pour lire un sysctl variable et ses valeurs, spécifiez le nom de variable comme argument pour le sysctl Commandes comme suit. Cet exemple montre comment lire le noyau.ostype
variable.
$ sudo sysctl noyau.ostype noyau.Ostype = Linux
6. Écrivez temporairement la variable du noyau
Pour écrire des variables temporairement, spécifiez simplement la variable dans ce format.
.=
L'exemple suivant montre comment augmenter la taille maximale de la file d'attente de réception, qui stocke les cadres sélectionnés dans le tampon d'anneau du Nic (Carte d'interface de réseau), une fois qu'ils sont reçus du réseau. La taille de la file d'attente peut être modifiée à l'aide du filet.cœur.netdev_max_backlog
variable comme indiqué.
$ sudo sysctl net.cœur.netdev_max_backlog $ sudo sysctl net.cœur.netdev_max_backlog = 1200 $ sudo sysctl net.cœur.netdev_max_backlogDéfinir temporairement la variable du noyau
7. Écrire la variable du noyau permanent
sysctl peut également écrire des variables en permanence dans un fichier de configuration. Pour y parvenir, utilisez le -w
option, et spécifiez le fichier de configuration la variable et sa valeur sera ajoutée, dans ce cas, il est / etc / sysctl.confli, Le fichier de configuration SYSCTL par défaut:
$ sudo sysctl -w net.cœur.netdev_max_backlog = 1200 >> / etc / sysctl.confli
Pour écrire des fichiers en permanence dans une personnalité, spécifiez l'emplacement du fichier comme suit. Parfois, vous pouvez ne pas créer un fichier dans des emplacements particuliers même lorsque vous invoquez le sysctl commande en utilisant le commande sudo.
Dans un tel cas, passez au compte racine (si vous avez les privilèges) et exécutez à nouveau la commande comme indiqué.
$ sudo sysctl -w net.cœur.netdev_max_backlog = 1200 >> / etc / sysctl.D / 10-tests-settings.Conf $ sudo su # sysctl -w net.cœur.netdev_max_backlog = 1200 >> / etc / sysctl.D / 10-tests-settings.confliDéfinir la variable du noyau permanent
Alternativement, vous pouvez créer le nouveau fichier de configuration dans / etc / sysctl.d/ Répertoire comme indiqué:
$ sudo vim / etc / sysctl.D / 10-tests-settings.confli
Puis ajoutez les paramètres du noyau, en elle une par ligne comme indiqué.
filet.cœur.netdev_max_backlog = 1200 utilisateur.Max_net_Namespaces = 63067 VM.overcomit_memory = 0
Ensuite, enregistrez le fichier et fermez-le. Pour charger les paramètres à partir du fichier personnalisé que vous venez de créer, utilisez le -p
ou --charger
drapeau.
$ sudo sysctl -p / etc / sysctl.D / 10-tests-settings.conf ou $ sudo sysctl --load = / etc / sysctl.D / 10-tests-settings.confli
8. Recharger Sysctl.Variables confr dans Linux
Pour recharger les paramètres de tous les fichiers de configuration du système sans redémarrer, émettez la commande suivante.
$ sudo sysctl - système
La commande ci-dessus lira tous les fichiers de configuration du système à partir de ces répertoires, dans cet ordre:
/ run / sysctl.d/*.conf / etc / sysctl.d/*.conf / usr / local / lib / sysctl.d/*.conf / usr / lib / sysctl.d/*.conf / lib / sysctl.d/*.conf / etc / sysctl.confli
9. Recharger les paramètres à partir de fichiers de configuration personnalisés
Vous pouvez également recharger les paramètres de variable à partir d'un fichier de configuration SYSCTL personnalisé comme indiqué.
$ sudo sysctl -p / etc / sysctl.D / 10-tests-settings.conf ou $ sudo sysctl --load = / etc / sysctl.D / 10-tests-settings.confli
dix. Recharger les paramètres qui correspondent au modèle
Pour appliquer uniquement les paramètres qui correspondent à un certain modèle, utilisez le -r
ou --modèle
comme suit. Notez que le modèle utilise une syntaxe d'expression régulière étendue, voici quelques exemples:
$ sudo syscTl --System --Pattern '^ net.ipv6 '$ sudo sysctl --mystem -r mémoireRecharger les paramètres qui correspondent au modèle
Dans ce guide, nous avons expliqué 10 sysctl Exemples de commande que vous pouvez utiliser pour gérer un système Linux en cours d'exécution. Pour plus d'informations, lisez le sysctl Page de l'homme (homme sysctl).
- « Comment crypter le disque complet lors de l'installation d'Ubuntu 22.04
- Comment installer mono (Microsoft .Net Framework) dans les systèmes RHEL »