Et tu dis adieu à tout un tas de soft métier qui n'aiment pas le APPDATA redirigé...
C’est très rare mais ce n’est pas un problème si tu rediriges tous les documents utilisateurs de manière à minimiser le Roaming, et si une application veut écrire dans %HOMEPATH%/Application Data au lieu de %APPDATA%, tu es sûr que l’application écrira tout de même sur le réseau vu que %HOMEPATH% est redirigé.
Je veux bien un pointeur vers la doc en question...
Je n’ai jamais touché de Windows Server, mais avec un Samba c’est ainsi que je fais...
La configuration suivante est testée validée de Windows XP Pro SP1 à Windows 7 Pro. Le Roaming est réduit au minimum, le bureau est en réseau lui aussi, Application Data aussi, il n’y a que Local Settings\Application Data qui n’est pas en réseau, parce que c’est justement ce qui est local à la machine, et le profile (fond d’écran etc.) qui est récupéré à l’ouverture de session et renvoyé au serveur à la fin. À part ces points particuliers, rien n’est pris en otage par le poste utilisateur, c’est fini de devoir attendre la fermeture de session pour sauvegarder le bureau et les données d’application, c’est fini les pertes de données si l’ordinateur s’éteint sans fermer la session ! La configuration suivante permet la cohabitation Windows XP et Windows Vista, Seven en utilisant la même arborescence en ligne.
Tous les documents utilisateurs sont dans le disque H:, propre à chaque utilisateur.
Ah bien, sûr, il faut désactiver la synchro sur les postes utilisateurs, le mieux est de le faire à l’installation de la machine.
Quelques extraits de /etc/samba/smb.conf (incomplet, le reste à ta charge) :
[global]
workgroup = MONGROUPE
netbios name = MONSERVEUR
server string = "MADESCRIPTION"
unix extensions = no
domain logons = yes
logon drive = H:
logon home = \\%N\%U
logon script = logon.cmd
[homes]
comment = Dossier personnel de %U
path = /home/%U/
browseable = no
wide links = Yes
follow symlinks = Yes
writable = yes
read only = no
create mask = 2770
directory mask = 2770
public = no
hide files = /Desktop.ini/desktop.ini/*~/Thumbs.db/.*/$RECYCLE.BIN/
veto files = /.profile/.profile.v2/*.desktop/
[netlogon]
path = /etc/samba/netlogon
guest ok = no
writeable = yes
browseable = no
write list = ntadmin
# winxp
[profile]
path = /home/%U/.local/share/windows/.profile
browsable = no
writeable = yes
create mask = 0600
directory mask = 0700
profile acls = yes
csc policy = disable
hide files = /Desktop.ini/desktop.ini/*~/Thumbs.db/.*/
# win >= vista
[profile.v2]
path = /home/%U/.local/share/windows/.profile.v2
browseable = no
writeable = yes
create mask = 0600
directory mask = 0700
profile acls = yes
csc policy = disable
hide files = /Desktop.ini/desktop.ini/*~/Thumbs.db/.*/
Contenu de /etc/samba/netlogon/logon.cmd :
SET SERVER=MONSERVEUR
NET USE H: \\%SERVER%\homes
REGEDIT /S \\%SERVER%\netlogon\home.reg
NET TIME \\%SERVER% /SET /YES
Contenu de /etc/samba/netlogon/home.reg :
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"My Pictures"="H:\\Mes documents\\Mes images"
"Desktop"="H:\\Bureau"
"Personal"="H:\\"
"My Music"="H:\\Musique"
;"My Video"="H:\\Vide'os"
"My Video"=hex(2):48,00,3a,00,5c,00,56,00,69,00,64,00,e9,00,6f,00,73,00,00,00\
;"My Downloads"="H:\\Te'le'chargements"
"{374DE290-123F-4565-9164-39C4925E467B}"=hex(2):48,00,3a,00,5c,00,54,00,e9,00,\
6c,00,e9,00,63,00,68,00,61,00,72,00,67,00,65,00,6d,00,65,00,6e,00,74,00,73,\
00,00,00
"{1B3EA5DC-B587-4786-B4EF-BD1DC332AEAE}"="H:\\.AppData\\Roaming\\Microsoft\\Windows\\Libraries"
"AppData"="H:\\.AppData\\Roaming"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]
"My Pictures"="H:\\Mes documents\\Mes images"
"Desktop"="H:\\Bureau"
"Personal"="H:\\"
"My Music"="H:\\Musique"
;"My Video"="H:\\Vide'os"
"My Video"=hex(2):48,00,3a,00,5c,00,56,00,69,00,64,00,e9,00,6f,00,73,00,00,00\
;"My Downloads"="H:\\Te'le'chargements"
"{374DE290-123F-4565-9164-39C4925E467B}"=hex(2):48,00,3a,00,5c,00,54,00,e9,00,\
6c,00,e9,00,63,00,68,00,61,00,72,00,67,00,65,00,6d,00,65,00,6e,00,74,00,73,\
00,00,00
"{1B3EA5DC-B587-4786-B4EF-BD1DC332AEAE}"="H:\\.AppData\\Roaming\\Microsoft\\Windows\\Libraries"
"AppData"="H:\\.AppData\\Roaming"
[HKEY_CURRENT_USER\Volatile Environment]
"APPDATA"="H:\\.AppData\\Roaming"
Choses bonnes à savoir :
À part les exceptions précisées plus haut, tout fichier vu est un fichier en réseau. Par exemple ça veut dire que tu peux sauvegarder les données des gens même s’ils n’ont pas fermé leur session, tu as la dernière version de leurs fichiers. Ça veut dire aussi que par exemple tu peux créer des raccourcis sur le bureau des gens alors qu’ils sont déjà connectés, en les créant directement sur le serveur.
Même si c’est fortement déconseillé, tu peux toujours ouvrir deux sessions en même temps et c’est bien plus fiable qu’avec du Roaming, car la dernière session fermée ne va pas écraser les données utilisateur des autres sessions ouvertes en même temps mais fermées avant.
Tu ne peux pas ouvrir deux Firefox si tu ouvre deux sessions en même temps (vu que AppData est en réseau, le lock est partagé, mais en fait c’est tant mieux, c’est justement fait pour ça).
Si tu as des profiles windows déjà créé, les nouvelles règles de registre seront chargées mais pas utilisées la première fois, il faut ouvrir la session (charger les règles), fermer la session (enregistrer les règles dans la ruche), ouvrir la session, et c’est bon, cette manip n’est à faire qu’une seule fois, après installation de la procédure présentée ici.
Il y a probablement moyen de modifier les ruches à la mano directement sur le serveur, mais disons que je ne veux pas prendre le risque de foirer une sessions utilisateur, je laisse Windows écrire modifier lui-même ses ruches (d’où le fichier registre chargé à l’ouverture de session, c’est windows qui le fait, pas moi qui attaque sous linux des ruches windows avec des outils tiers.
Si ton profil n’a jamais été créé, il sera bon dès la création (la première fois que tu te connectes sur une machine Windows avec un compte tout neuf), Windows va utiliser tes règles de registre dès la création.
Tes utilisateurs ne doivent pas déplacer leur "Mes documents" (les variables sont prédéfinies et écrasées au login).
Si le disque home est commun sous XP/Seven (mêmes modèles, même profile Firefox etc.) la ruche est propre à ces générations de NT, donc pas le même fond d’écran entre XP et Seven, mais le même entre Vista et Seven, c’est un problème acceptable, de toute façon les utilisateurs trouvent normal qu’un nouveau Windows remplace leur thème.
Windows utilise désormais par défaut les noms de dossiers de Gnome, donc les dossiers sont communs entre Linux et Windows.
Quand on ouvre le terminal Windows, il s’ouvre par défaut sur H:\ sous XP, ce comportement est cassé à partir de Vista, spamafote.
Si le câble réseau saute et que Windows prend un timeout, le bureau se vide, il suffit de faire un clic droit sur le bureau et « actualiser » pour récupérer ses fichiers, pas besoin de réouvrir sa session, il suffit de rafraîchir le bureau comme on recharge une page web.
Le Roaming profile avec les ruches etc. n’est pas accessible en réseau même s’il est situé sur le même disque réseau que le home utilisateur, donc l’utilisateur ne peut pas le supprimer par erreur ni le modifier, c’est Windows qui le renvoit à Samba, et c’est Samba qui l’écrit.
Note, j’ai modifié les fichiers à la main dans ce commentaire pour les rendre plus génériques, j’ai peut-être introduit des erreurs.
Comme je l’ai écrit, le fichier smb.conf présenté est incomplet, parce que je me suis focalisé sur les trucs utiles, le reste est normalement déjà dans le smb.conf fourni par ta distro.
J’avais écrit tout ça sous Debian il y a quelques années quand Vista/Seven est arrivé (je crois que c’était une Debian Squeeze à l’époque), il y a peu de chance que tu rencontres beaucoup de XP aujourd’hui mais comme ça tu couvres tout le spectre et tu sais que tu as d’avance une configuration qui n’est pas propre à Seven, si Microsoft casse encore les profils à l’avenir, tu sais par quel bout le prendre !
Note, autre astuce en passant, si un utilisateur doit utiliser un vieux programme DOS dans le terminal, à partir de Windows Vista tu peux installer dans C:\Windows\System32 le fichier KEYB.EXE de FreeDOS, ce qui permettra à ton utilisateur de faire KEYB FR pour utiliser un clavier Azerty car depuis Windows Vista l’émulation DOS est QWERTY only.
ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: et une forte majorité de DSI imposent IE en entreprise
Posté par Thomas Debesse (site web personnel, Mastodon) . En réponse au journal Internet Explorer : 4 failles 0 day publiées. Évalué à 7. Dernière modification le 25 juillet 2015 à 12:18.
C’est très rare mais ce n’est pas un problème si tu rediriges tous les documents utilisateurs de manière à minimiser le Roaming, et si une application veut écrire dans
%HOMEPATH%/Application Dataau lieu de%APPDATA%, tu es sûr que l’application écrira tout de même sur le réseau vu que%HOMEPATH%est redirigé.Je n’ai jamais touché de Windows Server, mais avec un Samba c’est ainsi que je fais...
La configuration suivante est testée validée de Windows XP Pro SP1 à Windows 7 Pro. Le Roaming est réduit au minimum, le bureau est en réseau lui aussi,
Application Dataaussi, il n’y a queLocal Settings\Application Dataqui n’est pas en réseau, parce que c’est justement ce qui est local à la machine, et le profile (fond d’écran etc.) qui est récupéré à l’ouverture de session et renvoyé au serveur à la fin. À part ces points particuliers, rien n’est pris en otage par le poste utilisateur, c’est fini de devoir attendre la fermeture de session pour sauvegarder le bureau et les données d’application, c’est fini les pertes de données si l’ordinateur s’éteint sans fermer la session ! La configuration suivante permet la cohabitation Windows XP et Windows Vista, Seven en utilisant la même arborescence en ligne.Tous les documents utilisateurs sont dans le disque
H:, propre à chaque utilisateur.Ah bien, sûr, il faut désactiver la synchro sur les postes utilisateurs, le mieux est de le faire à l’installation de la machine.
Quelques extraits de
/etc/samba/smb.conf(incomplet, le reste à ta charge) :Contenu de
/etc/samba/netlogon/logon.cmd:Contenu de
/etc/samba/netlogon/home.reg:Choses bonnes à savoir :
H:\sous XP, ce comportement est cassé à partir de Vista, spamafote.Note, j’ai modifié les fichiers à la main dans ce commentaire pour les rendre plus génériques, j’ai peut-être introduit des erreurs.
Comme je l’ai écrit, le fichier
smb.confprésenté est incomplet, parce que je me suis focalisé sur les trucs utiles, le reste est normalement déjà dans lesmb.conffourni par ta distro.J’avais écrit tout ça sous Debian il y a quelques années quand Vista/Seven est arrivé (je crois que c’était une Debian Squeeze à l’époque), il y a peu de chance que tu rencontres beaucoup de XP aujourd’hui mais comme ça tu couvres tout le spectre et tu sais que tu as d’avance une configuration qui n’est pas propre à Seven, si Microsoft casse encore les profils à l’avenir, tu sais par quel bout le prendre !
Note, autre astuce en passant, si un utilisateur doit utiliser un vieux programme DOS dans le terminal, à partir de Windows Vista tu peux installer dans
C:\Windows\System32le fichierKEYB.EXEde FreeDOS, ce qui permettra à ton utilisateur de faireKEYB FRpour utiliser un clavier Azerty car depuis Windows Vista l’émulation DOS est QWERTY only.ce commentaire est sous licence cc by 4 et précédentes