Le site des administrateurs systèmes sous Mac OS X
  Il existe toujours de nombreuses manières de faire : la bonne et les autres.



Accueil du site > Trucs & Astuces > Déplacer le répertoire de départ d’un utilisateur sur une autre (...)
Déplacer le répertoire de départ d’un utilisateur sur une autre partition

vendredi 29 février 2008, par Nicolas DARQUE

Il s’agit d’un article fonctionnel et peu théorique. Dans cet article, vous apprendrez à déplacer le dossier HomeDirectory d’un utilisateur sur une autre partition. Attention, il ne s’agit pas de déporter le HomeDirectory d’un utilisateur sur un volume distant. Sur ce point, un dossier made in Cupertino est disponible sur le site d’Apple.


Pour commencer, mettons nous d’accord sur les termes : « Home Directory », « Répertoire de départ de l’utilisateur », « Dossier utilisateur », tous désignent dans cet article le dossier de l’utilisateur toto « /Users/toto ». On notera également que /Partition2/ est le point de montage du volume sur lequel vous voulez mettre les comptes utilisateurs [1] . Notons également que les commandes indiquées doivent être lancées avec les droits root, par exemple en les précédant de la commande sudo.

Lorsque vous enregistrez un nouvel utilisateur sur Mac OS X, son répertoire de départ est créé automatiquement dans le dossier « /Users ». Il est parfois nécessaire de déplacer ce dernier sur une autre partition, afin de libérer de l’espace sur la partition d’origine et/ou offrir plus d’espace au répertoire de départ concerné.

Ceci se fait en deux étapes. La première consiste à déplacer le dossier utilisateur toto, la seconde à modifier l’attribut NFSHomeDirectory de l’enregistrement utilisateur toto dans la base locale de gestion des utilisateurs.

Pour ce faire, ouvrez une session en tant qu’administrateur et, comme tout bon administrateur que vous êtes, faites une sauvegarde de la base locale.

Pour les version de Mac OS X jusqu’à la 10.4.x, dans un terminal, tapez la commande suivante pour sauvegarder : nidump -r / . > /Users/Shared/dateNidump

et pour restaurer la base, utilisez la commande niload -r / . < /Users/Shared/dateNidump

Avec Mac OS X 10.5, il vous faudra sauvegarder le dossier /var/db/dslocal/nodes/Default/ avec, par exemple, la commande tar : tar zcf ~/Archive-dslocal.tgz /var/db/dslocal/nodes/Default/

Créez un dossier qui va accueillir le dossier de départ de toto :

mkdir /Partition2/Users2

Changez le propriétaire, le groupe et les permissions de ce nouveau dossier :

chown admin /Partition2/Users2

chgrp admin /Partition2/Users2

chmod 1775 /Partition2/Users2

Déplacez le répertoire de toto dans ce nouveau dossier :

mv /Users/toto /Partition2/Users2

Lancez la prochaine commande dscl :

Sous Mac OS X 10.4.x et précédents : dscl localhost -change /NetInfo/Users/toto NFSHomeDirectory /Users/toto /Partition2/Users2/toto

Sous Mac OS X 10.5 : dscl localhost -change /Local/Default/Users/toto NFSHomeDirectory /Users/toto /Partition2/Users2/toto

Et voilà ! Maintenant, vous savez comment déplacer les HomeDirectory de vos utilisateurs où bon vous semble.


[1] Vous pouvez consulter l’article La gestion des partitions de Jayce pour savoir comment définir le point de montage.


[ Haut ] Enregistrer au format PDF

Creative Commons License

Cette création est mise à disposition sous un contrat Creative Commons.




Recommandez ce site à un ami :

Votre Prénom : E-mail de votre ami :

Valid XHTML 1.0 Transitional

FORUM DE L'ARTICLE :



2 Messages de forum
Déplacer le répertoire de départ d’un utilisateur sur une autre partition

26 janvier 2011 19:48, par ndubau

Bonjour, Je pense avoirs suivi correctement vos indications, mais je rencontre un problème dans la dernière phase d’envoi de la commande dscl ; je copie colle le contenu du terminal…

Last login : Wed Jan 26 19:04:38 on console Welcome to Darwin ! localhost : ND$ nidump -r / . > /Users/Shared/dateNidump localhost : ND$ mkdir /Data1/Utilisateurs mkdir : /Data1 : No such file or directory localhost : ND$ localhost : ND$ mkdir /Data1/NDUB mkdir : /Data1 : No such file or directory localhost : ND$ mkdir /Volumes/Data1/Utilisateurs localhost : ND$ chown admin /Volumes/Data1/Utilisateurs chown : admin : Invalid argument localhost : ND$ chown ? usage : chown [-fhv] [-R -H | -L ] owner[:group] file … chown [-fhv] [-R -H | -L ] :group file … localhost : ND$ chown admin /Volumes/Data1/Utilisateurs chown : admin : Invalid argument localhost : ND$ chgrp admin /Volumes/Data1/Utilisateurs localhost : ND$ mv /Users/ND /Volumes/Data1/Utilisateurs/ND

mv : /Users/ND/.rnd : Permission denied mv : /bin/cp : terminated with 1 (non-zero) status : Cross-device link localhost : ND$ localhost : ND$ localhost : ND$ localhost : ND$ chmod 1775 /Volumes/Data1/Utilisateurs localhost : ND$ dscl localhost -change /Local/Default/Users/ND NFSHomeDirectory /Users/ND /Volumes/Data1/Utilisateurs/ND change : Invalid Path localhost : ND$

Merci de votre attention N. Dubau


Déplacer le répertoire de départ d’un utilisateur sur une autre partition

10 février 2011 09:56, par Jayce Piel

Je pense que c’est simplement un problème de droits, je reprends la phrase d’introduction : « Notons également que les commandes indiquées doivent être lancées avec les droits root, par exemple en les précédant de la commande sudo. »

Il faut donc précéder toutes les commandes par la commande sudo, ou alors, lancer une fois au début la commande « sudo -s » pour se connecter en tant que root.