Il n'y a pas grand-chose sur le Web quant à ce qui coreduetd
fonctionne sur un Mac autre que "il est utilisé pour le transfert entre iOS et macOS".
Qu'est-ce que ça fait?
Il assure le suivi de vos différents états du système et des applications, y compris les états sur vos appareils Apple.
Peut-il être désactivé?
Techniquement, oui en utilisant launchctl
. Cependant, je (fortement) ne recommande pas de le faire.
Doit-il être désactivé?
Question complètement subjective. Vous seul pouvez décider si c'est le bon cours pour vous. Encore une fois, je vous recommande de ne pas le faire.
Quels sont les effets secondaires (potentiels) de sa désactivation (dépendances)?
Potentiellement, les éléments suivants peuvent être affectés :
- Le transfert entre iOS et macOS serait affecté
- Synchronisation iCloud
- Synchronisation des messages avec Office 365
Cependant, en faisant un peu de recherche, j'ai pu trouver un projet de recherche sur la sécurité iOS (sur http://sans.org ) qui a examiné le coreduet.db
fichier sur iOS. J'ai appliqué cette réflexion au coreduet.db
fichier sur macOS. Voici ce que j'ai trouvé ...
En faisant une copie du coreduet.db
fichier, je l'ai examiné dans sqlite3 en obtenant d'abord une liste de toutes les tables
$ sudo cp /var/db/CoreDuet/coreduet.db ~/
$ sudo sqlite3 coreduet.db
sqlite> .tables
ZCDDMAIRPLANEMODEEVENT ZCDDMFORECASTINTEGER ZCDDMSTATISTICINTEGER
ZCDDMAPPNAMEMAPPER ZCDDMFORECASTREAL ZCDDMSTATISTICREAL
ZCDDMAPPSTATECHANGEEVENT ZCDDMFORECASTSCORE ZCDDMSTATISTICSTRING
ZCDDMATTRIBUTENAMEMAPPER ZCDDMFORECASTSTRING ZCDDMSTRINGATTRIBUTE
ZCDDMBACKLIGHTEVENT ZCDDMINTEGERATTRIBUTE ZCDDMTHERMALEVENT
ZCDDMBATTERYEVENT ZCDDMPLUGINEVENT ZCDDMWAKEDNESSEVENT
ZCDDMBOOKKEEPING ZCDDMPOOL Z_METADATA
ZCDDMBOOTORSHUTDOWNEVENT ZCDDMPOOLNAMEMAPPER Z_MODELCACHE
ZCDDMDEVICEEVENT ZCDDMREALATTRIBUTE Z_PRIMARYKEY
ZCDDMDEVICEMAPPER ZCDDMSCREENLOCKEVENT
ZCDDMFORECAST ZCDDMSLEEPORWAKEEVENT
sqlite>
Il semble qu'il y ait un certain nombre d'événements dont il assure le suivi. Cependant, pour voir ce que nous avons pu voir, j'ai ouvert la table Z_PRIMARYKEY:
sqlite> SELECT * FROM Z_PRIMARYKEY;
1|CDDMAirplaneModeEvent|0|81
2|CDDMAppNameMapper|0|218
3|CDDMAppStateChangeEvent|0|185302
4|CDDMAttributeNameMapper|0|101
5|CDDMBacklightEvent|0|0
6|CDDMBatteryEvent|0|0
7|CDDMBookkeeping|0|1
8|CDDMBootOrShutdownEvent|0|0
9|CDDMDeviceEvent|0|0
10|CDDMDeviceMapper|0|0
11|CDDMForecast|0|0
12|CDDMForecastInteger|0|0
13|CDDMForecastReal|0|0
14|CDDMForecastScore|0|0
15|CDDMForecastString|0|0
16|CDDMIntegerAttribute|0|0
17|CDDMPluginEvent|0|0
18|CDDMPool|0|79
19|CDDMPoolNameMapper|0|66
20|CDDMRealAttribute|0|0
21|CDDMScreenLockEvent|0|0
22|CDDMSleepOrWakeEvent|0|17
23|CDDMStatisticInteger|0|0
24|CDDMStatisticReal|0|0
25|CDDMStatisticString|0|0
26|CDDMStringAttribute|0|7293
27|CDDMThermalEvent|0|0
28|CDDMWakednessEvent|0|0
sqlite>
Cette base de données particulière semble suivre les événements du système. Étant donné que je suis sur un iMac, il serait logique que je n'ai pas de choses comme "BatteryEvent" ou "PlugInEvent", mais j'aurais "AppStateChangeEvents". "AirplaneMode" est un peu déroutant car il s'agit d'un iMac, mais je garde généralement mon WiFi éteint, sauf pour les tests; à un moment donné, cet état a été ajouté à la base de données.
En allant un peu plus loin dans CCDMAirplaneModeEvent, nous pouvons voir qu'il suit non seulement quand, mais où l'événement a eu lieu (bien que ma base de données ait des 0
données pour ces champs) et par qui.
select * FROM ZCDDMAIRPLANEMODEEVENT;
Z_PK Z_ENT Z_OPT ZAIRPLANEMODEON ZANONYMIZEDBEACON ZANONYMIZEDLOCATION ZLOCALDAYSSINCESUNDAY ZLOCALTIME ZLOCALTIMEQUARTERHOURSLOT ZNETWORKQUALITY ZUSERID ZCREATIONDATE
---------- ---------- ---------- --------------- ----------------- ------------------- --------------------- ---------- ------------------------- --------------- ---------- -------------
81 1 1 0 0 0 0 80704 0 0 0 523938304