Dove memorizza le foto dell'account Mac?


88

Ho scattato una foto da aggiungere al mio account su Mac.

Ora voglio usarlo su Messenger, ma non riesco a trovarlo. Nella configurazione dell'account, è troppo piccolo. Devo trovare l'originale.

Dove sono archiviate le immagini accout su un Mac?

Risposte:


106

Mac OS X 10.5+ memorizza le immagini degli account degli utenti all'interno del Servizio directory, ad eccezione di un account che non ha modificato le immagini degli utenti dalla prima creazione. Quando viene creato per la prima volta, un account contiene un attributo "Immagine" nel record utente che rappresenta un percorso per l'immagine in questione. Questo può essere letto usando il dsclcomando ( dscl . -read /Users/${USER} Picture).

Se un utente ha modificato la propria immagine utente in qualsiasi momento, la foto dell'account (ovvero la versione ritagliata, se del caso) viene memorizzata nell'attributo "JPEGPhoto" del proprio record utente.

Puoi trovare i file originali /Library/User Picturesse stai cercando un'immagine fornita da Apple, mentre i tuoi file originali personali dovrebbero essere trovati su ~/Library/Images/iChat Recent Pictures/. Se i file vengono mai rimossi dalla iChat Recent Picturescartella, ciò non influirà sull'immagine del tuo account utente.

Se desideri estrarre una versione dell'immagine del tuo account, puoi farlo eseguendo il comando seguente

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

La risoluzione può variare in base alle dimensioni originali della foto e alla versione del sistema operativo in uso quando viene salvata.

Se stai utilizzando Mac OS X 10.4, la mia memoria non mi riesce poiché non ricordo se l'immagine dell'utente è stata memorizzata in NetInfo o meno.


Strano, la mia immagine utente personalizzata NON si trova in ~ / Library / Images / iChat foto recenti.
Uwe Honekamp,

@Uwe Honekamp - Se quella cartella viene mai cancellata, non aiuta in quanto l'immagine reale viene memorizzata nell'attributo JPEGPhoto del tuo record utente.
Chealion,

1
Ho usato questo comando: -read / Users / short_username JPEGPhoto | coda -1 | xxd -r -p> /PATH/TO/accountImage.jpg Ty Chealion
Zote,

11
Vai direttamente a dscl . -read /Users/short_username JPEGPhoto | tail -1 | xxd -r -p > /PATH/TO/accountImage.jpg: funziona come pubblicizzato , solo che ottieni una versione di 256x256 px dell'immagine del tuo account. :)
Marius Butuc,

1
@MariusButuc: Il mio computer di casa mi dà una versione di 96x96 px di un'immagine molto vecchia, ma sul mio computer di lavoro mi dà la versione di 512x512 px di una delle immagini predefinite di Apple. Non sono sicuro di cosa e dove decide quale dimensione viene effettivamente salvata.
Chealion,

25

Ho avuto difficoltà a trovare la cache delle immagini dell'account su Mountain Lion 10.8.3. Non sono stati trovati in

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

o

~/Library/Images/iChat Recent Pictures/

Presumibilmente questo è perché iChat è diventato Messaggi in Mountain Lion, così ho usato lo strumento da riga di comando fs_usageper trovarli. Eseguendo il comando

sudo fs_usage -w | grep .tiff

Quindi, facendo clic e impostando una nuova immagine dell'account, è possibile vedere il percorso del file che viene scritto sul disco quando si cambiano le immagini dell'account.

Si scopre che in Mountain Lion 10.8.3 le recenti immagini dell'account sono state spostate in:

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

2
~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/ha lavorato per Mavericks
tolitius,

Anche Yosemite. La cosa bella di questa soluzione è che hai solo bisogno di accedere al filesystem, non al servizio di directory live.
Poulsbo,

Questa sembra essere la risposta corretta per le versioni OSX più recenti
ForeverWintr,

Confermando che funziona anche su El Capitan.
Lloeki,

Confermato su OS X Yosemite
Daniel Griscom il

11

Ho trovato le immagini predefinite in /Library/User Pictures

Ci sono sei sottodirectory in questa directory. Puoi inserire il tuo set di immagini come parte della raccolta predefinita.

Crea una nuova sottodirectory vuota con il tuo nome e poiché questa è una directory esterna al tuo account e accessibile a qualsiasi utente, dovrai inserire la password dell'amministratore.

Quindi copia e incolla le tue foto in questa nuova sottodirectory, inserendo nuovamente la tua password amministratore.

Le tue foto ora dovrebbero apparire nella raccolta predefinita. Quindi dovrai accedere all'app dei contatti e cambiare la tua foto. Quindi vai su Utenti e gruppi nelle preferenze di sistema e modifica le foto. Per cambiare le foto selezionare modifica e quindi predefinito e quindi scorrere verso il basso.


Ha funzionato per me. Perché è così fuori mano !?
TJ Biddle,

La chiave per me è stata quella di uccidere l'app Impostazioni quindi riavviarla dopo aver aggiunto la foto a / Library / User Pictures
Sterling Bourne

4

Su Mac OS X 10.8.2 Mountain Lion, esistono come file che sono un mix di jpeg e tiff sul mio Mac. Pertanto, possono essere copiati in un'altra posizione.

Il set completo di foto degli utenti si trova in due posizioni diverse. Tuttavia, la foto dell'utente in questione non è necessariamente correlata alla rispettiva cartella dell'utente. Quindi è un po 'eccentrico.

Guarda: Macintosh HD / Utenti / utente0 / Libreria / Immagini / Immagini recenti di iChat / Per ' utente0 ' Mi riferisco al nome del primo utente definito sul sistema (vedi contesto seguente). In questa posizione ci sono 3 foto utente, per 3 dei miei 4 utenti. 3 jpeg, tutti di buona qualità. Curiosamente, è per tutti gli utenti tranne user0. I jpeg sono chiamati con il nome esatto come segue: "Recente 1.jpg", "Recente 2.jpg" e "Recente 3.jpg"

Per l'utente0, questa foto è in: Macintosh HD / Libreria / Cache / È una qualità rigida e scadente. Il tiff si chiama esattamente "com.apple.user501picturecache.tiff"

È importante sottolineare che qui è il contesto di sistema sopra: - Un Apple iMac 20 "all'inizio del 2009 che originariamente eseguiva Mac OS X 10.5 Leopard - Il primo utente definito era user0. Né il nome, né la foto, sono stati cambiati. - Tutti gli altri utenti seguiti poco dopo. Ancora una volta, né i nomi né le foto sono stati cambiati - È stato aggiornato con ogni nuovo Mac OS X quando rilasciato - Attualmente in esecuzione Mac OS X 10.8.2 Mountain Lion.

Nota: quando ho effettuato l'aggiornamento a Lion, ricordo che la foto dell'utente0 non era così bella al momento dell'accesso. Sembrava di qualità scadente. Quindi è successo qualcosa lì. Mi aspetto che Lion abbia riorganizzato dove erano le foto e fatto qualcosa per le foto - non ne ho la prova, è solo un sospetto.


3

Questo è il modo di trovarlo su OS X 10.8.3:

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


Nessuna di queste directory sul mio 10.8.3
user151019

@Mark Interessante ... seguendo il percorso indicato, lo trovo sul mio 10.8.3
Ruskes

Sono su un Mac Mini senza fotocamera, quindi l'immagine è stata copiata da un file. Ho trovato una copia in /Library/Caches/com.apple.user501pictureCache.tiff
user151019

1
@Mark - Sì, penso che la cartella sia solo per le immagini scattate con la fotocamera.
Wolfango,

1

Running Snow Leopard 10.6.8

Ho trovato la mia foto catturata per l'accesso dell'utente nella seguente posizione. Sono stati trovati sia l'originale che il ritaglio~/Library/Caches/com.apple.iChat/Pictures


1

Dai un'occhiata ~/Library/Images/iChat/Recent Pictures.


0

Se si fa clic sull'icona nella pagina delle preferenze "Account", viene visualizzato un menu di scelta rapida che offre "Modifica immagine ..." come opzione più in alto. Questo apre una finestra di dialogo che - almeno nel mio caso - mostra una versione più grande della mia icona utente. Immagino per lo scopo specifico di creare un'icona di messaggistica sarebbe possibile semplicemente catturare questa immagine.

Certo, senza avere il background tecnico per rispondere alla domanda reale, non sono davvero sicuro se le icone dell'utente reale siano memorizzate in un file normale. Se questo file si trovasse all'interno del tuo account utente (cioè ˜ / Libreria), la pagina delle preferenze dovrebbe eseguire una scansione approfondita del tuo account per visualizzare l'icona se un altro utente apre semplicemente la pagina delle preferenze "Account".

Se, OTOH, il file fosse archiviato da qualche parte in / Library, probabilmente sarebbe difficile impostare l'icona singolarmente per ogni utente che non ha i diritti di amministratore. Qualcun altro ha fatto luce su questo, per favore.


1
I dettagli dell'utente sono memorizzati nel servizio di directory (accessibile per dscl- file .plist archiviati in /var/db/dslocal)
Chealion,

-1

Sulla base di tutte le risposte precedenti ecco la mia:

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

Anche qui c'è qualcosa per lo più originale che ho trovato:

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

Anche se è molto più complicato può essere utile, perché plutilè disponibile anche su altre piattaforme. Converte il plist binario con le informazioni dell'utente in xml, quindi utilizza vim per selezionare la parte con l'immagine e infine decodifica da base64 in jpg.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.