{"id":13732,"date":"2026-01-07T09:55:21","date_gmt":"2026-01-07T04:25:21","guid":{"rendered":"https:\/\/www.youstable.com\/blog\/?p=13732"},"modified":"2026-01-07T09:55:24","modified_gmt":"2026-01-07T04:25:24","slug":"how-to-optimize-clamav-on-linux-server","status":"publish","type":"post","link":"https:\/\/www.youstable.com\/blog\/how-to-optimize-clamav-on-linux-server","title":{"rendered":"How to Optimize ClamAV on Linux Server &#8211; Complete Guide"},"content":{"rendered":"\n<p><strong>To optimize ClamAV on a Linux server,<\/strong> run the daemon (clamd) instead of clamscan, keep signatures up to date with freshclam, tune threads and scan limits, exclude noisy paths, schedule smart scans (on-access plus daily incrementals), cache databases on fast storage, and monitor logs to balance speed, accuracy, and CPU\/RAM usage.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"why-optimizing-clamav-on-linux-server-matters\"><strong>Why Optimizing ClamAV on Linux Server Matters<\/strong><\/h2>\n\n\n\n<p>ClamAV is a reliable open-source antivirus engine for Linux, but default settings are conservative. If you want faster scans, fewer false positives, and lower CPU spikes, you need to optimize ClamAV on Linux server the right way. This guide covers practical tuning that we use on production servers to keep performance smooth without sacrificing security.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"quick-wins-80-20-checklist\"><strong>Quick Wins: 80\/20 Checklist<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Use clamd +<\/strong> clamdscan (not clamscan) for persistent, multi-threaded scanning.<\/li>\n\n\n\n<li>Update signatures frequently with freshclam; consider a local mirror at scale.<\/li>\n\n\n\n<li>Exclude ephemeral paths like \/proc, \/sys, \/dev, and heavy cache directories you trust.<\/li>\n\n\n\n<li>Tune MaxThreads, StreamMaxLength, and scan-size limits for your workload.<\/li>\n\n\n\n<li>Put DatabaseDirectory and TemporaryDirectory on fast storage (SSD\/tmpfs).<\/li>\n\n\n\n<li>Use on-access scanning (clamonacc) for real-time protection, plus scheduled incrementals.<\/li>\n\n\n\n<li>Monitor logs and clamd metrics; adjust when you see bottlenecks or false positives.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"understand-your-workload-before-tuning\"><strong>Understand Your Workload Before Tuning<\/strong><\/h2>\n\n\n\n<p>Scan patterns vary by server role. A <a href=\"https:\/\/www.youstable.com\/blog\/best-linux-distros-for-hosting\/\">web hosting server<\/a> sees many small uploads; a mail gateway processes streams; a file server stores large archives. Note your average file size, peak concurrency, and I\/O limits. This determines thread counts, scan-size caps, and exclusion strategy. Optimization is context-driven, not one-size-fits-all.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"install-and-keep-clamav-updated\"><strong>Install and Keep ClamAV Updated<\/strong><\/h2>\n\n\n\n<p>Install the engine, daemon, and updater using your distribution\u2019s packages. Make sure your OS repositories are not stale so you get a recent ClamAV version.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Debian\/Ubuntu\nsudo apt update\nsudo apt <a href=\"https:\/\/www.youstable.com\/blog\/install-clamav-on-linux\/\">install clamav<\/a> clamav-daemon clamav-freshclam\n\n# RHEL\/CentOS\/Alma\/Rocky\nsudo dnf install clamav clamd clamav-update\n\n# openSUSE\nsudo zypper install clamav clamav-daemon clamav-freshclam<\/code><\/pre>\n\n\n\n<p><strong>Enable services and perform an initial database update.<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl enable --now clamav-freshclam\nsudo systemctl enable --now clamav-daemon   # may be named clamd@scan or clamd\n\n# If the database is empty, you may need:\nsudo freshclam<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"switch-to-clamd-plus-clamdscan-the-biggest-speedup\"><strong>Switch to clamd + clamdscan (The Biggest Speedup)<\/strong><\/h2>\n\n\n\n<p>clamscan loads signatures into memory every run. clamd keeps them warm in RAM and serves multiple scan requests simultaneously. Use clamdscan to talk to the daemon via socket or TCP for significant speed gains and lower CPU churn.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"recommended-clamd-conf-baseline\"><strong>Recommended clamd.conf baseline<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># \/etc\/clamav\/clamd.conf (path may differ by distro)\n\n# Socket (preferred) or TCP\nLocalSocket \/run\/clamd.scan\/clamd.sock\nFixStaleSocket true\n\n# Threads and queue - tune for your CPU and I\/O\nMaxThreads 8\nMaxQueue 100\n\n# Limits (protect your server from huge or deeply nested files)\nMaxScanSize 750M\nMaxFileSize 250M\nMaxRecursion 30\nMaxFiles 20000\nStreamMaxLength 750M\n\n# Performance\nConcurrentDatabaseReload yes\nReadTimeout 300\nBytecode yes\nBytecodeSecurity TrustSigned\nBytecodeTimeout 120000\n\n# Exclusions (example; adapt to your environment)\nExcludePath ^\/proc\/\nExcludePath ^\/sys\/\nExcludePath ^\/dev\/\nExcludePath ^\/run\/\nExcludePath ^\/var\/log\/\nExcludePath ^\/var\/cache\/\n\n# Logging\nLogFile \/var\/log\/clamav\/clamd.log\nLogTime yes\n\n# Temporary and DB paths - put on fast storage when possible\nTemporaryDirectory \/tmp\nDatabaseDirectory \/var\/lib\/clamav<\/code><\/pre>\n\n\n\n<p>Set MaxThreads near (but not above) the number of CPU cores you can spare for scanning. Keep headroom for web, MySQL, PHP-FPM, and mail services. If you <a href=\"https:\/\/www.youstable.com\/blog\/reseller-web-hosting-business\/\">host busy<\/a> sites, start with 4\u20138 threads, benchmark, then iterate.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"tune-freshclam-and-signature-management\"><strong>Tune freshclam and Signature Management<\/strong><\/h2>\n\n\n\n<p>freshclam pulls official databases (main, daily, bytecode). Update frequency should be responsible: too low risks exposure; too high risks throttling. Six to twelve checks per day suits most servers; mail gateways may go higher.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"recommended-freshclam-conf-baseline\"><strong>Recommended freshclam.conf baseline<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># \/etc\/clamav\/freshclam.conf\n\nDatabaseMirror database.clamav.net\nChecks 8\nDNSDatabaseInfo current.cvd.clamav.net\n\n# Networking\nConnectTimeout 30\nReceiveTimeout 30\n\n# Logging\nUpdateLogFile \/var\/log\/clamav\/freshclam.log\nLogTime yes\n\n# If you run a private mirror for multiple servers:\n# PrivateMirror your-mirror.example.com\n# ScriptedUpdates yes<\/code><\/pre>\n\n\n\n<p>If you manage dozens of servers, host a local mirror and point all nodes to it. This reduces bandwidth, speeds updates, and avoids public mirror rate limits.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"exclude-noisy-and-safe-paths\"><strong>Exclude Noisy and Safe Paths<\/strong><\/h2>\n\n\n\n<p>Scanning pseudo-filesystems or high-churn caches wastes CPU. Exclude paths that cannot contain real malware or that you already trust. Keep uploads, mail spools, and web roots in scope.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Safe to exclude: \/proc, \/sys, \/dev, \/run, package caches, system logs.<\/li>\n\n\n\n<li>Optional: backup mounts that are immutable or already scanned on a staging node.<\/li>\n\n\n\n<li>Be careful with: \/tmp, \/var\/tmp, \/home, \/var\/www, \/var\/mail \u2014 usually keep these included.<\/li>\n<\/ul>\n\n\n\n<p>Use ExcludePath in clamd.conf or &#8211;exclude\/&#8211;exclude-dir with clamscan\/clamdscan to minimize noise and speed up jobs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"smart-scheduling-real-time-incremental-and-full-scans\"><strong>Smart Scheduling: Real-Time, Incremental, and Full Scans<\/strong><\/h2>\n\n\n\n<p>Combine on-access scanning for instant protection with lightweight scheduled scans. This prevents malware from persisting while keeping routine load predictable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"enable-on-access-scanning-fanotify\"><strong>Enable on-access scanning (fanotify)<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Start clamonacc with clamd. Adjust paths to watch.\nsudo clamonacc --fdpass \\\n  --log=\/var\/log\/clamav\/onaccess.log \\\n  --include-path=\/var\/www \\\n  --include-path=\/var\/mail \\\n  --exclude-path=\/proc --exclude-path=\/sys --exclude-path=\/dev<\/code><\/pre>\n\n\n\n<p>On-access scanning requires a modern kernel (fanotify). Run it as root or a user with enough privileges. Start it via systemd or a supervisor for persistence.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"schedule-daily-weekly-scans\"><strong>Schedule daily\/weekly scans<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Daily quick incremental scan (changes in last 24h)\n0 2 * * * root find \/var\/www -type f -mtime -1 -print0 | \\\n  xargs -0 -r clamdscan --fdpass --multiscan --log=\/var\/log\/clamav\/daily-www.log\n\n# Weekly full scan off-peak\n30 3 * * 0 root clamdscan --fdpass --multiscan --log=\/var\/log\/clamav\/full.log \/<\/code><\/pre>\n\n\n\n<p>Use &#8211;multiscan to parallelize across threads. Prefer clamdscan over clamscan for speed. Run full scans during low traffic windows.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"resource-tuning-cpu-i-o-memory\"><strong>Resource Tuning: CPU, I\/O, Memory<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Threads: Start with MaxThreads = 50\u201375% of available cores. Measure and adjust.<\/li>\n\n\n\n<li>Scan limits: Cap MaxScanSize and StreamMaxLength to prevent giant archives from blocking threads.<\/li>\n\n\n\n<li>TemporaryDirectory: Point to a fast disk or tmpfs, but ensure enough free space.<\/li>\n\n\n\n<li>DatabaseDirectory: Keep on SSD. Faster signature reads improve startup and reloads.<\/li>\n\n\n\n<li>I\/O scheduling: If scans compete with databases, consider ionice\/CPU shares for clamd.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code># Example: start clamd with lower I\/O priority\nsudo ionice -c2 -n6 systemctl start clamav-daemon<\/code><\/pre>\n\n\n\n<p>Watch <a href=\"https:\/\/www.youstable.com\/blog\/fix-high-physical-memory-usage-in-cpanel\/\">memory usage<\/a> during full scans. If the kernel starts swapping, lower MaxThreads or move TemporaryDirectory off tmpfs to <a href=\"https:\/\/www.youstable.com\/blog\/check-disk-space-files-in-linux\/\">disk with more space<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"practical-clamscan-clamdscan-command-examples\"><strong>Practical clamscan\/clamdscan Command Examples<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code># Scan uploads directory and show only infected files\nclamdscan --fdpass --multiscan --infected \/var\/www\/html\/wp-content\/uploads\n\n# Exclude specific patterns\nclamdscan --fdpass --multiscan \\\n  --exclude-dir='^\/var\/www\/cache\/' \\\n  --exclude='\\.log$' \\\n  \/var\/www\n\n# Quarantine strategy (move, don't delete)\nINFECTED=\/quarantine\nmkdir -p \"$INFECTED\"\nclamscan -r --move=\"$INFECTED\" --infected \/home<\/code><\/pre>\n\n\n\n<p>In production, prefer moving infected files to a quarantine folder rather than deleting them. This preserves evidence and reduces false-positive risk.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"logging-monitoring-and-alerting\"><strong>Logging, Monitoring, and Alerting<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Centralize logs: clamd.log, freshclam.log, onaccess.log.<\/li>\n\n\n\n<li>Alerting: Forward \u201cFOUND\u201d events to your SIEM, email, or chat via rsyslog or a small wrapper script.<\/li>\n\n\n\n<li>Metrics: Use clamdtop to monitor queue, threads, and throughput in real time.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code># Quick alert on detection (example)\ntail -Fn0 \/var\/log\/clamav\/clamd.log | \\\n  awk '\/FOUND\/ {system(\"mail -s \\\"ClamAV detection\\\" admin@example.com &lt;&lt;&lt; \\\"\"$0\"\\\"\")}'<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"reduce-false-positives-and-handle-overrides\"><strong>Reduce False Positives and Handle Overrides<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Be careful with PUA (Potentially Unwanted Applications). Enable only if you need aggressive detections.<\/li>\n\n\n\n<li>Use ExcludePath for trusted software caches and build artifacts.<\/li>\n\n\n\n<li>For a one-off false positive, create an ignore entry using local.ign2 in DatabaseDirectory.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code># Example ignore file (one signature per line)\n# \/var\/lib\/clamav\/local.ign2\nWin.Trojan.Example:abcdef1234567890abcdef1234567890<\/code><\/pre>\n\n\n\n<p>Only ignore after verifying with multiple scanners and hashes. Document every override for audits.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"common-mistakes-to-avoid\"><strong>Common Mistakes to Avoid<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Running clamscan for routine jobs (too slow) instead of clamdscan.<\/li>\n\n\n\n<li>Scanning \/proc, \/sys, or large backup mounts unnecessarily.<\/li>\n\n\n\n<li>Enabling excessive Checks in freshclam leading to throttling.<\/li>\n\n\n\n<li>Deleting infected files automatically without quarantine.<\/li>\n\n\n\n<li>Ignoring logs and assuming defaults are \u201cset and forget.\u201d<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"optimization-examples-by-server-role\"><strong>Optimization Examples by Server Role<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"web-hosting-servers\"><strong>Web hosting servers<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>On-access for uploads and web roots.<\/li>\n\n\n\n<li>Daily incremental scans of \/var\/www and user homes.<\/li>\n\n\n\n<li>Exclude caches (image caches, compiled templates).<\/li>\n\n\n\n<li>Threads: 4\u20138 depending on PHP-FPM\/DB load.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"mail-gateways\"><strong>Mail gateways<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>High Checks for freshclam (e.g., 12\u201324), but respect mirror policies.<\/li>\n\n\n\n<li>Stream scanning via clamd with MTA integration.<\/li>\n\n\n\n<li>Tight StreamMaxLength and MaxFileSize to keep throughput high.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"file-servers\"><strong>File servers<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>On-access scanning on shared mounts.<\/li>\n\n\n\n<li>Weekly full scan off-peak with quarantine.<\/li>\n\n\n\n<li>Consider excluding huge immutable archives, but scan them during maintenance windows.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"troubleshooting-performance\"><strong>Troubleshooting Performance<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>High CPU all day: Reduce MaxThreads or lower on-access scope.<\/li>\n\n\n\n<li>Slow web responses during scans: Lower ionice priority or schedule scans off-peak.<\/li>\n\n\n\n<li>Scan aborts on big files: Increase MaxScanSize\/StreamMaxLength and ensure TemporaryDirectory has space.<\/li>\n\n\n\n<li>Freshclam errors: Check firewall\/DNS, adjust Checks, or use a nearby mirror.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"security-and-compliance-notes\"><strong>Security and Compliance Notes<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Quarantine retention and chain of custody for incident response.<\/li>\n\n\n\n<li>Access controls on logs and quarantine directories.<\/li>\n\n\n\n<li>Periodic verification of signature freshness and daemon uptime with systemd health checks.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code># Simple systemd health probe (service override snippet)\n# \/etc\/systemd\/system\/clamav-daemon.service.d\/override.conf\n&#91;Service]\nExecStartPost=\/bin\/sh -c 'sleep 5 &amp;&amp; \/usr\/bin\/clamdscan --version || systemctl restart clamav-daemon'<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"need-managed-hardening-youstable-can-help\"><strong>Need Managed Hardening? YouStable Can Help<\/strong><\/h2>\n\n\n\n<p>If you prefer experts to configure and maintain ClamAV, YouStable\u2019s managed Linux hosting includes security hardening, on-access scanning, tuned clamd profiles, and proactive monitoring. We optimize for your workload (WordPress, mail, file shares) and keep performance steady while meeting <a href=\"https:\/\/www.youstable.com\/blog\/use-ci-cd-on-linux\/\">security best practices<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"faqs-optimizing-clamav-on-linux-server\"><strong>FAQ&#8217;s: Optimizing ClamAV on Linux Server<\/strong><\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-1765872128057\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"1-is-clamd-faster-than-clamscan\">1. <strong>Is clamd faster than clamscan?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Yes. clamd loads signatures into memory once and serves multiple requests concurrently. clamscan re-reads databases each run, which is slower and CPU-heavy. For production, use clamd + clamdscan for significant performance gains.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765872137676\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"2-how-often-should-i-run-freshclam\">2. <strong>How often should I run freshclam?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>For most servers, 6\u201312 checks per day balances freshness and mirror fairness. Mail gateways or high-risk environments may increase this. If you manage many servers, create a local mirror and point freshclam to it to avoid throttling.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765872143029\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"3-what-directories-should-i-exclude-from-clamav-scans\">3. <strong>What directories should I exclude from ClamAV scans?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Exclude pseudo-filesystems (\/proc, \/sys, \/dev, \/run), system logs, and trusted caches. Keep user data, uploads, web roots, mail spools, and temp directories in scope. Exclusions should be justified and documented.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765872155523\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"4-how-do-i-reduce-false-positives-safely\">4. <strong>How do I reduce false positives safely?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Verify with multiple scanners and hashes. Prefer ExcludePath for known-safe locations. For specific signatures, add a line to local.ign2 to ignore that signature. Avoid broad ignores that hide future threats.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765872165440\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"5-should-i-enable-on-access-scanning-on-all-paths\">5. <strong>Should I enable on-access scanning on all paths?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>No. Start with high-risk paths (uploads, user homes, mail). Broad on-access hooks can increase overhead. Combine targeted on-access with scheduled incrementals and a weekly full scan to balance protection and performance.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>To optimize ClamAV on a Linux server, run the daemon (clamd) instead of clamscan, keep signatures up to date with [&hellip;]<\/p>\n","protected":false},"author":13,"featured_media":17174,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[350],"tags":[],"class_list":["post-13732","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-knowledgebase"],"acf":[],"featured_image_src":"https:\/\/www.youstable.com\/blog\/wp-content\/uploads\/2025\/12\/How-to-Optimize-ClamAV-on-Linux-Server.jpg","author_info":{"display_name":"Prahlad Prajapati","author_link":"https:\/\/www.youstable.com\/blog\/author\/prahladblog"},"_links":{"self":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/13732","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/comments?post=13732"}],"version-history":[{"count":3,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/13732\/revisions"}],"predecessor-version":[{"id":17176,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/13732\/revisions\/17176"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media\/17174"}],"wp:attachment":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media?parent=13732"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/categories?post=13732"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/tags?post=13732"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}