Où le Mac stocke-t-il des images de compte?

88

J'ai pris une photo à ajouter à mon compte sur Mac.

Maintenant, je veux l'utiliser sur Messenger, mais je ne le trouve pas. Sur la configuration du compte, c'est trop petit. J'ai besoin de trouver l'original.

Où les images de compte sont-elles stockées sur un Mac?

Zote
la source

Réponses:

106

Mac OS X 10.5+ stocke les images de compte de l'utilisateur dans le service d'annuaire, à l'exception d'un compte qui n'a pas modifié l'image de l'utilisateur depuis sa création. Lorsqu'il est créé pour la première fois, un compte contient un attribut "Image" dans son enregistrement d'utilisateur, qui constitue un chemin d'accès à l'image en question. Cela peut être lu en utilisant la dsclcommande ( dscl . -read /Users/${USER} Picture).

Si un utilisateur a modifié sa photo à tout moment, la photo du compte (aussi appelée version recadrée, le cas échéant) est stockée dans l'attribut «JPEGPhoto» de son enregistrement utilisateur.

Les fichiers originaux peuvent être trouvés à l' /Library/User Picturesadresse si vous recherchez une photo fournie par Apple, alors que vos fichiers originaux personnels doivent être trouvés à l'adresse ~/Library/Images/iChat Recent Pictures/. Si les fichiers sont supprimés du iChat Recent Picturesdossier, cela n’affectera en aucun cas l’image de votre compte utilisateur.

Si vous souhaitez extraire une version de votre image de compte, vous pouvez le faire en exécutant la commande suivante

dscl . -read /Users/${USER} JPEGPhoto | tail -1 |
    xxd -r -p > ${HOME}/Desktop/accountImage.jpg`

La résolution peut varier en fonction de la taille d'origine de la photo et de la version du système d'exploitation que vous utilisez lors de son enregistrement.

Si vous utilisez Mac OS X 10.4, ma mémoire me manque car je ne me souviens pas si la photo de l'utilisateur a été stockée dans NetInfo ou non.

Chealion
la source
Étrange, ma photo personnalisée n’est PAS située dans ~ / Bibliothèque / Images / iChat Recent Pictures.
Uwe Honekamp
@Uwe Honekamp - Si ce dossier est jamais effacé, cela n'aide en rien car l'image réelle est stockée dans l'attribut JPEGPhoto de votre fiche d'utilisateur.
Chealion
1
J'ai utilisé cette commande: -read / Users / short_username JPEGPhoto | queue -1 | xxd -r -p> /PATH/TO/accountImage.jpg Ty Chealion
Zote
11
Il suffit d'aller directement à dscl . -read /Users/short_username JPEGPhoto | tail -1 | xxd -r -p > /PATH/TO/accountImage.jpg- fonctionne comme annoncé , juste que vous obtenez une version 256x256 px de votre image de compte. :)
Marius Butuc
1
@MariusButuc: Mon ordinateur personnel me donne une version 96x96 px d'une très vieille photo, mais sur mon ordinateur de travail, il me donne la version 512x512 px d'une des images par défaut d'Apple. Je ne sais pas quoi et où décide quelle taille est réellement enregistrée.
Chealion
25

J'avais du mal à trouver la mémoire cache d'images du compte dans Mountain Lion 10.8.3. Ils n'ont pas été trouvés dans

~/Library/Caches/com.apple.iChat/Pictures

ou

~/Library/Images/iChat Recent Pictures/

C'est probablement parce qu'iChat est devenu Messages dans Mountain LionSo. J'ai utilisé l'outil de ligne de commande fs_usagepour les rechercher. En exécutant la commande

sudo fs_usage -w | grep .tiff

Ensuite, en cliquant sur et en définissant une nouvelle image de compte, vous pouvez voir le chemin d'accès au fichier qui est écrit sur le disque lorsque vous modifiez les images de compte.

Il s'avère que dans le lion de montagne 10.8.3, les images récentes du compte sont passées à:

   ~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/
jackslash
la source
2
~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/travaillé pour Mavericks
tolitius
Aussi Yosemite. Le bon côté de cette solution est que vous devez simplement accéder au système de fichiers, pas au service de répertoire actif.
Poulsbo
Cela semble être la bonne réponse pour les versions OSX les plus récentes
ForeverWintr
Confirmer cela fonctionne aussi sur El Capitan.
Lloeki
Confirmé sur OS X Yosemite
Daniel Griscom
11

J'ai trouvé les images par défaut dans /Library/User Pictures

Il y a six sous-répertoires sous ce répertoire. Vous pouvez mettre votre propre ensemble d'images dans la collection par défaut.

Créez un nouveau sous-répertoire vide avec votre nom. Comme il s’agit d’un répertoire situé en dehors de votre compte et accessible à tout utilisateur, vous devrez entrer votre mot de passe administrateur.

Copiez et collez ensuite vos images dans ce nouveau sous-répertoire, en saisissant à nouveau votre mot de passe administrateur.

Vos propres images devraient maintenant apparaître dans la collection par défaut. Ensuite, vous devrez aller dans l'application Contacts et changer votre photo. Ensuite, allez dans Utilisateurs et groupes dans les préférences système et modifiez les photos. Pour modifier les photos, sélectionnez Modifier, puis Par défaut, puis faites défiler vers le bas.

Spencer Star
la source
Travaillé pour moi Pourquoi est-ce si hors du chemin!?
TJ Biddle
La clé pour moi était de tuer l'application Paramètres, puis de la redémarrer après avoir ajouté la photo à / Bibliothèque / Images utilisateur
Sterling Bourne
4

Sur Mac OS X 10.8.2 Mountain Lion, ils existent sous forme de fichiers combinant jpeg et tiff sur mon Mac. Ainsi, ils peuvent être copiés vers un autre emplacement.

L'ensemble des photos des utilisateurs se trouvent à deux endroits différents. Cependant, la photo de l'utilisateur en question ne correspond pas nécessairement au dossier de l'utilisateur respectif. Donc, c'est un peu bizarre.

Regardez: Macintosh HD / Utilisateurs / user0 / Bibliothèque / Images / iChat Photos récentes / Par « user0 » Je me réfère au nom du premier utilisateur défini sur le système (voir ci - dessous contexte). À cet endroit se trouvent 3 photos d'utilisateurs, pour 3 de mes 4 utilisateurs. 3 jpegs, tous de bonne qualité. Curieusement, il s’applique à tous les utilisateurs à l’ exception de user0. Les jpegs sont appelés les noms exacts comme suit: 'Récent 1.jpg', 'Récent 2.jpg' et 'Récent 3.jpg'

Pour user0, cette photo est dans: Macintosh HD / Bibliothèque / Caches / C'est un tiff, qualité médiocre. Le tiff s'appelle exactement 'com.apple.user501picturecache.tiff'

Il est important de noter que voici le contexte système ci-dessus: - Un Apple iMac 20 "début 2009 exécutant à l'origine Mac OS X 10.5 Leopard. - Le premier utilisateur défini était l'utilisateur0. Le nom, ni la photo, n'ont été modifiés. - Tous les autres Encore une fois, ni les noms, ni les photos n’ont été modifiés - Il a été mis à jour à chaque nouveau Mac OS X lors de sa sortie - Exécution de Mac OS X 10.8.2 Mountain Lion.

Remarque: lors de la mise à jour de Lion, je me souviens que la photo de l'utilisateur 0 n'était pas aussi belle au moment de la connexion. Cela semblait de moins bonne qualité. Donc quelque chose est arrivé là-bas. Je m'attends à ce que Lion ait réarrangé les photos et apporté quelque chose à ces photos - je n'ai aucune preuve de cela, c'est juste une intuition.

utilisateur36379
la source
3

C'est le moyen de le trouver sur OS X 10.8.3:

~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/

Wolfango
la source
Aucun répertoire de ce type sur mon 10.8.3
utilisateur151019
@ Mark Intéressant ... en suivant le chemin donné, je le trouve sur mon 10.8.3
Ruskes
Je suis sur un Mac Mini sans appareil photo, l'image a donc été copiée à partir d'un fichier. J'ai trouvé une copie dans /Library/Caches/com.apple.user501pictureCache.tiff
user151019
1
@Mark - Oui, je pense que ce dossier est uniquement destiné aux images prises avec l'appareil photo.
Wolfango
1

Running Snow Leopard 10.6.8

J'ai trouvé ma photo capturée pour la connexion de l'utilisateur à l'emplacement suivant. L’original et le recadré ont été trouvés dans~/Library/Caches/com.apple.iChat/Pictures

volkswagner
la source
1

Jetez un coup d'oeil dans ~/Library/Images/iChat/Recent Pictures.

Jason
la source
0

Si vous cliquez sur l'icône dans la page de préférences "Comptes", un menu contextuel apparaît proposant l'option "Modifier l'image ..." comme option la plus en haut. Cela ouvre une boîte de dialogue qui - du moins dans mon cas - montre une version plus grande de mon icône d'utilisateur. Je suppose que dans le but spécifique de créer une icône de messagerie, il serait possible de simplement effectuer une capture d'écran de cette image.

Certes, sans avoir les connaissances techniques pour répondre à la question, je ne suis vraiment pas sûr que les icônes des utilisateurs soient stockées dans un fichier normal. Si ce fichier se trouvait dans votre compte utilisateur (c'est-à-dire ˜ / Bibliothèque), la page de préférences devrait explorer en profondeur votre compte pour afficher l'icône, si un autre utilisateur ouvre simplement la page de préférences "Compte".

Si, OTOH, le fichier était stocké quelque part dans / Library, il serait probablement difficile de définir l'icône individuellement pour chaque utilisateur ne disposant pas de droits d'administrateur. Quelqu'un d'autre nous a éclairé, s'il vous plaît.

Uwe Honekamp
la source
1
Les détails de l'utilisateur sont stockés dans le service d'annuaire (accessible pour dscl- les fichiers .plist stockés dans /var/db/dslocal)
Chealion
-1

Sur la base de toutes les réponses précédentes, voici la mienne:

dscl . -read ~$USER JPEGPhoto | xxd -p -r > $USER.jpg

Aussi, voici quelque chose de très original que j'ai trouvé:

sudo plutil -convert xml1 -o - /var/db/dslocal/nodes/Default/users/$USER.plist |
    vim '+/>j/+3,/>j//<\/d/-1j | .!base64 -D > $USER.jpg' '+q!' -

Même si c'est beaucoup plus compliqué, cela peut être utile, car il plutilest également disponible sur d'autres plateformes. Il convertit la plist binaire contenant les informations utilisateur en xml, puis utilise vim pour sélectionner la partie avec l'image et la décode enfin de base64 en jpg.

dardo82
la source