Академический Документы
Профессиональный Документы
Культура Документы
Les partitions FAT16 et HPFS sont limitées à 2^32 octets (= 4 294 967 296 = 4
Goctets) soit le double de ce qu'on observe (pour la FAT16) sous DOS et Windows 95.
Cela est du au fait que NT accepte des clusters de taille maximale égale à 65536 octets.
De plus, en ce qui concerne Windows NT 4 uniquement, pour lequel les clusters
peuvent atteindre la taille de 262144 octets, cette limite est repoussée à 16 Goctets !
Les partitions NTFS sont limitées en théorie à 2^64 octets (= 18 446 744 073 709 551
616) soit 16 Exaoctets.
En réalité, en raison des limitations dues au BIOS (adressage des secteurs), cette taille
maximale est ramenée à 2 To et actuellement à 128 Go (Car seulement 28 bits sur 32
sont utilisés pour l'instant dans l'adressage d'un secteur en mode LBA)
Lors d'une première installation, on doit utiliser séparément ce driver, en le copiant sur
une disquette, qui sera introduite au cours de l'installation de Windows NT (lorsque le
programme d'installation demande tout au début si on a des périphériques particuliers) .
Ce driver se présente sous la forme d'un fichier auto extractible :
Il est possible d'utiliser des partitions FAT32 sous Windows NT4 à l'aide d'un
driver spécial, non Microsoft, disponible sur les sites suivants :
L'accès aux partitions FAT32 étant réalisé à l'aide d'un driver (FAT32.SYS), lequel est
chargé au cours du démarrage de NT, il n'est donc pas possible d'avoir une partition de
démarrage de NT4 en FAT32.
Windows 2000 sait par contre accéder pleinement aux partitions FAT32
(Ceci ne concerne que NT4, Windows 2000 sachant gérer nativement ce type de disques)
L’installation et le fonctionnement de NT sur des disques de taille > 8Go peut poser des
problèmes.
En effet, l’accès aux secteurs situés au delà de 8 Go ne peut être réalisé qu’en utilisant les
extensions de l’interruption logicielle 13h (appelé aussi mode LBA). Or par défaut (en
absence de tout Service Pack) NT4 ignore ce mode. Si bien que l’installation de NT4 sur
un disque physique de plus de 8Go risque de mal se passer (par exemple si on a déjà
partitionné le disque, en ayant créé des partitions étendue et/ou logique dépassant les 8
premiers Go).
1. <Nom ARC><Chemin>=<Libellé><Commutateurs>
2. <Racine DOS>[<Fichier_secteur_de_boot>]=<Libellé>[<Commutateurs>]
1ère structure
Elle concerne Windows NT
N° de contrôleur
matériel SCSI
dans l'ordre
Toujours égal à 0 dans le cas de contrôleurs MULTI
d'initialisation
x ( NB: Certains disques SCSI peuvent être gérés avec la syntaxe
(BIOS), tel qu'il MULTI - cf. ci-dessus)
est identifié par le
driver
NTBOOTDD.SYS
ID du disque SCSI
y Toujours égal à 0 dans le cas de syntaxe MULTI
(syntaxe SCSI)
N° de disque pour
la syntaxe
MULTI
LUN (Logical Compris entre 0 et 3 pour les disques IDE
z Toujours égal à 0 pour les disques SCSI
Unit Number)
pour la syntaxe
SCSI)
NB : la numérotation commence à 1
Les partitions primaires sont décomptées en premier, suivies des
N° de la partition
w partitions logiques.
Les partitions inutilisées (type 0) ou étendues (type 05 ou 0F) ne sont
pas décomptées.
Exemples :
- Disque SCSI d' ID=3, avec 4 partitions, NT étant sur la 2ème, dans le répertoire \wnt4:
scsi(0)disk(3)rdisk(0)partition(2)\WNT4="......"
- Disque IDE "master" sur le 2ème connecteur IDE, 3 partitions, NT étant sur la 1ère,
dans le répertoire \winnt :
multi(0)disk(0)rdisk(2)partition(1)\WINNT="...."
Chemin
Le nom du répertoire, dans la partition considérée, dans lequel se trouve NT
proprement dit.
Libellé
Chaîne alphanumérique quelconque qui apparaîtra à l'écran dans le menu de
choix d'OS
Commutateurs
Facultatifs. Ils permettent de préciser le type d'exécution de NT.
Commutateur Signification
Ordinairement, la mémoire virtuelle est partagée en 2 portions de 2 Go entre user et system (2Go pour
User, 2Go pour System). Ce paramètre, disponible à partir du SP3 de NT4.0, permet de modifier ce
/3GB partage en 3Go pour User et 1Go pour System.
A utiliser seulement dans le cas de très grosses applications (Bases de données), prévues pour
ce fonctionnement 3Go et avec NT Entreprise Server.
Utilisation du driver standard d'affichage VGA.
/BASEVIDEO
A utiliser dans le cas de changement de carte graphique
Spécifie la vitesse de transmission pour le debugging
/BAUDRATE=nnnn Par défaut, 9600 avec un modem et 19200 avec un null-modem
Force le commutateur /DEBUG, même s'il n'a pas été précisé
Indique que "n" Mo de RAM sont inutilisables.
/BURNMEMORY=n P.ex. /BURNMEMORY=128 indique à NT que 128 Mo de la mémoire physique de la machine sont
inutilisables.
Charge le debugger, qui reste toutefois inactif
/CRASHDEBUG
tant qu'il n'y a pas d'erreur du noyau
Charge le debugger, qui peut être activé à tout moment
/DEBUG par une autre machine de debugging connectée à l'ordinateur.
A utiliser en cas de problèmes répétitifs
Spécifie le n° de port à utiliser pour le debugging.
/DEBUGPORT=comx
Force le commutateur /DEBUG, même s'il n'a pas été précisé
Permet de spécifier une DLL relative au HAL -(Hardware Abstract Layer)
/HAL=<hal> Sert à remplacer le fichier <winnt>\system32\hal.dll par un autre.
P.ex.: /HAL=HALCHK.DLL
Permet de spécifier un KERNEL.
/KERNEL=<kernel> Sert à remplacer le fichier <winnt>\system32\NTOSKRNL.EXE par un autre.
P.ex. : /KERNEL=NTOSKCHK.EXE
Spécifie le maximum de mémoire RAM que NT peut utiliser.
/MAXMEM=n
A utiliser quand on suspecte une barrette RAM d'être défectueuse
/NODEBUG Aucune information de debugging utilisée
Désactive la détection de souris sur le(s) port(s) série spécifié(s),
/NOSERIALMICE=[COMx | COMx,y,z,...]
ou sur tous les ports série si on ne précise aucun port.
Fixe le nombre de processeurs à utiliser.
/NUMPROC=n P.ex., /NUMPROC=2 sur un système quadriprocesseur fera en sorte que NT n'utilisera que 2
processeurs sur les 4.
/ONECPU Fonctionnement en monoprocesseur sur une machine multiprocesseurs
Empêche NT d'assigner dynamiquement les interruptions (IRQ) pour les ressources
/PCILOCK
PCI et laisse cette tâche au BIOS.
Affiche les noms de drivers au cours de chargement.
/SOS
A utiliser quand on pense qu'un driver est manquant ou défecteux
Commutateurs disponibles
sous Windows 2000/XP
/BOOTLOG Création d'un fichier journal
Paramètre standard pour la détection des périphériques principaux.
/FASTDETECT
Si la souris n'est pas détectée (p.ex.), supprimer ce paramètre.
/NOGUIBOOT Désactivation de l'interface graphique au démarrage
Démarrage en mode sans échec
MINIMAL démarrage minimal
mode ligne de
MINIMAL(ALTERNATESHELL)
commande
/SAFEBOOT:<type> <type> peut prendre les valeurs NETWORK avec réseau
suivantes réparation de
l'Active Directory
DSREPAIR
(Contrôleurs de
domaine uniquement)
2ème structure
Elle concerne DOS, Windows 95/98
Racine DOS
DOS et Windows 9x ne sachant pas démarrer depuis une unité autre que le
premier disque dur ou la disquette, les seules valeurs possibles sont C:\ ou A:\
Fichier_secteur_de_boot
S'il n'y a pas d'ambiguïté, ce nom est facultatif. C'est le nom d'un fichier de 512
octets, qui est une image du secteur de boot de DOS ou de Windows 9x. Ce nom
est généralement BOOTSECT.DOS, mais ce n'est pas obligatoire. Tout autre nom
peut convenir. Si DOS (ou Windows 9x) est choisi par l'utilisateur, NTLDR lit ce
fichier et le substitue (en mémoire, temporairement) au secteur de boot de NT, ce
qui a pour conséquence de lancer le 1er fichier de l'OS correspondant (IO.SYS en
principe)
Libellé
Chaîne alphanumérique quelconque qui apparaîtra à l'écran dans le menu de
choix d'OS
Commutateur
S'il n'y a pas d'ambiguïté, ce commutateur est facultatif. On l'indiquera si l'on
désire un triple boot, à savoir NT, Windows 9x et DOS. Dans ce cas, la racine du
disque C: contient 2 fichiers images de secteur de boot :
- BOOTSECT.DOS relatif à DOS (6.22 p.ex.)
- BOOTSECT.W95 relatif à Windows 9x
Les noms cités ici sont arbitraires. Suivant l'OS choisi (DOS ou Windows 9x),
NTLDR chargera le fichier image de secteur de boot correspondant. Le
commutateur est à indiquer seulement si l'on souhaite que NT émule le processus
de multiboot de Windows 9x (actionnées en appuyant sur F8 lors du démarrage de
9x). Dans ce cas, les valeurs qu'il peut prendre sont :
- /win95dos associé à la ligne de commande de DOS
- /win95 associé à la ligne de commande de Windows 9x
Exemple :
1. 2 partitions
- la 1ère dédiée à DOS et Windows 98
- la 2ème dédiée à NT 4
2. 4 partitions
- les 3 1ères dédiées à des applications et données
- la 4ème dédiée à Windows 2000
Tout d'abord, il faut préciser qu'il est impossible de créer une disquette bootable qui
serait capable de contenir et charger tout le système d'exploitation de Windows NT, en
raison de la taille même des fichiers exécutables et librairies, ainsi que celle de la base de
registres.
Par contre, il est possible de commencer le démarrage depuis une disquette,
essentiellement dans le cas où l'un des fichiers de départ de NT est défectueux ou
manquant, à savoir :
bootnt.exe
4. Elle contient les fichiers suivants (Windows 2003, utilisables avec NT4 ,
Windows 2000 et Windows XP) :
Cette disquette est une disquette bootable de type NT, ce qui veut dire qu'elle lance
NTLDR et donc est capable de lancer NT.
Mais comme elle est formatée en FAT12, elle est modifiable facilement sous DOS ou
Windows toute version :
Les fichiers NTLDR et NTDETECT.COM présents sur cette disquette sont ceux
de Windows 2003 afin d'avoir la compatibilité ascendante la plus large possible
avec tous les systèmes de la famille NT existant actuellement.
Si de nouvelles versions de NT apparaissent, il suffit de remplacer ces deux
fichiers par ceux de la nouvelle version, afin d'éviter des problèmes de
démarrage.
Le fichier boot.ini a été conçu de façon a permettre un choix assez vaste (4
partitions possibles sur 2 disques IDE).
Mais on peut éditer ce fichier si nécessaire.
Il peut être intéressant de transformer une application (que l'on a développée soi-même
p.ex.) en service, de façon qu'elle soit démarrée conjointement au démarrage de NT,
sans devoir attendre l'ouverture d'une session (ce qui ne se produit pas toujours, dans le
cas d'un serveur)
Il suffit de récupérer dans le kit de ressources techniques NT les 2 outils prévus pour
cela et qui s'appellent :
C'est le cas justement des deux exécutables cités ici (instsrv.exe et srvany.exe),
que l'on trouve dans le fichier auto extractible rktools.exe (12049 ko).
Dans la réalité, ces outils ne "transforment" pas réellement une application en service.
Ce qui est fait est UNIQUEMENT le lancement du service srvany, auquel est indiqué en
paramètre le nom de l'application que l'on veut voir lancée comme service.
Étant donné qu'il peut y avoir plusieurs applications dans ce cas, plusieurs instances de
srvany seront alors exécutées.
Pour les distinguer, on leur attribue des noms différents arbitraires à l'aide de l'outil
instsrv.
1. Dans une fenêtre de commande, en se plaçant dans le répertoire qui contient les
2 outils, exécuter instsrv.exe avec en paramètres le nom du service (arbitraire)
suivi de srvany.exe :
- Sélectionner le service qui vient d'être créé, (avec, à ce moment là, un état
indéfini, et un démarrage "automatique").
- Dans le champ "Paramètres de démarrage", taper le nom de l'exécutable, en
veillant à doubler les backslashes
- Appuyer sur le bouton "Démarrer".
L'état du service va passer en "Démarré" et l'application va alors démarrer (ici
"Scanbin").
Par contre, les paramètres de démarrage n'étant pas sauvegardés,
l'application ne sera pas lancée au prochain redémarrage de NT.
Pour que ces paramètres soient mémorisés, il faut intervenir dans la Base de
Registres à l'aide de Regedit ou Regedt32 (après avoir exécuté instsrv.exe) . La
clef concernée s'appelle
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\xxxxx
dans laquelle xxxxx est le nom du service que l'on a choisi.
Le service JCB1 est lancé à chaque démarrage de NT, ce service lançant à son tour
Scanbin.exe, lequel va analyser Notepad.exe.
Pour cela, dans les propriétés du type de démarrage, il faut cocher la case "Autoriser le
service à interagir avec le bureau", ou encore, dans la BDR, mettre à 1 le bit 8 de l'entrée
de type DWORD et de nom "Type" (cela revient à effectuer un "OR" avec le nombre
hexadécimal 0x100) .
par exemple : Type = 0x00000010 est à remplacer par 0x00000110
Ce produit était autrefois gratuit. Désormais, seule une version "Lite" l'est encore,
mais elle ne permet de lancer qu'un seul service. La version commerciale (non limitée en
nombre de services) coûte 25 $ à ce jour.
Son installation est très simple, et sa mise en oeuvre s'effectue en lançant, dans une
console, l'exécutable FireDaemon.exe
(Les captures d'écran ici présentées ont été réalisée avec une précédente version :
0.09C)
Version Valeur
Sous-clefs de
NT Entrée Type
NT 4 HKEY_LOCAL_MACHINE\SYSTEM\ WS S
3.51
CurrentControlSet\Control\ProductOptions ProductType REG_SZ Winnt Servernt
Cette 2ème clef a été ajoutée par Microsoft, afin d'interdire à l'utilisateur de modifier la
licence du produit.
En effet, on ne peut pas modifier plus d'une seule clef à la fois, (même si on est TRÈS
rapide!), or 2 "threads" contrôlent en PERMANENCE la conformité des 2 clefs.
Pour information, Mark Russinovitch a réalisé un outil ("NTTune") qui arrive à "court-
circuiter" les 2 threads en question.
: il ne l'a pas fait dans un but illicite, mais seulement pour démontrer que NT WS et
NT Server sont la même chose au niveau code, contrairement à ce que prétendait
Microsoft à l'époque !
Il est totalement inutile de rechercher "NTTune", outil devenu mythique et dont l'usage
serait illégal!
Schéma d'architecture générale de NT
Dans le cas d'un PC isolé fonctionnant sous Windows NT, on peut trouver fastidieux de
devoir taper à chaque démarrage la séquence CTRL-ALT-SUPP, puis de saisir son nom
d'utilisateur et son mot de passe.
Il y a moyen de contourner cette phase en modifiant la clef:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Winlogon
et en ajoutant ou modifiant les entrées suivantes :
Nom Valeur
AutoAdminLogon 1
DefaultUserName votre nom d'utilisateur
DefaultPassword votre mot de passe
avec cette méthode manuelle, le mot de passe apparaît en clair dans la Base de
Registres! Il n'y a donc plus aucune sécurité à ce niveau!
A partir de Windows 2000, on lui préférera une autre méthode exposée plus bas.
Cette
opération peut
également être
effectuée dans
l'interface
graphique de
l'outil "Tweak
UI" des
Powertoys :
onglet
"Réseau"
cocher la
case
"Ouvertur
e de
session
automatiq
ue au
démarrag
e"
remplir les
champs
Nom
d'utilisate
ur et Mot
de passe
Une autre méthode consiste à utiliser la commande suivante :
(captures d'écran
effectuées sous
Windows XP)
Décocher la case :
"Les utilisateurs
doivent entrer un
nom d'utilisateur
et un mot de passe
pour utiliser cet
ordinateur"
Une boite de
dialogue
contenant un
formulaire s'ouvre
alors.
Remplir les 3
champs et appuyer
sur OK
Avec cette méthode, l'entrée "DefaultPassword" n'apparait pas dans la base de
registres, car le mot de passe est CRYPTÉ à l'aide de la fonction "LsaStorePrivateData"
(de l'API "wincrypt") et stocké dans une zone protégée de la Base de Registres
("LsaSecrets").
Ce mot de passe est alors récupéré (lors de la procédure d'ouverture de session) par la
fonction "LsaRetrievePrivateData".
Si le compte concerné n'a pas les droits suffisants pour modifier la Base De
Registres, il devient impossible alors, une fois qu'il a ouvert une session, de restaurer la
configuration initiale (puisque la boite de dialogue de connexion ne s'affiche plus, donc il
n'est plus possible d'ouvrir une session en tant qu'administrateur).
Plusieurs branches de la BDR ne sont que des alias d'arborescences, et n'ont pas
d'existence physique réelle.
C'est le cas de :
o HKEY_CLASSES_ROOT : alias de
HKEY_LOCAL_MACHINE\SOFTWARE\Classes
o HKEY_CURRENT_USER : alias de HKEY_USERS\xxxxxxxxx
(xxxxxxxxx étant l'identifiant de l'utilisateur en cours)
o HKEY_CURRENT_CONFIG : alias de
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
(et aussi de
HKEY_CURRENT_CONFIG\Software\Microsoft\windows\CurrentVersi
on\Internet Settings)
Les fichiers .log contiennent les changements apportés à une ruche (lorsqu'une
rubrique de la BDR est modifiée). S'il y a eu un plantage et que les modifications
n'ont pas eu le temps d'êtres inscrites dans la ruche correspondante, un indicateur
dans le fichier .log le signale, et le système effectue au redémarrage une fusion
entre la ruche (non modifiée) et le fichier .log
Les fichiers .sav sont des copies des ruches effectuées à la fin de la phase en
mode texte de l'installation de Windows.
Ils ne servent qu'à restaurer l'installation au cas où il y aurait un problème lors
du passage en mode graphique.
Ces fichiers sav ne doivent donc pas être utilisés pour restaurer les ruches en
fonctionnement normal!
Il est toutefois possible d'accéder à ces fichiers et d'en lire (et modifier) le contenu
sous les conditions suivantes :
1. Avoir effectué une autre installation de Windows NT (ou 2000,...) sur la même
machine, et travailler avec cette version.
2. Utiliser l'outil REGEDT32 (REGEDIT sous XP/.NET), et ouvrir l'un de fichiers
ruches de la version inactive de NT (initiale)
Elle nécessite néanmoins d'opérer sous un compte utilisateur ayant les droits
administrateur.
Désormais, le groupe
"Administrateurs" aura droit "de vie et
de mort" sur la clef en question.
Il est donc parfaitement possible
d'accéder même en écriture à
N'IMPORTE QUELLE clef de la
BDR.
Mais ce genre d'opération est la porte
ouverte à des "Blue Screen Of Death"
de toute beauté!
Ce qui suit ne concerne que Windows NT4, cette fonctionnalité ayant été intégrée
dans Windows 2000 ainsi que dans Windows XP/2000
Il peut arriver que le code du clavier avant ouverture de session ne corresponde pas au
type de clavier utilisé.
(par exemple "QWERTY" alors qu'on dispose d'un clavier "AZERTY")
Cela est alors très gênant lorsque l'on veut ouvrir une session, à la fois pour saisir le
nom d'utilisateur et surtout le mot de passe dans la boite de dialogue de connexion.
Ce code clavier avant ouverture de session est défini dans la Base de Registres :
On peut évidemment modifier ces fichiers, mais c'est moins "propre" que de modifier
l'entrée dans la registry !
Par ailleurs, on peut ajouter un message d'accueil, en modifiant la clef :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Winlogon
Introduire les valeurs chaines suivantes :
Quand on insère un CDROM dans un lecteur, le logiciel contenu dans ce CD peut être
exécuté automatiquement ou non. Pour déterminer le comportement de Windows vis à
vis de cette insertion, il faut agir dans la Base de registres directement, ou à l'aide de
"Tweak UI" des Powertoys, dont une version en français est disponible à l'adresse
Tweak UI v1.33 (jusqu'à Windows 2000) et Tweak UI v2.10.0.0 (à partir de Windows
XP)
0x00000000 désactivée
0x00000001 activée
Soit PONCTUELLEMENT (pour un ou plusieurs disques donnés, qui peuvent
être autres que des lecteurs de CD)
Modification de la clef :
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Po
licies\Explorer
On peut de plus choisir la (dés)activation :
o soit par lettre de disque
L'entrée "NoDriveAutoRun" (type REG_DWORD) indique quels sont les
lettres de disques à désactiver.
Le 1er bit (de poids faible) correspond au disque A:, le 2ème à B:, et ainsi
de suite.
(vu que cette valeur a 32 bits, et qu'il y a 26 lettres au maximum, ça tient !)
il faut fermer puis redémarrer l'explorateur pour que les modifications soient
prises en compte.
En ce qui concerne les CD, je recommande d'utiliser Tweak UI (ici version en français) :
Ce terme désigne la fonctionnalité très pratique, bien connue dans les environnements
UNIX, qui consiste, dans une fenêtre de commandes, à taper au clavier, à tout moment au
cours de la frappe, le début du nom d'un fichier ou répertoire, puis d'appuyer sur une
touche de contrôle (généralement la touche <TAB>).
Le système complète alors automatiquement la frappe par un nom de fichier ou de
répertoire existant dans le répertoire courant.
S'il existe plusieurs fichiers ou répertoires dont le nom commence par la même séquence
de caractères, on peut afficher le suivant (dans l'ordre alphabétique) en appuyant à
nouveau sur la touche de contrôle, et ainsi de suite.
Exemples :
1. Exécution directe d'une application dont on ne se souvient que des 2 premières
lettres "ip"
2.
3. Atteinte d'un répertoire de nom assez complexe, à partir de la racine d'une
partition :
On veut aller dans "H:\Program Files\Microsoft eMbedded Tools\Common"
Pour une raison inconnue, cette fonctionnalité très utile n'est pas active par défaut sous
Windows NT et Windows 2000 (elle l'est par contre sous Windows XP)
Son activation (ou désactivation) est réalisée de façon permanente par la modification
d'une entrée de la Base de Registres :
HKEY_CURRENT_USER\Software\Microsoft\Command Processor
ou :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
"CompletionChar"=dword:00000009
Lorsqu'une station de travail ouvre une session sur un serveur de domaine NT/W2k,
généralement se déroule un script de connexion (situé dans le répertoire partagé
NETLOGON du serveur), qui sert à définir certains partages de ressources (disques et
imprimantes : commandes "NET USE ..."), exécution de programmes,..., et qui se déroule
sur la machine cliente.
Il est possible de remédier à cette déficience à l'aide de l'utilitaire PUTINENV qui sait
initialiser une variable d'environnement depuis un script de connexion.
Ce logiciel (du domaine public) est du à MJ Winkler, et date de 1993 (du temps de LAN
Manager, précurseur des serveurs Windows NT)!
Ainsi, la commande putinenv.exe L exécutée sur la machine cliente au cours du script de
connexion va initialiser les variables d'environnement suivantes :
Nom de la
Contenu
variable
%ROOT% Répertoire de login
De plus, afin de rendre ces variables permanentes sur la machine cliente (en dehors du
script de connexion), on peut utiliser l'utilitaire WINSET, fourni avec le CD de Windows
9x (p.ex. dans le répertoire \TOOLS\RESKIT\SCRPTING du CD de Windows 98).
Exemple de script :
@echo off
...
if "%OS%"=="Windows_NT" goto suite
REM Dans la ligne suivante remplacer "serveur" par le nom NetBIOS du serveur
if not exist %windir%\putinenv.exe copy \\serveur\NetLogon\putinenv.exe %windir%\*.*
%windir%\putinenv.exe L
REM Ce qui suit est facultatif
REM Cela permet de rendre permanentes les variables en dehors du script
%LogonServer%\NetLogon\Winset USERNAME=%USERNAME%
%LogonServer%\NetLogon\Winset COMPUTERNAME=%COMPUTERNAME%
%LogonServer%\NetLogon\Winset LOGONSERVER=%LOGONSERVER%
REM
:suite
...
Téléchargements :
Il peut être souhaitable, par exemple dans un script de connexion (pour compléter l'article
précédent), de tester l'appartenance d'un utilisateur à un groupe donné.
J'ai écrit "ismember.vbs", un script VBS qui opère ce test, affichant (ou non, avec le
commutateur /s) le résultat, et positionne la variable d'environnement
%ERRORLEVEL% , laquelle peut être récupérée dans un fichier de commandes (.bat
ou .cmd)
Syntaxe :
Code de retour :
Valeur Signification
0 le compte appartient au groupe indiqué
1 le compte n'appartient pas au groupe indiqué
2 le compte n'existe pas
3 le groupe n'existe pas
@echo off
REM Exemple d'utilisation du script "ismember.vbs"
REM On lui passe en paramètres :
REM le nom d'utilisateur
REM le groupe
if %1.==. goto fin
if %2.==. goto fin
ismember /c%1 /g%2 /s
goto Label_%ERRORLEVEL%
:Label_0
echo %1 appartient a %2
goto fin
:Label_1
echo %1 n'appartient pas a %2
goto fin
:Label_2
echo %1 n'existe pas
goto fin
:Label_3
echo %2 n'existe pas
:fin
Utilisation de ce batch :
Les captures d'écran qui suivent ont été réalisées sous Windows XP, mais
l'intégralité de l'article s'applique également à Windows NT4 et Windows 2000
NTFS (New Technology File System) est un système de fichiers apparu avec Windows
NT, doté de très nombreux avantages par rapport au système FAT (voir étude
comparative)
L'une des fonctionnalités les plus utiles dans un usage courant est la mise en place de
contrôle d'accès aux dossiers et fichiers, protégeant ainsi leurs ouverture et/ou
modification, en les limitant à un utilisateur ou groupe d'utilisateurs donné.
Toute tentative d'accès par un utilisateur non autorisé se soldera alors par un refus.
La seule condition pour bénéficier de cette fonction est que la partition sur laquelle
réside(nt) le(s) fichier(s) ou dossier(s) soit de type NTFS.
Si ce n'est pas encore le cas (type FAT16 ou FAT32), il suffit de la convertir en NTFS à
l'aide de la commande CONVERT
Il suffit de sélectionner dans l'explorateur un (ou plusieurs) dossier ou fichier, clic droit,
menu contextuel "propriétés", puis afficher l'onglet "Sécurité".
Sous Windows XP, cet onglet peut ne pas s'afficher. Consulter le chapitre consacré
à cette fonctionnalité.
Exemple :
Le problème
Après réinstallation de Windows (NT, 2000, XP,...), certains dossiers ou fichiers voient
leur accès refusé même si l'utilisateur fait partie du groupe des administrateurs. Cela se
manifeste aussi en cas de transfert d'un disque dur d'une machine vers une autre.
Explication
En effet, à chaque fichier ou dossier sont affectés des "permissions" (accès en lecture,
écriture, exécution,...). Ces permissions sont définies pour des comptes donnés
("administrateur" a un contrôle total, "xxx" a des droits de lecture,..).
Mais dans ces associations "compte/permissions", ce ne sont pas les noms habituels
(affichés) qui sont stockés, ("Administrateur", "Bellamy", "Homer", ...), mais les SID
(Security IDentifiers), à savoir un n° UNIQUE au monde pour chaque compte, créé lors
de la création du compte, lequel SID est dérivé du SID du système (créé lui-même lors de
l'installation de Windows)
HKEY_LOCAL_MACHINE\SECURITY\Policy\Acc
ounts
HKEY_USERS
Le lien entre le nom de connexion (nom externe) et le SID est défini de la façon suivante
:
Dans la branche
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names on trouve
autant de sous-clefs qu'il y a de comptes, le nom de chaque sous-clef étant le nom de
connexion.
Par exemple
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\BELLAM
Y
Cette clef ne contient qu'une valeur par défaut de longueur nulle, mais caractérisée par un
type très particulier (autre que les types habituels REG_SZ, REG_DWORD, ...),
représenté par sa valeur hexadécimale.
Dans cet exemple, elle est égale à 0x3EF (soit 1007 en décimal, nombre que l'on retrouve
à la fin du SID)
MAIS tout administrateur (indépendamment de son SID, du moment qu'il est recensé
comme appartenant au groupe des administrateurs, et qu'il a un mot de passe valide) a la
possibilité de changer le propriétaire d'un fichier ou dossier!
Sous Windows XP, il est possible que l'onglet Sécurité n'apparaisse pas.
Consulter alors les articles consacrés à ce problème :
En résumé
3. Depuis VISTA, il est apparu dans les LCA (Listes de contrôle d'accès) un
"pseudo-compte" qui s'appelle "CRÉATEUR PROPRIÉTAIRE".
Il ne correspond à aucun compte "physique", et sert uniquement à éventuellement
limiter les droits du propriétaire en général.
On notera au passage que cela contredit le principe cité plus haut qui prévoit que
le propriétaire d'un objet (fichier, dossier, clef de la BDR) peut redéfinir à sa guise
les permissions sur l'objet concerné.
Si bien que les propriétaires qui n'ont pas le contrôle total et qui ne sont pas
administrateurs ne peuvent pas modifier la LCA !
Par contre, lorsqu'un administrateur effectue un changement de propriétaire (en
s'attribuant ce rôle p.ex.), ces restrictions sur "CREATEUR PROPRIETAIRE"
sont désactivées et ne s'appliquent pas à lui (Microsoft a prévu cela afin d'éviter
qu'un administrateur se retrouve bloqué) .
Les informations relatives aux services sont stockées dans la Base de Registres, à savoir
l'arborescence :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupO
rder
Il est très facile de convertir une partition FAT (ou FAT32 sur Windows 2000, XP et
2003) en NTFS à l'aide de la commande CONVERT.
Cette conversion est motivée par la supériorité de NTFS sur FAT en matière de sécurité,
fonctionnalité et fiabilité (voir l'article comparatif FAT vs NTFS)
La seule condition requise est l'existence d'un espace libre minimal au départ sur la
partition FAT à convertir.
Voici la méthode pour déterminer cet espace libre (tirée de l'article 314875) :
Données :
o s : taille de la partition en octets
o d : nombre total de dossiers
o f : nombre total de fichiers
o slib : espace libre sur la partition en octets
o smin : espace minimum requis en octets
Calculs :
o s1 = int (s / 100)
o si s1<1048576 -> s1 = 1048576
si s1>4194304 -> s1 = 4194304
o s2 = s1 + s / 803
o smin = s2 + (d + f)*1280 + 196096
o on doit avoir slib > smin
Exemple :
avec :
volume Obligatoire
Peut-être, au choix :
Remarques importantes
Par rapport à une partition NTFS créée dès l'origine dans ce format, une partition
FAT convertie en NTFS peut avoir des performances inférieures. Cela est du
essentiellement au risque de fragmentation de la copie de la MFT, qui se situe
approximativement au milieu de la partition.
Donc si la partition est déjà remplie à 50% ou plus, cette MFT sera fragmentée,
car n'ayant pas suffisamment d'espace contigu pour tenir en un seul bloc. Mais
cela peut se corriger facilement à l'aide d'un défragmenteur de MFT (Par exemple
OO-Defrag)
Cette opération est IMPOSSIBLE sous Windows, que ce soit avec la commande
format ou à l'aide du gestionnaire de disques (WINDISK sous NT4 ou
DISKMGMT.MSC sous 2000/XP/2003), pour la simple raison que Windows ne peut
évidemment pas s'autodétruire :
Utilisation de FORMAT :
C:\WINDOWS\system32>format c:
Le type du système de fichiers est NTFS.
Entrez le nom de volume en cours pour le lecteur C: XPPRO
Format ne peut pas s'exécuter car le volume est utilisé par un autre
processus. Format pourra s'exécuter après que ce volume ait été démonté.
TOUS LES DESCRIPTEURS OUVERTS SUR CE VOLUME NE SERONT
PLUS VALIDES.
Voulez-vous forcer le démontage de ce volume ? (O/N) o
Verrouillage du lecteur impossible. Le volume est encore utilisé.
Utilisation de DISKMGMT.MSC :
On constate que l'item
Formater... est grisé, si
bien qu'il est impossible
de formater cette
partition
Si on tient malgré tout à reformater cette partition, voici le mode opératoire, qui dépend
de ce que l'on veut faire réellement :
Réinstallation de Windows
Sélectionner la partition
concernée et appuyer sur
ENTRÉE
Appuyer sur C
Sélectionner le type de
formatage (en principe
celui qui est proposé par
défaut) et appuyer sur
ENTRÉE
2 cas se présentent :
2.
3.
4. La partition à reformater est de type NTFS
Ce type de partition étant inaccessible sous DOS, la commande format ne
peut pas être utilisée, ne serait-ce que parce que la partition concernée n'a
pas de lettre attribuée.
Il faut donc commencer par la supprimer.
2 nouveaux cas se présentent :
Exécuter FDISK
5.
on obtient ceci :
C'est un exécutable qui fonctionne sous DOS, dont l'unique rôle, comme son nom
l'indique, est de supprimer n'importe quelle partition, PRIMAIRE ou LOGIQUE, de
n'importe quel type (FAT, NTFS, EXT2FS, ...)
Il est à manipuler avec précaution, toute opération de suppression étant irréversible.
Après avoir appuyé sur OK, on voit la liste des partitions (de tous les disques, donc il faut
faire attention à ne pas se tromper) :
NB: le type "Unknow" qui apparaît en regard de la 1ère partition (sur le 1er disque) est
du ici au fait qu'elle est de type FAT32, qui était un type alors inconnu à la date de
conception de DELPART en 1993 (le type FAT32 est apparu avec Windows 95 OSR2,
en 1996).
Sélectionner la partition NTFS logique (ici 4ème dans la liste) et appuyer sur ENTRÉE.
Confirmer la suppression en appuyant sur Yes
La partition est supprimée, ainsi que la partition étendue qui la contient.
Redémarrer l'ordinateur.
6.
On pourra ensuite recréer une partition à l'aide de FDISK, puis la
formater à l'aide de FORMAT.
A propos des branches HKLM\SYSTEM\ControlSetxxx et
HKLM\SYSTEM\CurrentControlSet
Ces branches sont soit un alias, soit des copies multiples de la configuration du système
(donc de la branche HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet).
Ce jeu actif est appelé CurrentControlSet, et c'est un alias (et non pas une copie) d'un
ControlSetxxx
Je dis bien "alias", et non pas "copie" !
Par exemple, CurrentControlSet et ControlSet002 vont désigner (actuellement) la
même branche.
Branche Alias de
HKEY_CURRENT_USER HKEY_USERS\<id user en cours>
HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE\SOFTWARE\Classes
Exemple :
La BDR contient les 4 branches suivantes :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003
Ainsi, si un "crash" survient par exemple à la suite d'une installation défectueuse d'un
périphérique et/ou de modifications erronées de la BDR, lors du prochain redémarrage,
on pourra choisir cette dernière bonne configuration connue, à savoir ControlSet003,
lequel n'aura pas été modifié par les opérations précédentes à la différence de
ControlSet002.
Il peut arriver que l'aspect général de la fenêtre change subitement, caractérisé par la
disparition des barres de menu et onglets.
Cela est occasionné par l'action d'un double-clic (volontaire ou non) au niveau de la
barre d'onglets.
Avant
Après
Définition de plages horaires d'ouverture de session sur un ordinateur
autonome
Dans le cas d'une architecture en domaine (NT4 ou Active Directory), il est possible de
définir des plages horaires en dehors desquelles un utilisateur ne peut pas ouvrir de
session.
Cela se définit depuis le contrôleur de domaine, à l'aide de l'outil de gestion des comptes
utilisateurs :
Windows NT4
serveur
(usrmgr.exe)
Windows
2000/2003
(dsa.msc)
Par contre, rien n'est prévu a priori sur les ordinateurs autonomes (isolés ou en groupe
de travail).
Pour une raison inconnue, le commutateur /times n'est pas documenté dans l'aide en
ligne de la commande "net user"!
C:\>net user /?
La syntaxe de cette commande est :
NET USER
[nom d'utilisateur [mot de passe | *] [options]] [/DOMAIN]
nom d'utilisateur {mot de passe | *} /ADD [options] [/DOMAIN]
nom d'utilisateur [/DELETE] [/DOMAIN]
Il n'est cité que dans les articles MSDN 318714 et 816666 consacrés aux domaines
Windows 2000 et Windows 2003.
Or on peut très bien utiliser la commande
net user <nom-de-compte> /times:<plages-horaires>
sur un ordinateur n'appartenant pas à un domaine,
par exemple sous Windows 2000 PRO ou Windows XP HOME.
En ce qui concerne la définition des plages horaires, la syntaxe de cette commande est
particulièrement complexe et sujette à erreurs.
jour[-jour][,jour[-jour]],heure[-heure][,heure[-heure]]
ALL : indique que l'accès est toujours autorisé (valeur par défaut)
valeur nulle (en blanc) : indique que l'accès n'est jamais autorisé.
Les caractères séparateurs sont :
o la virgule pour les parties jour et heure entre elles
o le point virgule pour séparer plusieurs horaires.
Les jours peuvent être abrégés suivant la liste suivante :
o L
o Ma
o Me
o J
o V
o S
o D
o minuscules / majuscules indifférentes
Seules les heures pleines sont à spécifier (Ne jamais indiquer de minutes !) :
o soit sur 12 heures (avec les préfixes am, pm, a.m. et p.m.)
o soit sur 24 heures
REMARQUES
Le commutateur /time est également accepté (au lieu de /times)
Chaque fois qu'on utilise cette option, on écrase tous les horaires précédents (il n'est pas possible d'en
On doit donc être sûr que tous les horaires sont bien spécifiés.
C'est pourquoi il est vivement recommandé de vérifier la saisie en tapant la commande
"net user" suivie uniquement du nom d'utilisateur et examiner alors les "Heures d'accès autorisé".
Exemple :
On veut définir une plage d'horaires pour le compte "HOMER"
- de 10:00 à 16:00 le dimanche,
- de 9:00 à 18:00 pour le reste de la semaine
C:\>net user HOMER /times:d,10-16;l-s,9-18
La commande s'est terminée correctement.
Vérification :
C:\>net user HOMER
Nom d'utilisateur HOMER
...
Heures d'accès autorisé Dimanche 10:00 AM - 4:00 PM
Lundi 9:00 AM - 6:00 PM
Mardi 9:00 AM - 6:00 PM
Mercredi 9:00 AM - 6:00 PM
Jeudi 9:00 AM - 6:00 PM
Vendredi 9:00 AM - 6:00 PM
Samedi 9:00 AM - 6:00 PM
Si on définit une plage qui en englobe (partiellement ou totalement) une autre,
c'est la plage la plus "large" qui prévaut
Exemple :
net user HOMER /times:d-s,9-19;j-v,10-18
a le même résultat que
net user HOMER /times:d-s,9-19
de même :
net user HOMER /times:j-d,3-22;l-v,13-15
a le même résultat que
net user HOMER /times:j-d,3-22;l-me,13-15
(car la plage "j-d,3-22" prévaut sur la plage "l-v,13-15" en ce qui concerne les jeudi et vendredi)
Donc on fera en sorte de définir des plages disjointes si on veut éviter des surprises!
Cela va bien interdire une nouvelle connexion de l'utilisateur en dehors des plages prévues,
Mais si après avoir ouvert une session durant une plage autorisée l'utilisateur "oublie" de se déconnecte
restera connecté !
Donc si on veut une solution stricte, qui déconnecte également lorsque l'heure limite est atteinte, il fa
tiers, tel que "PCTimeWatch" conçu par Patrick Philippot (MVP).
Ces deux termes désignent deux façons d'organiser plusieurs ordinateurs dans un réseau
local Microsoft, et la façon de gérer les comptes des utilisateurs de ces machines, à savoir
:
(j'ai éliminé le cas de machines totalement isolées, étant donné qu'il serait absurde
d'intégrer une machine dans un réseau alors qu'on ne veut pas qu'elle communique avec
d'autres!)
Avertissement
Domaine Internet
Toute machine connectée à Internet est identifiée par une adresse unique, dite
"adresse IP", sous la forme d'un nombre binaire codé sur 32 bits (ou plus, cf. IP
V6).
La manipulation de tels nombres n'étant pas pratique, on va donner à chaque
machine un nom symbolique, appelé "nom de domaine", beaucoup plus parlant
et facile à retenir par un interlocuteur humain, et c'est un "service d'annuaire" qui
effectuera la traduction nom symbolique-adresse.
Ce service, géré automatiquement par des serveurs dialoguant entre eux est appelé
"DNS" (Domain Name Service).
Pour plus d'information, se reporter au chapitre de ce site traitant de l'adressage
et les noms de domaine Internet
Domaine Microsoft
Il n'a aucun rapport avec le précédent, même si, depuis l'arrivée de Windows
2000 et d'Active Directory, les noms de domaine Internet et domaine Microsoft
peuvent se ressembler, voire être identiques (au point d'être source de conflits et
problèmes parfois difficiles à surmonter par les administrateurs!)
Dans ce qui suit, on ne parlera que de domaine Microsoft
Groupe de travail
Chaque machine est autonome, et gère elle-même la liste des utilisateurs autorisés à s'y
connecter (nom et mot de passe), avec leurs droits respectifs.
Si par hasard le compte n'existe pas sur B, ou si le mot de passe est différent, la
connexion sera refusée (à moins de préciser qu'on veut, au préalable, changer
d'identification)
Ce système est simple, ne demande aucune architecture particulière, un serveur n'est pas
nécessaire.
Par contre si le nombre d'utilisateurs est important, cela devient vite ingérable!
(il faut modifier la liste de comptes sur chaque machine pour que tout le monde puisse
communiquer)
Un Groupe de travail est défini par un nom, totalement arbitraire, et il est fixé au
niveau de chaque machine.
P.ex. sous XP depuis le panneau de configuration système, onglet "Nom de l'ordinateur",
Modifier
Dans un même réseau, il peut y avoir plusieurs groupes distincts (à la limite autant qu'il y
a de machines!).
Mais le fait d'appartenir au même groupe de travail facilite l'exploration du réseau et
réduit les temps de recherche de machine.
Toute machine, quel que soit son système, peut être membre d'un groupe de travail
(Windows 3.11, Windows 95/98/ME, NT4 Workstation et Serveur, Windows 2000
Professionnel et Serveur, XP Familial et Professionnel, Windows 2003, Vista, ...)
Domaine (Microsoft)
La gestion des comptes (et des machines) est centralisée sur un serveur de domaine
(NT4 Serveur, Windows 2000 serveur, Windows 2003, Netware, Linux+Samba). (il peut
exister aussi des serveurs auxiliaires, de sauvegarde, ...)
Dans ce cas, lorsque l'utilisateur "Duschmurz" veut ouvrir une session sur sa machine A,
l'identification "Duschmurz"/"plops" est transmise (automatiquement, par diffusion) sur
le réseau, pour aboutir à un serveur responsable du domaine (le nom de ce domaine est
indiqué dans la boite dialogue de connexion).
Tout domaine est identifié par un nom, arbitraire, qui a été défini une fois pour toutes sur
le serveur principal.
P.ex. "COMMERCIAL", "RECHERCHE", ..., voire "personnel.glutzenbaum.com" dans le
cas de serveurs Netware ou W2k/W2K3 avec Active Directory (donc ayant la
même structure qu'un nom de domaine Internet, ce qui est parfois source de conflits et/ou
d'erreurs humaines comme je l'indiquais plus haut).
Quand une connexion à un domaine est demandée par le compte Duschmurz (mot de
passe plops) depuis un poste de travail A, le serveur de domaine recevant cette requête va
vérifier que :
Ainsi, dans le cas d'un nouvel utilisateur, il suffit de créer son compte uniquement sur le
serveur.
A partir de cet instant, il pourra se connecter sur n'importe quelle machine du domaine, et
accéder à n'importe quelle ressource, sous réserve de droits suffisants alloués par
l'administrateur.
De plus, si l'administrateur a prévu la gestion de "profils itinérants" (stockés sur le
serveur), l'utilisateur retrouvera, quelle que soit la machine sur laquelle il se connecte,
l'environnement de travail qui lui est propre (fond d'écran, icônes, raccourcis, petites
manies, ...)
Un domaine réalisé avec un serveur NT4 ne possède qu'un seul niveau ("glutzenbaum"),
par contre avec Netware ou W2k(3)+Active Directory on peut avoir une arborescence
quasi infinie ("siege.glutzenbaum", "commercial.glutzenbaum",
"personnel.glutzenbaum", "filiale-A.etudes.glutzenbaum",...) ce qui permet d'affiner les
droits (les
utilisateurs appartenant à une filiale n'auront pas accès aux machines et ressources du
siège, ...)
Sous Windows 2000 et Windows 2003, cette liste de comptes et machines est
stockée dans un annuaire LDAP, composant principal de "Active Directory" (cela
n'existe pas sous NT4)
Il est évident que la mise en place d'un domaine peut s'avérer très complexe (dans de très
grandes entreprises cela peut nécessiter plusieurs mois, car il faut faire attention, en
particulier, dans la définition de l'arborescence!) et nécessite obligatoirement la présence
d'administrateur(s).
Toute machine, sauf celles sous XP Familial, peut être membre d'un Domaine
(Windows 3.11, Windows 95/98/ME, NT4 Workstation et Serveur, Windows 2000
Professionnel et Serveur, XP Professionnel, Windows 2003, Vista, ...)
Domaines et Groupes de travail peuvent cohabiter dans un même réseau physique
(même si ce n'est pas très rationnel!).
Un utilisateur ayant ouvert une session sur un ordinateur d'un Groupe de travail pourra
se connecter sur une ressource d'un ordinateur d'un domaine pour autant que son compte
local (nom/mot de passe) se retrouve à l'identique dans la liste des comptes du
domaine, et inversement.
Système Valeur
Type Signification
d'exploitation (hexadécimale)
Windows XP 0x05 5 connexions
Familial au maximum
Windows NT4 0x0A 10
Workstation connexions
Stations Windows 2000 au maximum
de Professionnel
travail Windows XP
Professionnel
Windows XP
Media Center
Edition
Toutes versions de 0xFFFFFFFF nombre
Windows NT4 illimité de
Serveur connexions
Toutes versions de
Serveurs
Windows 2000
Serveur
Toutes versions de
Windows 2003
C'est une copie de ce qui est codé "en dur" dans les
fichiers du système!
Si on la modifie (cette clef n'est pas protégée), cela n'aura
aucun effet sur le nombre maximal de connexions.
j'ai essayé !
Comme cela a été dit au début de l'article, cette limitation à 5 (XP Familial) ou 10 (les
autres systèmes stations de travail) concerne uniquement les connexions entrantes.
Par contre, une station de travail (Windows NT4 Workstation, Windows 2000
Professionnel, Windows XP Familial ou Professionnel) peut "monter" (= connexions
sortantes) autant qu'elle veut de ressources distantes vers des partages disques et
imprimantes.
De plus, les connexions sont comptabilisées globalement par machine et non pas par
connexion réelle.
Ce qui signifie, par exemple, que si une machine distante se connecte sur 2 partages
disques et 1 imprimante d'une même machine locale, cela ne compte que pour 1 seule
connexion et non pas 3.
Par ailleurs, une connexion est établie pour 15 minutes (valeur par défaut).
Si la machine distante ne l'utilise plus passé ce délai, il y a déconnexion automatique, ce
qui décrémente alors le nombre de connexions actives sur la machine locale (et donc
incrémente le nombre de connexions supplémentaires possibles sur cette machine).
HKLM\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\autodiscon
nect
(entrée de type REG_DWORD)
On peut aussi modifier ce paramètre à l'aide de la commande :
délai étant une valeur exprimée en minutes au bout de laquelle toute connexion non
utilisée est déconnectée.
Les valeurs possibles pour autodisconnect vont de -1 à 65355,
les captures d'écran de ce chapitre ont été réalisées essentiellement sous Windows
VISTA, mais les principes sont identiques sous toutes les versions de Windows de la
famille NT.
Ces deux notions relatives au contrôle d'accès à des ressources (fichiers et/ou dossiers)
sont souvent l'objet de confusion de la part des utilisateurs non spécialistes.
Or ce sont deux fonctionnalités totalement INDÉPENDANTES, qu'il faut bien
comprendre pour éviter des problèmes quand on veut accéder à des fichiers ou dossiers
dans un réseau local.
Partage
concerne tous les types de partitions (FAT et NTFS).
sert à définir des droits d'accès distants (depuis une autre machine)
s'applique uniquement à un dossier (ou une partition complète) et non pas à des
fichiers.
est transmis à toute l'arborescence du dossier (ou partition) partagé!
Paramétrable
depuis l'onglet
"Partage" des
propriétés du
dossier ou de la
partition.
Pour le définir
ou le modifier en
détail, appuyer
sur le bouton
"Partage
avancé"
Sous XP et
précédent,
appuyer sur
"Nouveau
partage"
Les
commentaires
(facultatifs)
apparaitront sur
les machines
distantes
Pour ajouter
d'autres comptes
ou groupes,
appuyer sur le
bouton Ajouter
A moins de
connaitre
parfaitement le
nom du compte
à ajouter,
appuyer sur le
bouton Avancé
Appuyer sur le
bouton
Rechercher
puis
sélectionner le
ou les comptes
ou groupes de
comptes
concernés.
(dans cet
exemple, le
groupe des
utilisateurs )
Appuyer sur le
bouton OK
Appuyer sur le
bouton OK
Le nouveau
compte (ou
groupe) apparait
alors dans la
liste.
Les refus
l'emportent
toujours sur les
autorisations !
P.ex. même avec
un Contrôle total
autorisé, la
lecture du fichier
sera interdite si
la case
correspondante
de la colonne
refuser est
cochée.
Permission
ne concerne que les partitions NTFS.
définit des droits d'accès locaux ou distants (depuis la même machine ou une
autre)
s'applique aussi bien à des dossiers (ou une partition complète) qu'à des fichiers.
Paramétrable
depuis l'onglet
"Sécurité" des
propriétés du
dossier, de la
partition ou du
fichier.
Appuyer sur le
bouton modifier
Pour ajouter
d'autres comptes
ou groupes,
appuyer sur le
bouton Ajouter
Appuyer sur le
bouton
Rechercher
puis
sélectionner le
ou les comptes
ou groupes de
comptes
concernés.
(dans cet
exemple, le
groupe des
administrateurs)
Appuyer sur le
bouton OK
Appuyer sur le
bouton OK
Le nouveau
compte (ou
groupe) apparait
alors dans la
liste.
Les refus
l'emportent
toujours sur les
autorisations !
P.ex. même avec
un Contrôle total
autorisé, la
lecture du fichier
sera interdite si
la case
correspondante
de la colonne
refuser est
cochée.
Les permissions sont définies par des comptes ayant le contrôle total sur ces
fichiers/dossiers (en général des administrateurs, mais ce n'est pas obligatoire).
Le propriétaire d'un fichier/dossier est un compte qui peut définir la liste de contrôle
d'accès (= qui fait quoi?).
Tout administrateur peut redéfinir le propriétaire d'un fichier/dossier.
Donc tout administrateur, qui dans un 1er temps n'a pas accès à un fichier, peut se
définir lui même comme propriétaire de ce fichier, et à partir de cet instant il peut
modifier les permissions, et en particulier s'attribuer le contrôle total sur le fichier.
Cette opération, qui peut sembler bizarre, est très fréquente lors d'une nouvelle
installation de Windows, quand on veut accéder à des données utilisées lors de la
précédente installation de Windows .
Une permission peut s'appliquer uniquement à un fichier ou dossier bien précis, et, dans
le cas d'un dossier, elle peut être étendue ou non à tout ou partie de l'arborescence du
dossier.
Un utilisateur distant désirant accéder à un fichier situé sur une partition NTFS doit
donc avoir simultanément :
les droits d'accès (partage) pour le dossier partagé qui contient le fichier
les droits d'accès (NTFS) sur le fichier
Ainsi, les permissions d'accès de l'utilisateur pour le fichier peuvent être plus importantes
que celles du dossier.
Entre partage et permissions, c'est le plus restrictif qui est retenu ...
Cela ne concerne bien sûr que les accès externes (puisque, comme indiqué plus haut, la
notion de partage n'a aucun sens localement)
On peut donc très bien avoir les permissions qui conviennent pour accéder à un fichier,
mais si le dossier qui le contient n'est pas partagé, l'accès n'est pas possible.
Et inversement, si dans un partage ouvert à tout le monde un fichier est strictement
réservé à un compte donné, personne d'autre que lui ne pourra y avoir accès.