1

Est-ce que quelqu'un saurait comment savoir si un (plusieurs) périphérique(s) fonctionne bien ou ne fonctionne pas sous Linux de manière relativement générique ?
(C'est pour scripter)

2

Vaste question. Il y a plein de types d'erreurs possible :

- erreur bas niveau, qui fait que ton périphérique ne sera même pas détecté, ou sera détecté mais en étant complètement inconnu (on sait qu'il y a un truc branché, mais on ne peut récupérer aucune info dessus)

- puissance disponible insuffisante pour alimenter le périphérique

- pas de driver correspondant trouvé

- erreur de communication avant ou après le chargement du driver

- erreurs détectées par le driver qui empêchent le chargement

- erreurs détectées par le driver qui n'empêchent pas le chargement, mais qui rendent le périphérique indisponible pour les applications

- etc.

Tu as une idée plus précise de ce que tu veux détecter ?
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

3

J'ai des périphériques qui marchent, et je veux détecter quand ils tombent en panne. Donc une surveillance.

4

C'est pas une réponse tongue

Mais j'interprète ça comme "tout type d'erreur". Ça fait pas mal de cas à détecter... Quelques pistes en vrac :

- si ton périphérique est connecté à un bus énumérable, vérifier s'il est présent dans la liste d'énumération (par exemple, pour l'USB : lsusb et / ou /proc/bus/usb ; y'a l'équivalent pour le bus PCI, etc.). Ça te garantit au moins qu'il est effectivement connecté et qu'il n'y a pas de problème électrique majeur (pas à 100 % cependant, tu ne verras pas forcément un problème intermittent de cette façon).

- si le driver de ton périphérique crée dynamiquement des entrées dans le système de fichiers (par exemple /dev/xxx), vérifier si ces entrées sont présentes. Si c'est le cas, c'est que le driver a été chargé correctement, et probablement qu'il a réussi à communiquer avec le matériel (à vérifier, peut-être qu'il y a des cas particuliers).

- vérifier les logs périodiquement pour voir s'il y a des messages d'erreur relatifs au périphérique à surveiller, en filtrant avec le nom du driver et / ou du couple vendor ID - product ID (pour les bus qui ont cette notion, ce qui inclut au moins USB et PCI). Exemple : http://unix.stackexchange.com/questions/74367/watch-usb-connections-vendor-id-product-id-revision

- après, les autres tests risquent d'être spécifiques au périphérique en particulier.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5

(par exemple smartctl pour les disques durs)
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

6

Va falloir que je teste.
Quelqu'un connaitrait une interface "human friendly" à smartctl d'ailleurs ?

7

GSmartControl fait ça, mais je ne sais pas si c'est aussi complet que la version CLI.
avatar