Remise à plat des propriétaires d'une arborescence

Pourquoi ?

Lorsqu'on déplace des fichiers, l'utilisateurs qui effectue cette opération devient le propriétaire des fichiers déplacés. Ce qui a pour effet de modifier singulièrement les quotas attribués à ces utilisateurs.


Principe :

Si l'arborescence possède les noms des utilisateur qu'elle héberge (cas des zones de profils, données perso), le script est on ne peut plus simple

le fichier batch appelle la fonction for /d qui parcours un répertoire. La variable %i contient le répertoire et donc le nom de l'utilisateur.

Il ne reste plus qu'à faire appel à la fonction subinacl avec les bonnes options.


REM Remise à plat des propriétaires d'une arborescence v1

FOR /d %%i in (*) do (
subinacl /subdirectories %%i\*.* /setowner=%userdomain%\%%i >> logsubinacl.log
subinacl /subdirectories %%i /setowner=%userdomain%\%%i >> logsubinacl.log
)
pause

Le même avec SetACL :

FOR /d %%i in (*) do (
SetACL -on %%i\*.* -ot file -actn setowner -owner "n:%USERDOMAIN%\%%i"
)