sysfs est un système de fichiers virtuel normalement monté sur /sys. Il représente les objets du noyau et leurs relations par des répertoires, des liens symboliques et de petits fichiers d'attributs. Les outils de découverte et gestionnaires de périphériques l'utilisent pour comprendre le modèle actuel du noyau.
Périphériques · Leçon 4
sysfs
Découvrez comment sysfs expose sous `/sys` le modèle actif des périphériques, pilotes, bus et classes du noyau Linux.
Parcourir le modèle des périphériques
Les principales vues de premier niveau comprennent :
/sys/devices/: hiérarchie des périphériques physiques et logiques ;/sys/class/: périphériques regroupés par classe fonctionnelle, comme bloc ou réseau ;/sys/bus/: bus, périphériques et pilotes associés ;/sys/block/: vue pratique des périphériques bloc ;/sys/dev/: liens indexés par type caractère ou bloc et par numéros majeur et mineur.
De nombreuses entrées extérieures à /sys/devices sont des liens vers la hiérarchie canonique. Résolvez un lien avec readlink -f lorsque vous avez besoin du véritable chemin parent :
$ readlink -f /sys/class/block/sda
Ce nom d'exemple peut être absent sur les systèmes qui utilisent d'autres interfaces de stockage.
Quelle sous-arborescence de sysfs contient la hiérarchie principale des périphériques du noyau ?
Lire les attributs
Les fichiers d'attributs exposent des valeurs ou contrôles individuels. Pour un périphérique bloc :
$ cat /sys/class/block/sda/dev
8:0
$ cat /sys/class/block/sda/ro
0
$ cat /sys/class/block/sda/size
1953525168
dev indique les numéros majeur et mineur. ro indique l'état de lecture seule. Pour les périphériques bloc Linux, size s'exprime conventionnellement en secteurs de 512 octets, quelle que soit la taille des secteurs physiques. Consultez toujours la documentation ABI du noyau pour les unités et le sens d'un attribut précis.
Que contient normalement l'attribut sysfs dev d'un périphérique bloc ?
Relier `/sys` et `/dev`
/dev contient les nœuds que les applications ouvrent pour les E/S. /sys expose les relations, propriétés, états et certains contrôles des objets. Un nœud bloc comme /dev/sda peut correspondre à /sys/dev/block/8:0, lequel se résout vers l'objet sysfs concerné.
Ces deux interfaces se complètent. Aucune ne constitue à elle seule un inventaire exhaustif de tous les faits matériels, et un périphérique peut disparaître pendant son inspection.
Quelle affirmation distingue correctement /sys de /dev ?
Écrire des attributs sans risque
Certains attributs sysfs sont inscriptibles et peuvent modifier l'état d'alimentation, l'association des pilotes, le comportement des files, l'autorisation des périphériques, les LED ou d'autres contrôles actifs. Une écriture textuelle réussie peut agir immédiatement sur le matériel ou les services ; elle n'équivaut pas à la modification d'une configuration persistante.
Lisez l'ABI documentée et la valeur actuelle, déterminez comment rendre le réglage persistant, et ne testez que sur un système autorisé. Ne modifiez jamais récursivement les permissions et n'écrivez pas de valeurs devinées dans /sys.
Pourquoi une écriture dans un attribut sysfs peut-elle être importante pour l'exploitation ?
Utilisez Explorer les périphériques matériels sous Linux pour parcourir sysfs en lecture seule et le relier aux nœuds de périphériques.
Leçon terminée
Vous avez terminé sysfs
Vous savez maintenant utiliser sysfs comme une vue structurée des objets actifs du noyau.
Parcourir les vues par périphérique, classe, bus, bloc et numéro.
Lire un attribut documenté à la fois avec ses unités correctes.
Relier les objets sysfs aux nœuds de
/dev.Considérer les attributs inscriptibles comme des interfaces de contrôle actives.
Conservez votre progression
Créez un compte gratuit pour enregistrer cette leçon et continuer sur n'importe quel appareil.
Créer un compte gratuit