avc_destroy - Linux


avc_destroy removes an access vector cache (AVC) entry. AVCs are utilized by the SELinux security module to track access control decisions made by the kernel. Deleting an AVC entry can improve performance by reducing the number of checks required to make future access control decisions.


avc_destroy [-C|-c|-a] [-r|-w] [-P|-p] [-c|-U] [-n] [-t] [-d] [-p] [-V]


  • -C, -c or -a: Remove all entries from AVC, cache reset
  • -r or -w: Delete only the read or write entries
  • -P, -p: Display entries being deleted
  • -c, -U: Remove entries from the user space only
  • -n: Dry run, show what would be done without actually making changes
  • -t: Delete only time-based entries
  • -d: Delete only entries for the specified user defined type
  • -p: Delete only entries for the specified priority
  • -V: Verbose output


  • Purge all AVC entries: avc_destroy -C
  • Print all read entries that will be deleted: avc_destroy -r -P

Common Issues

  • The command may not have sufficient permissions to delete AVC entries. Ensure it is run as root or with appropriate privileges.


  • avc_destroy can be used in conjunction with the avc_audit command to audit AVC entries.
  • It can also be incorporated into scripts or cron jobs to periodically remove unused AVC entries, optimizing performance.

Related Commands

  • avc_audit: Audits AVC entries.
  • audit2allow: Generates SELinux policy modules based on AVC entries.