Scroll to navigation

proc_sys_fs(5) File Formats Manual proc_sys_fs(5)

NOM

/proc/sys/fs/ - Variables du noyau relatives aux systèmes de fichiers

DESCRIPTION

/proc/sys/fs/
Ce répertoire contient les fichiers et sous-répertoires pour les variables du noyau relatives aux systèmes de fichiers.
/proc/sys/fs/aio-max-nr et /proc/sys/fs/aio-nr (depuis Linux 2.6.4)
aio-nr est le nombre total d’évènements en cours spécifiés par les appels io_setup(2) pour tous les contextes AIO actuellement actifs. Si aio-nr atteint aio-max-nr, io_setup(2) échouera avec l’erreur EAGAIN. Augmenter aio-max-nr ne provoque la préallocation ou le redimensionnement d’aucune structure de données du noyau.
/proc/sys/fs/binfmt_misc
La documentation concernant les fichiers de ce répertoire se trouve dans le fichier Documentation/admin-guide/binfmt-misc.rst des sources du noyau (ou dans Documentation/binfmt_misc.txt pour les noyaux plus anciens).
/proc/sys/fs/dentry-state (depuis Linux 2.2)
Ce fichier contient des informations sur l'état du cache de répertoire (dcache). Ce fichier contient six nombres nr_dentry, nr_unused, age_limit (âge en secondes), want_pages (pages réclamées par le système) et deux valeurs inutiles.
  • nr_dentry est le nombre d'entrées dcache allouées. Ce champ n'est pas utilisé dans Linux 2.2.
  • nr_unused est le nombre d'entrées dcache de répertoire libres.
  • age_limit est l'âge en seconde après lequel les entrées dcache peuvent être réclamées quand la mémoire est faible.
  • want_pages n'est pas nul quand le noyau a appelé shrink_dcache_pages() et que le cache de répertoire n'a pas encore été réduit.
/proc/sys/fs/dir-notify-enable
Ce fichier permet d'activer ou d’inhiber l'interface dnotify décrite dans fcntl(2) au niveau système. Une valeur 0 dans ce fichier désactive cette interface et la valeur 1 l'active.
/proc/sys/fs/dquot-max
Ce fichier montre le nombre maximal d'entrées de quota de disque en cache. Sur certains systèmes (2.4), il est absent. Si le nombre d’entrées de quota de disque libres est très bas, et si vous avez un nombre important d'utilisateurs simultanés, vous pouvez augmenter cette valeur.
/proc/sys/fs/dquot-nr
Ce fichier montre le nombre d'entrées de quota de disque allouées et le nombre d'entrées libres.
/proc/sys/fs/epoll/ (depuis Linux 2.6.28)
Ce répertoire contient le fichier max_user_watches qui peut être utilisé pour limiter la quantité de mémoire du noyau utilisée par l'interface epoll. Consulter epoll(7) pour davantage d'informations.
/proc/sys/fs/file-max
Ce fichier est la limite pour tout le système du nombre de fichiers ouverts par tous les processus. Les appels système qui échouent à cause de cette limite échouent avec l’erreur ENFILE (consulter aussi setrlimit(2) qui permet de définir la limite par processus, RLIMIT_NOFILE, du nombre de fichiers qu’il peut ouvrir). Si de nombreux messages d'erreurs dans le journal du noyau indiquent un manque de gestionnaires de fichiers (descripteurs de fichier ouvert – rechercher « VFS: file-max limit <number> reached »), essayez d'augmenter cette valeur.

echo 100000 > /proc/sys/fs/file-max
    

Les processus privilégiés (CAP_SYS_ADMIN) peuvent écraser la limite file-max.
/proc/sys/fs/file-nr
Ce fichier en lecture seule contient trois nombres : le nombre de gestionnaires de fichiers alloués (c'est-à-dire le nombre de descriptions de fichier ouverts, consulter open(2)), le nombre de gestionnaires de fichier libres et le nombre maximal de gestionnaires de fichier (c'est-à-dire la même valeur que /proc/sys/fs/file-max). Si le nombre de gestionnaires alloués est proche du maximum, le nombre maximal doit être augmenté. Avant Linux 2.6, le noyau allouait les gestionnaires dynamiquement, mais en retour ne les libérait pas. Au lieu de cela, les gestionnaires de fichier libres étaient stockés dans une liste pour être réalloués, le nombre « gestionnaires de fichier libres » se référant à la taille de cette liste. Un nombre élevé de gestionnaires de fichier libres était l'indication qu'un pic d'utilisation s'était produit. Depuis Linux 2.6, le noyau désalloue les gestionnaires de fichier libres, et le nombre « gestionnaires de fichier libres » est toujours zéro.
/proc/sys/fs/inode-max (avant Linux 2.2)
Ce fichier contient le nombre maximal d'inœuds en mémoire. Cette valeur devrait être 3 à 4 fois plus grande que le nombre file-max, car stdin, stdout et les sockets réseau nécessitent aussi des inœuds pour les gérer. En cas de manque régulier d’inœuds, cette valeur doit être augmentée.
Depuis Linux 2.4, il n'y a plus de limite statique du nombre d'inœuds et ce fichier n'existe plus.
/proc/sys/fs/inode-nr
Ce fichier contient les deux premières valeurs d'inode-state.
/proc/sys/fs/inode-state
Ce fichier contient sept nombres : nr_inodes, nr_free_inodes, preshrink et quatre valeurs non significatives (toujours zéro).
nr_inodes est le nombre d'inœuds alloués par le système. nr_free_inodes représente le nombre d'inœuds libres.
preshrink est non nul lorsque nr_inodes > inode-max et que le système doit purger la liste d'inœuds plutôt qu'en allouer davantage. Ce champ n'est plus significatif depuis Linux 2.4 (toujours zéro).
/proc/sys/fs/inotify/ (depuis Linux 2.6.13)
Ce répertoire contient les fichiers max_queued_events, max_user_instances et max_user_watches, qui permettent de limiter la quantité de mémoire du noyau utilisée par l'interface inotify. Consulter inotify(7) pour davantage d'informations.
/proc/sys/fs/lease-break-time
Ce fichier indique le délai de grâce que le noyau accorde à un processus détenant un bail de fichier (fcntl(2)) après qu'il lui a envoyé un signal indiquant qu'un autre processus attend pour ouvrir le fichier. Si, durant le délai de grâce, le détenteur du bail ne le supprime pas ou ne le réduit pas, le noyau cassera le bail d’autorité.
/proc/sys/fs/leases-enable
Ce fichier permet d'activer ou désactiver les baux de fichier (fcntl(2)) pour tout le système. Si ce fichier contient la valeur 0, les baux sont cassés. Une valeur non nulle active les baux.
/proc/sys/fs/mount-max (depuis Linux 4.9)
La valeur dans ce fichier indique le nombre maximal de montages pouvant exister dans l’espace de noms montage. La valeur par défaut est 100 000.
/proc/sys/fs/mqueue/ (depuis Linux 2.6.6)
Ce répertoire contient les fichiers msg_max, msgsize_max et queues_max qui contrôlent les ressources utilisées par les files de messages POSIX. Consulter mq_overview(7) pour davantage d'informations.
/proc/sys/fs/nr_open (depuis Linux 2.6.25)
Ce fichier impose un plafond à la valeur que la limite RLIMIT_NOFILE peut atteindre (consulter getrlimit(2)). Ce plafond est imposé pour les processus, qu’ils soient privilégiés ou non. La valeur par défaut dans ce fichier est 1048576 (avant Linux 2.6.25, le plafond pour RLIMIT_NOFILE était codé en dur à la même valeur).
/proc/sys/fs/overflowgid et /proc/sys/fs/overflowuid
Ces fichiers permettent de changer la valeur des GID et UID fixes – par défaut 65534. Certains systèmes de fichiers ne gèrent que des UID et GID de 16 bits, bien que les UID et GID dans Linux soient de 32 bits. Lorsque l'un de ces systèmes de fichiers est monté en lecture/écriture, tout UID ou GID dépassant 65535 est remplacé par la valeur de débordement avant l'écriture sur le disque.
/proc/sys/fs/pipe-max-size (depuis Linux 2.6.35)
Consulter pipe(7).
/proc/sys/fs/pipe-user-pages-hard (depuis Linux 4.5)
Consulter pipe(7).
/proc/sys/fs/pipe-user-pages-soft (depuis Linux 4.5)
Consulter pipe(7).
/proc/sys/fs/protected_fifos (depuis Linux 4.19)
La valeur dans ce fichier est/peut être une des valeurs suivantes :
0
Écriture dans des FIFO non restreinte.
1
Ne pas autoriser O_CREAT open(2) dans des FIFO que l’appelant ne possède pas dans ses répertoires « sticky » éditables par tout le monde, à moins que le propriétaire du répertoire ne soit le propriétaire d’une FIFO.
2
Comme pour la valeur 1, mais les restrictions s’appliquent aussi aux répertoires « sticky » éditables par le groupe.
Le but des protections précédentes est d’éviter des écritures accidentelles dans une FIFO contrôlée par un attaquant quand le programme avait l'intention de créer un fichier normal.
/proc/sys/fs/protected_hardlinks (depuis Linux 3.6)
Quand la valeur dans ce fichier est 0, aucune restriction n'empêche la création de liens physiques (c'est-à-dire le comportement historique avant Linux 3.6). Quand la valeur de ce fichier est 1, un lien physique ne peut être créé vers un fichier cible que si une des conditions suivantes est vraie :
  • Le processus appelant a la capacité CAP_FOWNER dans son espace de noms utilisateur et l’UID du fichier a un mappage dans l’espace de noms.
  • L'UID de système de fichiers du processus créant le lien correspond au propriétaire (UID) du fichier cible (conformément à la description dans credentials(7), l'UID de système de fichiers d'un processus est normalement le même que son UID effectif).
  • Toutes les conditions suivantes sont vraies :
  • la cible est un fichier ordinaire ;
  • le fichier cible n'a pas son bit set-user-ID activé ;
  • le fichier cible n'a aucun de ses bits set-group-ID et de mode exécutable activé ;
  • l'appelant a le droit de lire et écrire le fichier cible (soit à travers le masque des droits du fichier, soit parce qu’il dispose de la capacité nécessaire).
La valeur par défaut dans ce fichier est 0. Définir cette valeur à 1 empêche une classe de problèmes de sécurité anciens provoqués par des situations de compétition d’instant de vérification basé sur des liens physiques ou d’instant d’utilisation, rencontrés le plus souvent dans des répertoires accessibles en écriture à tous comme /tmp. La méthode habituelle pour exploiter ce défaut est de croiser les limites de droits lors du suivi d'un lien physique donné (c'est-à-dire qu'un processus du superutilisateur suit un lien créé par un autre utilisateur). De plus, sur les systèmes sans partitions séparées, cela empêche les utilisateurs non autorisés d'« épingler » les fichiers set-user-ID et set-group-ID vulnérables, pour les empêcher d'être mis à jour par l'administrateur ou d'être liés vers des fichiers spéciaux.
/proc/sys/fs/protected_regular (depuis Linux 4.19)
La valeur dans ce fichier est/peut être une des valeurs suivantes :
0
Écriture dans des fichiers normaux non restreinte.
1
Ne pas autoriser O_CREAT open(2) dans des fichiers normaux dont l’appelant n’est pas le propriétaire dans ses répertoires « sticky » éditables par tout le monde, à moins que le propriétaire du répertoire ne soit le propriétaire du fichier normal.
2
Comme pour la valeur 1, mais les restrictions s’appliquent aussi aux répertoires « sticky » éditables par le groupe.
Le but des protections précédentes est similaire à protected_fifos, mais permet à une application d’éviter des écritures dans un fichier normal contrôlé par un attaquant quand le programme avait l'intention d’en créer un.
/proc/sys/fs/protected_symlinks (depuis Linux 3.6)
Quand la valeur dans ce fichier est 0, aucune restriction n'empêche le suivi de liens symboliques (c'est-à-dire le comportement historique avant Linux 3.6). Quand la valeur de ce fichier est 1, les liens symboliques ne sont suivis que dans l'une des circonstances suivantes :
  • l'UID de système de fichiers du processus suivant le lien correspond au propriétaire (UID) du lien symbolique (conformément à la description dans credentials(7), l'UID de système de fichiers d'un processus est normalement le même que son UID effectif) ;
  • le lien n'est pas dans un répertoire « sticky » accessible en écriture à tous ;
  • le lien symbolique et son répertoire parent ont le même propriétaire (UID).
Un appel système qui n'arrive pas à suivre un lien symbolique à cause des restrictions ci-dessus renvoie l'erreur EACCES dans errno.
La valeur par défaut dans ce fichier est 0. Définir cette valeur à 1 empêche une classe de problèmes de sécurité anciens basés sur des situations de compétition d’instant de vérification ou d’instant d'utilisation lors de l'accès aux liens symboliques.
/proc/sys/fs/suid_dumpable (depuis Linux 2.6.13)
La valeur dans ce fichier est assignée à un drapeau « dumpable » de processus dans les circonstances décrites dans prctl(2). En effet, la valeur dans ce fichier détermine si les fichiers de vidage mémoire sont produits pour des binaires set-user-ID ou pour des binaires protégés/corrompus. Le réglage « dumpable » affecte aussi l’appartenance de fichiers dans un répertoire /proc/pid de processus comme cela est décrit ci-dessus.
Trois valeurs d’entier différentes peuvent être indiquées :
0 (par défaut)
Cette valeur correspond au comportement traditionnel (antérieur à Linux 2.6.13). Une image mémoire ne sera pas produite pour un processus qui a modifié ses droits (en appelant seteuid(2), setgid(2), ou autre, ou en exécutant un programme set-user-ID ou set-group-ID) ou dont le binaire n'a pas le droit de lecture activé.
1 (« débogage »)
Des images mémoire de tous les processus seront faites si possible (les raisons pour lesquelles des images mémoire sont néanmoins possibles sont décrites dans core(5)). L'image mémoire appartient à l'ID utilisateur du système de fichiers du processus dont l'image a été créée et aucune mesure de sécurité n'est prise. Cette valeur n'est prévue que pour des raisons de débogage, ce mode n’étant pas sécurisé ; il permet en effet aux utilisateurs non privilégiés d’examiner le contenu de la mémoire des processus privilégiés.
2 (« suidsafe »)
L'image mémoire d'un binaire qui n'aurait normalement pas été vidée (voir « 0 » ci-dessus) est sauvegardée et lisible par le superutilisateur (root) seulement. Cela permet à l'utilisateur de pouvoir supprimer l'image mémoire mais pas de la lire. Pour des raisons de sécurité, les images mémoire prises dans ce mode n'en écraseront pas une autre ou d'autres fichiers. Ce mode est adéquat lorsque l'administrateur essaie de déboguer des problèmes dans un environnement normal.
De plus, depuis Linux 3.6, /proc/sys/kernel/core_pattern doit être soit un chemin absolu, soit une commande de tube (« pipe »), comme précisé dans core(5). Des avertissements seront écrits dans le journal du noyau si core_pattern ne suit pas ces règles et aucune image mémoire ne sera produite.
Pour plus de détails sur les effets du réglage « dumpable » d’un processus sur la vérification du mode d’accès ptrace, consulter ptrace(2).
/proc/sys/fs/super-max
Ce fichier indique le nombre maximal de superblocs, et donc le nombre maximal de systèmes de fichiers que le noyau peut monter. Vous n'avez besoin d'augmenter super-max que si vous désirez monter plus de systèmes de fichiers que ce que la valeur actuelle de super-max vous permet.
/proc/sys/fs/super-nr
Ce fichier contient le nombre de systèmes de fichiers montés actuellement.

VOIR AUSSI

proc(5), proc_sys(5)

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr> et Lucien Gentis <lucien.gentis@waika9.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.

2 mai 2024 Pages du manuel de Linux 6.8