10.14 Mojave Changer l'emplacement du dossier Utilisateur sur HDD

le.tof

Membre actif
27 Septembre 2009
315
75
Bonjour,

Je mets à jour mon Mac mini I7 2.6 2012, SSD Angelbird wrk 512Go + HDD Western Digital Black 1To + 16Go de RAM Kingston HyperX Impact en CL9. J'ai fait une clean install de Mojave, et je voudrais changer l'emplacement du dossier Utilisateur du SSD au HDD qui est vide est au format HFS+.
Pour ce faire, j'ai créé un une session supplémentaire Admin par mesure de sécurité, je me suis logé sous cette dernière et j'ai passé la commande :sudo rsync -av /Users/Christophe /Volumes/"HDD_WD_Black" pour cloner ma petite maison sur le HDD.

Problème, j'ai un retour de fichier non copier en début de liste et en fin de liste :
Bloc de code:
building file list ... rsync: opendir "/Users/Christophe/Library/Application Support/CallHistoryTransactions" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Application Support/com.apple.TCC" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Application Support/CallHistoryDB" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/IdentityServices" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Messages" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/HomeKit" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Mail" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Safari" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Suggestions" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Containers/com.apple.Safari" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/PersonalizationPortrait" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Metadata/CoreSpotlight" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Cookies" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Caches/com.apple.safaridavclient" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Caches/CloudKit/com.apple.Safari" failed: Operation not permitted (1)
rsync: opendir "/Users/Christophe/Library/Caches/com.apple.Safari" failed: Operation not permitted (1)
done
...
sent 472571267 bytes  received 56636 bytes  55603282.71 bytes/sec
total size is 472275631  speedup is 1.00
rsync error: some files could not be transferred (code 23) at /BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync-52.200.1/rsync/main.c(996) [sender=2.6.9]
Donc le clonage n'est pas parfait.

Voilà un tableau des disques :
Bloc de code:
MinideCristophe:~ christophe$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS HDD_WD_Black            999.9 GB   disk0s2

/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *512.1 GB   disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                 Apple_APFS Container disk2         511.9 GB   disk1s2

/dev/disk2 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +511.9 GB   disk2
                                 Physical Store disk1s2
   1:                APFS Volume SSD_Angelbird_wrk       18.8 GB    disk2s1
   2:                APFS Volume Preboot                 47.3 MB    disk2s2
   3:                APFS Volume Recovery                507.4 MB   disk2s3
   4:                APFS Volume VM                      2.1 GB     disk2s4

Autre particularité l'invite du terminal indique MinideCristophe, le H à disparu de mon prénom alors qu'il est parfaitement orthographié partout ailleurs ?

Par avance merci, pour votre aide.
 
Bon, alors j'ai trouvé pourquoi le clonage complet n'a pas marché sous MOJAVE, avec la commande rsync. En fait, certaines opérations ne sont plus permises depuis le Terminal (par mesure de sécurité peut-être ?) avec MOJAVE. Pour retrouver tout ses droits, il faut allé dans les Préférences Système > Sécurité et confidentialité puis dans Confidentialité choisir Accès complet au disque et ajouter le Terminal. Voilà si ça peut aidé quelqu'un.
 
Bonsoir le.tof

Je n'avais pas vu tes messages > mais je vois que tu t'es dépanné tout seul.

- des mentions d'« operation not permitted » signent l'activation du SIP (protocole de sécurisation). Il verrouille des localisations-Système du volume de démarrage > mais aussi dans la Bibliothèque de compte de l'utililisateur. En procédé alternatif du tien > tu aurais pu le désactiver (commande : csrutil disble dans le terminal de la session de secours ouverte via ⌘R au re-démarrage).​

----------

Dans l'invite de commande du terminal de ta session :
Bloc de code:
MinideCristophe:~ christophe$

  • MinideCristophe est le HostName (nom d'hôte) de ton Mac. Tu peux éditer ce nom d'hôte par la commande :
Bloc de code:
sudo scutil --set HostName "MinideChristophe"

  • puis tu quittes et relances le Terminal => pour avoir : MinideChristophe (avec un h) comme nouveau nom d'hôte.

=> en généralisation : tout ce que tu mets à la fin de la commande entre les "" => deviendra le nouveau nom d'hôte du Mac.
 
  • J’aime
Réactions: le.tof
Merci, j'espérais ton passage.

J'ai un nouveau souci : je n'arrive pas changer l'adressage de la clé home du fichier de lien Christophe.plist pour la localiser de "Users/Christophe" à "/volumes/HDD_WD_Black/Christophe" voilà le retour :

Bloc de code:
MinideChristophe:~ admin$ sudo defaults write /private/var/db/dslocal/nodes/Default/users/Christophe.plist home '("/Volumes/HDD_WD_Black/Christophe")'
2020-07-31 08:27:33.370 defaults[840:13779] Could not write domain /private/var/db/dslocal/nodes/Default/users/Christophe.plist; exiting
MinideChristophe:~ admin$

Avant j'ai bien attribué le droit de propriété du dossier Christophe et tout son contenu (avec staff en groupe principal) cloné sur le HDD avec la commande sudo chown -R Christophe:staff /Volumes/"HDD_WD_Black"/Christophe je n'ai pas eu de retour après cette commande, ce qui semble normal.
 
Dernière édition par un modérateur:
Désactive d'abord le SIP > avant de pouvoir écrire au fichier identitaire Christophe.plist. Car la base de données users du Service d'Annuaire est protégée par le SIP.

----------

Pour désactiver le SIP > redémarre > les 2 touches ⌘R (cmd R) tenues pressées de l'écran noir => à la  = démarrage sur l'OS de secours. Tu obtiens un écran affichant une fenêtre de 4 Utilitaires macOS. Va à la barre de menus supérieure de l'écran > Menu Utilitaires > sous-menu : Terminal.

Lance-le et passe la commande :
Bloc de code:
csrutil disable

  • qui désactive le SIP

Cela fait > quitte le Terminal > va à : Menu  > Disque de démarrage > sélectionne SSD_Angelbird_wrk > redémarre dessus.

----------

Cela fait > et de retour dans ta session > va à : Menu  > Préférences Système > Utilisateurs et groupes => presse le bouton + pour créer un nouvel utilisateur. Choisis : nouveau compte : Administrateur > Nom complet = toto > Nom compte = toto > Mot de passe = toto.

- 2 raisons à cette création d'un admin auxiliaire : a) quand on déporte le dossier de départ de l'utilisateur principal => il faut toujours avoir un second administrateur dont le dossier de départ réside en local dans le volume de démarrage. En cas de blocage de la session de l'admin principal > on peut loger dans la session de l'admin secondaire pour aviser ; b) pour écrire au fichier identitaire christophe.plist => toujours préférer le faire dans la session de terminal toto. Ce qui permet d'éditer un fichier non utilisé par un utilisateur connecté.​

----------

Ta commande d'édition est valide. Tu la passes donc dans la session toto > puis tu redémarres une fois > et tu te loges comme christophe.
 
Note : le fichier identitaire ne doit pas être intitulé Christophe.plist > mais christophe.plist. C'est toujours le nomcourt qui est utilisé pour intituler le fichier identitaire (tel que l'invite de commande du terminal en atteste). La commande defaults est sensible à la casse.

Passe la commande (SIP désactivé) :
Bloc de code:
sudo ls /private/var/db/dslocal/nodes/Default/users | sed '/^_/ d'

  • qui liste les fichiers identitaires d'utilisateurs à noms pleins. Tu vas bien voir si le fichier identitaire s'intitule christophe.plist.

Quant au dossier domiciliaire > passe la commande :
Bloc de code:
ls /Vol*/HDD*

  • qui liste les objets de 1er rang du volume HDD_WD_Black. C'est pour voir si le dossier s'intitulé : Christophe ou christophe

En fonction des résultats => éditer la commande.

  • j'ai l'impression que tu as déjà créé un admin auxiliaire nommé admin. Donc pas besoin de toto.
 
Pour ne pas avoir de problème avec la casse, je renomme toujours le nomcourt comme le nom de mon compte utilisateur. Donc c'est bien Christophe.plist

Bloc de code:
MinideChristophe:~ admin$ sudo ls /private/var/db/dslocal/nodes/Default/users | sed '/^_/ d'
Password:
Christophe.plist
admin.plist
daemon.plist
nobody.plist
root.plist
MinideChristophe:~ admin$ ls /Vol*/HDD*
Christophe
MinideChristophe:~ admin$
 
D'accord. Donc après désactivation du SIP > la commande :
Bloc de code:
sudo defaults write /private/var/db/dslocal/nodes/Default/users/Christophe.plist home '("/Volumes/HDD_WD_Black/Christophe")'

  • devrait fonctionner.

Sinon > tu peux depuis la session admin > aller au panneau des Utilisateurs et groupes > déverrouiller le cadenas > sélectionner Christophe avec la touche ctrl pressée => bouton : "Options avancées" => qui affiche un tableau abrégé des informations du fichier identitaire Christophe.plist. En bas > à : Répertoire de départ > presse le bouton : Choisir > navigue au dossier Christophe du volume HDD_WD_Black et presse le bouton : "Ouvrir" => ce qui édite la valeur de chaîne associée à la clé home dans le fichier Christophe.plist.
 
C'était bien un problème avec le SIP, en le désactivant avec ta méthode ça a fonctionné, j'ai vérifier que c'est bien effectif dans le fichier avec la commande sudo defaults read /private/var/db/dslocal/nodes/Default/users/Christophe.plist home

qui m'a retourné :

Bloc de code:
(
    "/Volumes/HDD_WD_Black/Christophe"
)

La commande pour supprimer mon dossier utilisateur sur le disque SSD devenu inutile est bien sudo rm -rf /Users/Christophe ?
 
Le chemin d'ouverture de session est valide. Tu dois ouvrir ta session sur le Bureau du dossier Christophe du volume HDD_WD_Black.

- par ailleurs > ta commande de suppression est aussi valide.​
 
Tu gérais tout de ton propre chef. C'est seulement l'activation du SIP qui bloquait l'édition du fichier Christophe.plist (et aussi perturbait légèrement la recopie d'éléments de la Bibliothèque du dossier Christophe par rsync).
 
Je mets à jour mon Mac mini I7 2.6 2012, SSD Angelbird wrk 512Go + HDD Western Digital Black 1To
J'ai fait une clean install de Mojave, et je voudrais changer l'emplacement du dossier Utilisateur du SSD au HDD
Bonjour,
Il était aussi possible de faire un "Fusion Drive" avec les 2 Disques.
 
Bonjour,
Il était aussi possible de faire un "Fusion Drive" avec les 2 Disques.

Bonjour,

J'y ai pensé, mais je n'ai pas opté pour cette option, d'une part pour des raisons de sécurités des données. Il n'est en effet pas très pertinent de transformer deux lecteurs physiques en un seul lecteur logique, et d'autre part le système de fichier APFS, n'est vraiment pas adapté aux disques durs à plateaux (même si apple y a introduit un outil de défragmentation). Le problème vient de la manière donc se nouveau système de fichiers structures métadonnées et fichiers.
En plus de dégrader les performances du HDD par rapport à l'HFS+, il stress le matériel du fait d'une utilisation intensive des têtes de lecture qui doivent faire des aller-retour incessant pour trouver les métadonnées qui sont accolées aux fichiers et donc dispersées sur le disque, alors qu'avec HFS+ ces dernières sont concaténées et séparées de leurs fichiers.
J'y ai donc vu que des désavantage.