=
     

dscacheutil

gather information, statistics and initiate queries to the Directory Service cache.

dscacheutil -h
dscacheutil -q category [-a key value]
dscacheutil -cachedump [-buckets] [-entries [category]]
dscacheutil -configuration
dscacheutil -flushcache
dscacheutil -statistics

Does operations against the Directory Service cache including gathering statistics, initiating lookups, inspection, cache flush, etc. replaces most of the functionality of lookupd

-q category Initiate a query using standard calls. These calls will either return results from the cache or go fetch live data and place them in the cache.
By default if no specific query is requested via -a then all results within that category will be returned.
-a key value Optional flag to -q for a specific key with a value.
-cachedump Dumps an overview of the cache by default. Additional flags will provide more detailed information.
Unable to get details from the cache node
-buckets with -cachedump to also print hash bucket usage of the current cache.
-entries [category] with -cachedump to dump detailed information about cache entries.
category to only see types of interest.
Dumping 'host' entries can only be done by admin
-configuration outputs current configuration information, such as the search policy from Directory Service and cache parameters.
 > sudo dscacheutil -configuration
   DirectoryService Cache search policy:
    /Local/Default

Unable to get details from the cache node
Unable to get cache configuration information
-flushcache Should only be used in extreme cases.
-statistics outputs statistics from the cache including an overview and detailed call statistics.
Some calls are not cached but are derived from other calls internally.
Cache hits and cache misses may not always be equal to external calls. For example getaddrinfo is actually a combination of gethostbyname with other calls internally to the cache to maximize cache hit rate.
-h help
Available categories and associated keys: group name or gid host name or ip_address (used for both IPv6 and IPv4) mount name protocol name or number rpc name or number service name or port user name or uid

EXAMPLES

Lookup a user:
   % dscacheutil -q user -a name jdoe
                    name: jdoe
                    password: ********
                    uid: 501
                    gid: 501
                    dir: /Users/jdoe
                    shell: /bin/csh
                    gecos: John Doe
Lookup all users:
       % dscacheutil -q user
Dump cache overview:
           % dscacheutil -cachedump
Dump cache details with user entries:
               % dscacheutil -cachedump -entries user

Errors

Unable to get details from the cache node SEE ALSO DirectoryService(8), dsmemberutil