Multi session et SSD

Résolu
Fougor Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   - 5 déc. 2020 à 11:22
Bonjour,

Pour un ami et sa famille.
Il a un PC Tour Assus essentio series, avec un SSD (que j'ai ajouté) et un HDD.
Pour optimiser les performances du SSD, je déplace toujours les dossiers utilisateurs sur le HDD, cela fonctionne très bien.

Là, l'ami a une famille et il souhaite avoir 4 sessions (lui, sa femme et ses deux enfants.)

Du coup, je ne sais pas comment faire pour que les dossiers des différents utilisateurs soient sur le HDD sans que les uns et les autres se voient.
J'ai tenté de faire quatre partitions sur le HDD, mais tous les utilisateurs voient toutes les partitions dans le gestionnaire de fichier.

Comment je peux faire ?
Merci pour vos réponses.


Configuration: Linux / Firefox 83.0

4 réponses

barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Bonjour,

Vous ne précisez pas de quel système d'exploitation il s'agit.

0
Fougor Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Bonsoir,
Il s'agit de Win 10.
0
barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Pas besoin de 4 partitions, il faut une seule partition avec un dossier par utilisateur.

Pour t'aider je t'ai concocté un petit script, à sauvegarder avec l'extension .bat :
@echo off
setlocal enableextensions enabledelayedexpansion
chcp 28591 >nul

cd /d %~dp0

:: -------------------------------------------------------------
:: on vérifie si le script est lancé en administrateur
:: -------------------------------------------------------------

attrib %windir%\system32 -h | findstr /i "system32" >nul && exit /b 1

: --------------------------------------------------------------
: on crée une liste des comptes existants
: --------------------------------------------------------------

set liste="%tmp%\comptes_utilisateurs.txt"

(for /f "skip=4 delims=" %%A in ('net user ^| find /v "."') do echo %%A) > %liste%

: --------------------------------------------------------------
: on traite chaque dossier personnel
: --------------------------------------------------------------

for /D %%A in (*) do (

cls & echo. & echo ### Dossier : %%A
call :debut "%%~dpnA"

)

: --------------------------------------------------------------
: on quitte le script
: --------------------------------------------------------------

echo. & pause
exit

: --------------------------------------------------------------
: on demande le nom du compte qui aura les permissions
: --------------------------------------------------------------

:debut

set "owner="
set /p owner="### Merci d'indiquer le propriétaire du dossier : "
if not defined owner (goto :debut) else (call :check owner)
if !account! EQU 0 (goto :debut)
call :permissions %1 "!owner!"

goto :eof

: --------------------------------------------------------------
: on vérifie si le compte existe
: --------------------------------------------------------------

:check

findstr /lc:"!%1! " %liste% >nul && set account=1 || set account=0

goto :eof

: --------------------------------------------------------------
: on définit toutes les permissions
: --------------------------------------------------------------

:permissions

: --------------------------------------------------------------
: on définit le propriétaire de l'arborescence
: --------------------------------------------------------------

icacls %1 /setowner %~2 /t

: --------------------------------------------------------------
: on définit la liste d'ACE du dossier parent
: --------------------------------------------------------------

icacls %1 /grant:r %~2:^(OI^)^(CI^)F /inheritance:r
icacls %1 /grant *S-1-5-18:^(OI^)^(CI^)F

: --------------------------------------------------------------
: on propage la liste d'ACE vers les enfants
: --------------------------------------------------------------

icacls "%~1\*" /reset /t

goto :eof


Il faudra obligatoirement placer le script à la racine du HDD, là où il y a les dossiers personnels.
Il faut obligatoirement lancer le script avec le clic-droit "exécuter en tant qu'administrateur".

0
Fougor Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Merci, cela fonctionne bien.
0
barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Ok si tout fonctionne bien alors tu peux passer ce sujet en "résolu"
0