Précédent   Forum des professionnels en informatique > Systèmes > Linux > Matériel
Matériel Vos questions relatives à la configuration optimale et au support matériel
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/06/2007, 12h38   #1
Invité de passage
 
Inscription : juin 2007
Messages : 2
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 2
Points : 0
Points : 0
Par défaut Obtenir des hardwares ID du systeme (Linux)

Bonjour, je cherche le moyen de récupérer les hardware ID, soit de la CM, proc, HD, vraie adr MAC etc... en C++ de préférence.

J'ai réalisé des plugs pour Shake sous Linux et j'ai l'intention de les vendre sur le net, mais pour l'heure aucune protection...

Si vous avez une solution clé en main je peux vous la racheter, sinon quelques infos pratiques seraient les bienvenues !

Merci d'avance pour vos réponses.
Georges.
abidbol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2007, 17h56   #2
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 546
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 546
Points : 7 776
Points : 7 776
le plus rapide et le plus simple est d'aller fouiller /sys

par exemple les fichiers id et les fichiers vendor

tu peux aussi analyser le resultat de lspci lsscsi etc...

en C manipuler les textes ainsi generes ne devrait pas etre trop lourd ni trop complique...tu devrais trouver ton bonheur dans la lirairie string.h peut etre ?

tu peux repartir du source de lspci pour l'ameliorer ou creer ton soft sur ce modele et l'etendre a d'autres ports :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
TEST_FRP31:/sys/class/sound/controlC0/device/00:01.02 # lspci -v
00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
        Flags: bus master, medium devsel, latency 32
        Memory at ec000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [a0] AGP version 1.0
 
00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03) (prog-if 00 [Normal decode])
        Flags: bus master, 66MHz, medium devsel, latency 64
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
        Memory behind bridge: f4000000-f7ffffff
        Prefetchable memory behind bridge: 20000000-200fffff
 
00:02.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 02)
        Flags: bus master, medium devsel, latency 0
 
00:02.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01) (prog-if 80 [Master])
        Flags: bus master, medium devsel, latency 32
        I/O ports at fff0 [size=16]
 
00:02.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01) (prog-if 00 [UHCI])
        Flags: bus master, medium devsel, latency 48, IRQ 15
        I/O ports at ff00 [size=32]
 
00:02.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 02)
        Flags: medium devsel, IRQ 9
 
00:03.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 100] (rev 05)
        Subsystem: IBM: Unknown device 00d7
        Flags: bus master, medium devsel, latency 64, IRQ 15
        Memory at f3dff000 (32-bit, prefetchable) [size=4K]
        I/O ports at 7c60 [size=32]
        Memory at f3f00000 (32-bit, non-prefetchable) [size=1M]
        Capabilities: [dc] Power Management version 1
 
00:14.0 SCSI storage controller: Adaptec AHA-2940U/UW/D / AIC-7881U (rev 01)
        Subsystem: Adaptec AHA-2940UW SCSI Host Adapter
        Flags: bus master, medium devsel, latency 64, IRQ 11
        I/O ports at 7800 [disabled] [size=256]
        Memory at f3eff000 (32-bit, non-prefetchable) [size=4K]
        [virtual] Expansion ROM at 20100000 [disabled] [size=64K]
        Capabilities: [dc] Power Management version 1
 
01:01.0 VGA compatible controller: S3 Inc. Trio 64 3D (rev 01) (prog-if 00 [VGA])
        Subsystem: IBM Integrated Trio3D
        Flags: bus master, medium devsel, latency 32, IRQ 9
        Memory at f4000000 (32-bit, non-prefetchable) [size=64M]
        Expansion ROM at 20000000 [disabled] [size=64K]
        Capabilities: [44] Power Management version 1
 
TEST_FRP31:/sys/class/sound/controlC0/device/00:01.02
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2007, 14h33   #3
Invité de passage
 
Inscription : juin 2007
Messages : 2
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 2
Points : 0
Points : 0
Par défaut Merci de la réponse !

J'avais déjà suivi cette piste, mais il me semble que si 2 machines sont strictement identiques niveau hardware (meme chipsets + mm CPU + mm Mobo) je pense que l'ID généré en combinant toutes ces infos sera identique bien que les UUID seraient différents...

Le truc c que le plug va être exécuté dans des render-farms donc vraissemblablement les machines seront identiques, et la méthode risque de ne pas être très efficace.

Je vais essayer les lspci, mais j'aurais préféré récupérer l'adresse mac "vraie", j'ai matté le code source de ifconfig, pas très commenté mais je devrais y arriver.

le seul truc c'est que apparemment on peut la changer, car elle serait juste une image de la vraie adr MAC, façon base de registre... donc crackable en 3 secondes...
mais comment obtenir la "vraie" je n'ai rien trouvé sur Google en c++... et je ne sais pas trop rajouter de l'asm dans du c++ avec g++.

En tout cas merci de ta réponse, si tu as d'autres infos je suis preneur, sinon je vais essayer l'asm... ça me parait le plus "simple" et le plus concis.

@+
abidbol est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h44.


 
 
 
 
Partenaires

Hébergement Web