la base de registre:Prof,c'est quoi?

Retrouvez ici les bases, le minimum à connaître pour aller plus loin...
Répondre
jeff64
    unknown unknown

la base de registre:Prof,c'est quoi?

Message par jeff64 »

Mathieu DUPUIS a écrit : Introduction:
Apparu pour la première fois dans Windows 3.1, sous le nom de base de registre, cet ensemble est apparu pour faciliter l’administration et centraliser les paramètres du système d’exploitation.
Depuis, le registre a connu quelques modifications comme le changement de forme de stockage sur le disque dur, ou le changement de nom : la base de registre est devenue le registre Windows.De ce fait la formation à l’exploration du Registre Windows pour la version Windows 7, reste applicable sur les versions antérieures du system d’exploitation.

Rôle:Le registre Windows est, comme son nom l’indique, un support conservant la quasi-intégralité des paramètres du système d’exploitation Microsoft Windows. Il centralise et facilite l’administration des machines d’un parc informatique.

Les risques de la perte ou l’altération du Registre:
Etant le seul support de configuration Windows, si le registre est trop endommagé et ne peux être récupéré. Cela entraine une réparation par la réinstallation du registre avec le DVD Windows voire la réinstallation complète du système d’exploitation.

La protection du registre est alors cruciale.

Configuration requise et utilisée:
Nous verrons ensemble que l’architecture de la base de registre est en réalité très simple à assimiler.
Pour naviguer dans le registre nous nous servirons de l’éditeur intégré dans Windows : regedit.
Comment fonctionne le Registre ?

Son architecture:

Les poignées de clés
Dans le registre Windows, les données sont organisées dans ce que l’on appelle des HKEY.
HKEY signifiant « handle key » soit « poignée de clés ». Ces poignées de clés sont comparables aux dossiers racines du registre.
Il existe six poignées de clés nommées HLEY_{nom} soit : HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_USERS et HKEY_CURRENT_CONFIG et HKEY_PERFORMANCE_DATA.

HKEY_USERS
Cette poignée de clés est autonome, elle contient les paramètres de chaque utilisateur. Les utilisateurs se présentent sous la forme S-X-X-XX. Les paramètres couvre les taches planifiées, le thème, le panneau de configuration, les variables d’environnement et d’autres paramètres comme le réseau, les imprimantes et paramètres d’applications.

HKEY_CURRENT USERS
Cette poignée de clés est un mappage vers la clé de l’utilisateur qui a ouvert la session dans HKEY_USER.

HKEY_LOCAL_MACHINE
Cette poignée de clés est autonome, elle contient les paramètres liés à la machine. L’intégrité des données de cette clé est donc extrêmement importante ! Nous pouvons trouver ici les paramètres matériels sur lequel se base le système d’exploitation, les paramètres d’application et du système d’exploitation.

HKEY_CLASSES_ROOT
Cette poignée de clés est un mappage vers les clés HKEY_LOCAL_MACHINE\SOFTWARE\Classes et HKEY_CURRENT_USER\Software\Classes. On pourra y trouver des paramètres d’application et surtout les propriétés d’ouverture de fichier suivant leurs extensions.

HKEY_CURRENT_CONFIG
Cette poignée de clés est un mappage vers la clé HKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardware Profiles.

HKEY_PERFORMANCE_DATA
Cette poignée de clés est invisible. Elle contient les informations des performances du noyau NT et de ses services. Ces données, bien qu’invisible dans l’éditeur de registre sont visible dans le moniteur de performances.

Les clés (et sous-clés) de registre
Les clés de registres sont comparables à des fichiers. Elles sont stockées dans les HKEY et comportent toujours une valeur par défaut.
Des clés peuvent stocker d’autres clés. Nous pourrons appeler ces dernières des sous-clés.

Enfin les clés peuvent êtres mappées en poignée de clés pour apparaitre dans la racine du registre.
Ainsi « Hardware Profiles », est une sous clé de « HKEY_LOCAL_MACHINE\System\CurrentControlSet » et la poignée de clé mappée « HKEY_CURRENT_CONFIG ».

Les valeurs
Il existe une dizaine de types de valeurs, se nomment REG_{nom} et chacune d’entre elles à un encodage ou une taille spécifique.
REG_SZ
Cette valeur est une valeur string, donc chaine de caractères. C’est la valeur la plus utilisée dans les clés. De plus, chaque clé a une valeur string « par défaut »
REG_EXPAND_SZ
Cette valeur est une valeur expand string, donc chaine de caractères étendue. Elle permet de stocker des variables. Nous pouvons donc utiliser, par exemple, la variable %APPDATA% afin d’accéder au répertoire AppData suivant l’utilisateur.
REG_MULTI_SZ
Cette valeur est une valeur multi strings, donc chaine de caractères multiple. Elle permet de stocker plusieurs chaines de caractère.
REG_BINARY
Cette valeur est une valeur binary, donc binaire. Elle permet de stocker n’importe quelle donnée en binaire.
REG_DWORD
Cette valeur est une valeur dual word, donc deux mots. Un mot occupant 2 octets, cette valeur supporte donc jusqu’à 4 octets soit 32 Bits.
REG_QWORD
Cette valeur est une valeur quad word. Avec la même logique que nous avons utilisé pour la valeur DWORD, nous en déduisant que la valeur supporte jusqu’à 64 Bits. Attention, l’utilisation de cette valeur nécessite un système d’exploitation 64 Bits.
Divers:
Il existe d’autres valeurs, que nous ne pourrons pas traiter avec l’éditeur de registre, comme REG_NONE (valeur nulle), REG_LINK (lien vers une autre clé), REG_RESOURCE_LIST (utilisé pour lister le matériel), REG_FULL_RESOURCE_DESCRIPTOR (utilisé pour décrire le matériel).
Nous venons de découvrir l’architecture du registre Windows.Mais comment ceci est stocké sur le disque dur ?

Où est-il stocké ?
Structure des ruches
Les clés et poignées de clés sont stockées dans des ruches. Ces ruches sont composées de bloc de 4096 octets. Le premier octet étant appelé Bloc de Base, il comporte des informations d’identification, de datation, de version, de somme de contrôle de sécurité et enfin un fichier interne à la ruche.
Les blocs suivant stockent les cellules, qui elles même stockent les données du registre.

Il existe cinq types de cellules :
Image
Type de cellule-->Contenu
Clé -->Clé, nom de la clé, date de la dernière modification, index des sous-clés et signature.
Valeur -->Valeur, type de valeur, sous-clés et signature.
Liste sous-clé -->Liste des sous-clés de la clé parente et liste des cellules indexées.
Liste valeur -->Liste valeur de la clé parente et liste des cellules indexées.
Description sécurité -->Signature et compteur de clé utilisant cette description.

Les clés, sous-clés, valeurs et autres sont donc enregistrés dans ces cellules et qui sont stockés dans les ruches.

Liaison aux ruches
Les ruches sont, elles, stockées dans des fichiers. Pour trouver quelles ruches sont stockées dans les fichiers, une clé a comme valeur leur position : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Hivelist
Remarque : les noms de clés sont très explicites et en règle générale les noms comportant le mot « Current » sont des clés mappées.

La liste des fichiers nous est alors présentée.
Image

Le \Device\HarddiskVolume2 est le deuxième volume. Sur Windows 7, le premier est un volume de 100Mo, non monté, utilisé pour garantir l’intégrité des fichiers. Le second volume est alors le Volume C: .
Image
Nous pouvons donc ici, voir les fichiers de ruches.

Visualiser et éditer le contenu du Registre

Naviguer dans le Registre
Windows possède un éditeur de registre nommé regedit.exe. Vous pouvez l’exécuter depuis l’outil d’exécution Windows en entrant regedit ou regedit.exe.

L’éditeur de registre se présente sous une forme assez proche de l’explorateur Windows. Les poignées de registres (HKEY) sont affichées comme des dossiers racines, les clés, des dossiers et les valeurs des fichiers.
Image

Editer le Registre
Attention, toute édition du registre peut entrainer des dégâts, réversible seulement après avoir fait les sauvegardes nécessaires, sauvegardes que vous pouvez consulter au quatrième chapitre.

En double-cliquant sur une valeur d’un clé, une fenêtre permet d’éditer celle-ci.
Image
Il est possible, par un simple clic droit dans une clé, de créer une clé dans cette dernière (donc une sous-clé), ou ajouter des valeurs.
Image

Sauvegarder et Restaurer le Registre

Avec système d’exploitation fonctionnel

Par restauration du système
A chaque modification significative des paramètres systèmes, donc valeurs dans le registre, Windows effectue un point de restauration. Ce point de restauration effectue une sauvegarde complète du registre.
En cas d’incident mineure, vous pouvez restaurer votre registre en lançant la « restauration du système » soit l’application restore.exe. Il vous suffit de choisir la date antérieure la plus proche de celle de l’accident pour restaurer votre registre sans difficultés.

Par import de clés de registre
Il est aussi possible d’importer simplement l’intégralité des clés et valeur de registre.
Mais cela nécessite que les clés de registre aient été exportées auparavant. Pour cela effectuez clic-droit sur l’entité Ordinateur puis en sélectionnant « Exporter » vous avec une copie des clés de registre.
Image

Le fichier créé pourra être intégré au registre actuel en effectuant un import. Pour cela dans l’éditeur de registre Fichier > Importer.
Image

Sans système d’exploitation fonctionnel

Par restauration du système
Cependant si le registre est corrompu au point de ne plus pouvoir permettre à Windows 7 de démarrer, vous pouvez toujours booter sur la partition d’intégrité que Windows 7 prend soit d’installer lors de l'installation.
Image

Si vous n’avez pas la possibilité de booter depuis cette partition vous pouvez toujours booter sur un DVD Windows 7 et sélectionner la réparation de votre système d’exploitation.
Dans les deux cas vous poursuivrez votre opération avec une fenêtre « options de récupération système ».
Il n’y a plus qu’à sélectionner « Restaurer le système » et le tour est joué.
Image

Si cependant la restauration n’est pas possible il reste une dernière possibilité.

Par import de clés de registre
Pour importer des clés de registre il faut toutefois que les clés aient été exportées au préalable (voir plus haut). Il suffit d’exécuter l’invite de commande et d’exécuter regedit.exe. Vous pourrez importer la base de registre en effectuant fichier > importer.
Image

Paramétrer Windows de A à Z

De l’apparence de Windows…
Nous avons vu précédemment que le registre contient l’intégralité des paramètres de Windows. Nous pouvons donc paramétrer pratiquement tout ce que nous voulons. Ainsi nous allons paramétrer, pour commencer, l’interface de graphique de Windows.

User ou Local Machine ?
Le registre possède deux poignées de clés (HKEY) autonome éditables, HKEY_USERS et HKEY_LOCAL_MACHINE. La personnalisation des thèmes Windows et spécifique à un utilisateur. On en déduit donc que la poignée de clé à dans laquelle nous devons aller sera HKEY_USERS.
Je souhaite avoir dans la partie droite de mon menu démarrer les outils d’administration Windows. Pour trouver l’emplacement de la clé il faut être méthodique : quel sera le programme impacté ? De quel éditeur ? De quel type ?
Le menu démarrer est dépendant de l’explorateur Windows. L’explorateur est un composant de base de Windows. Windows est un logiciel.

Mais où est la clé ?
Nous pouvons donc en déduire le chemin suivant :
Windows est un logiciel : HKEY_CURRENT_USER\Software
L’explorateur est un composant de base de Windows : HKEY_CURRENT_USER\Software\Windows
Le menu démarrer est dépendant de l’explorateur Windows : HKEY_CURRENT_USER\Software\Windows\CurrentVersion\Explorer
Au final la clé sera : HKEY_CURRENT_USER\Software\Windows\CurrentVersion\Explorer\Advanced
En cliquant sur la clé nous avons une liste de valeur DWORD (donc 32 Bits)
Une valeur se nomme StartMenuAdminTools. Il suffit de passer sa valeur de 0 (non en booléen) à 1 (oui en booléen) pour activer la fonctionnalité.
Afin d’appliquer les modifications sur cet utilisateur, il faut redémarrer la session.

… au cœur de Windows

Cette fois ci, je veux changer les serveurs de temps de mon ordinateur.

User ou Local Machine ?
Nous allons changer des paramètres propres à l’ordinateur. Changer de session ne changera en rien les paramètres. Il s’agira d’ici d’une clé situé dans HKEY_LOCAL_MACHINE.
Mais où est la clé ?
Nous pourrions trouver la clé en utilisant la méthode vu précedement mais cette fois-ci nous effectuerons une recherche.
Nous allons donc chercher, dans HKEY_LOCAL_MACHINE, la valeur actuelle du serveur de temps. Par défaut celui-ci est time.windows.com.
Le résultat de la recherche nous mène donc à la clé HKEY\LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers
La clé Servers a 5 valeurs nommées de 1 à 5, le système d’exploitation va utiliser le serveur qui a le nom de valeur le plus bas. On modifiera donc la valeur nommé 1 pour lui mettre notre serveur de temps : ntp.monserveur.local par exemple.
En plus
Il n’y a pas que Windows qui est paramétrable dans le registre. Il y a évidemment Windows Media Player, Internet Explorer et les autres applications Windows, mais on peut aussi y trouver d’autres applications tierces.

Lorsqu’un ordinateur rejoint un domaine, il est automatiquement contraint à la stratégie de groupes. Ces stratégies de groupe permettent de paramétrer toutes les fonctionnalités de Windows et ses applications. Les stratégies de groupe sont relative a deux valeurs, la machine et l’utilisateur… Et si les stratégies de groupe opéraient sur le registre ? C’est effectivement le cas. Lorsque les GPO se mettent a jour sur les PC clients, l’exécutable gpudate effectue en réalité un import dans le Registre Windows.

Conclusion
Nous venons de voir que le registre Windows a une architecture particulière, stocké dans des fichiers de ruches, et ne comportant que des clés, ce dernier et le gardien des paramètres de Windows. Il est donc très important de protéger ce dernier contre les éventuelles incident humain et altérations de données. De ce fait, bien que Windows sauvegarde votre configuration dès que celle-ci est attente avec une point de restauration, il n’est pas non-négligeable de sauvegarder ce dernier sur un support amovible.
Si nous comparons l’organisation des paramètres Windows et Linux, la différence majeure est à leur forme de stockage et d’accessibilité. Alors que linux stocke ses configurations dans des fichiers, permettant aux utilisateurs expérimenter de s’attaque plus facilement dans les configurations de leur system d’exploitation, le registre Windows est le meilleur pour configurer et administrer les machines d’un parc Windows et donc le meilleur ami de l’administrateur systèmes et réseaux.

source:labo-microsoft
L'article m'a paru clair.
Je me suis permis de le poster.
Bonne lecture à tous ceux que cela interesse.Et peut-être des infos pour les pluys calés
Merci à Mathieu l'auteur. ;)
PS:un conseil aus apprentis sorciers COUVREZ-VOUS :rofl: :rofl:
akhen
    unknown unknown

Re: la base de registre:Prof,c'est quoi?

Message par akhen »

:clap: bel article !
Avatar du membre
yahyah206
Membre VIP
Membre VIP
Messages : 3555
Enregistré le : mer. 11 mai 2011 18:03
Localisation : Suisse
    unknown unknown

Re: la base de registre:Prof,c'est quoi?

Message par yahyah206 »

:clap: merci jeff, au moin c'est clair et detaillé :P
Avatar du membre
Bobby2dallas
Membre VIP
Membre VIP
Messages : 2983
Enregistré le : lun. 23 mai 2011 16:13
Localisation : ~ Nimes
A été remercié : 5 fois
    unknown unknown

Re: la base de registre:Prof,c'est quoi?

Message par Bobby2dallas »

Merci Jeff, joli travail !
Image
0101010001100101011000010110110100100000010000010110000101111010
Image
Répondre