{"id":12514,"date":"2025-12-20T09:47:12","date_gmt":"2025-12-20T04:17:12","guid":{"rendered":"https:\/\/www.youstable.com\/blog\/?p=12514"},"modified":"2025-12-20T09:47:14","modified_gmt":"2025-12-20T04:17:14","slug":"install-clamav-on-linux","status":"publish","type":"post","link":"https:\/\/www.youstable.com\/blog\/install-clamav-on-linux","title":{"rendered":"How to Install ClamAV on Linux Server: (Step-by-Step Guide 2026)"},"content":{"rendered":"\n<p><strong>To install ClamAV on a Linux server<\/strong>, update your package index, install ClamAV and its daemon, update virus signatures with FreshClam, then start and enable the services. Use clamscan for on-demand scans or clamd\/clamdscan for faster, daemon-powered scanning. Schedule regular scans and updates to keep malware detection current.<\/p>\n\n\n\n<p>Setting up antivirus on a Linux host is a practical way to catch malware in <a href=\"https:\/\/www.youstable.com\/blog\/upload-files-on-wordpress\/\">uploaded files<\/a>, email attachments, and web content before it spreads. In this guide, you\u2019ll learn how to install ClamAV on Linux server distributions (Ubuntu\/Debian, RHEL\/CentOS\/AlmaLinux\/Rocky, and openSUSE), configure updates, run fast scans, schedule jobs, and troubleshoot common issues with a simple, production-ready approach.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"what-is-clamav-and-why-use-it-on-a-linux-server\"><strong>What Is ClamAV and Why Use It on a Linux Server?<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"2496\" height=\"1664\" src=\"https:\/\/www.youstable.com\/blog\/wp-content\/uploads\/2025\/12\/image-34.png\" alt=\"\" class=\"wp-image-12554\" srcset=\"https:\/\/www.youstable.com\/blog\/wp-content\/uploads\/2025\/12\/image-34.png 2496w, https:\/\/www.youstable.com\/blog\/wp-content\/uploads\/2025\/12\/image-34-150x100.png 150w\" sizes=\"auto, (max-width: 2496px) 100vw, 2496px\" \/><\/figure>\n\n\n\n<p>ClamAV is an open-source antivirus engine that detects malware, viruses, trojans, and potentially unwanted applications across multiple file types. On Linux servers, it\u2019s widely used to scan user uploads, web roots, mail queues, and backups. It does not replace good patching and hardening, but it adds an important layer of defense\u2014especially for shared hosting, mail servers, and file gateways.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"prerequisites\"><strong>Prerequisites<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Root or sudo access<\/li>\n\n\n\n<li>A supported Linux distribution (Ubuntu\/Debian, RHEL\/CentOS\/AlmaLinux\/Rocky, openSUSE)<\/li>\n\n\n\n<li>Network access (for downloading signature updates)<\/li>\n\n\n\n<li>1\u20132 GB RAM recommended for clamd; more for large file sets<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"how-to-install-clamav-on-linux-all-major-distros\"><strong>How to Install ClamAV on Linux (All Major Distros)<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"ubuntu-debian\"><strong>Ubuntu\/Debian<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt update\nsudo apt install -y clamav clamav-daemon\n\n# Stop FreshClam temporarily to update signatures manually the first time\nsudo systemctl stop clamav-freshclam\nsudo freshclam\n\n# Start and enable services\nsudo systemctl enable --now clamav-freshclam\nsudo systemctl enable --now clamav-daemon\n\n# Verify\nclamscan --version\nsystemctl status clamav-daemon clamav-freshclam<\/code><\/pre>\n\n\n\n<p>Debian\/Ubuntu packages typically place configs in \/etc\/clamav\/. The clamd local socket is usually \/var\/run\/clamav\/clamd.ctl and FreshClam manages signature files automatically.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"rhel-centos-almalinux-rocky-8-9\"><strong>RHEL\/CentOS\/AlmaLinux\/Rocky (8\/9)<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Enable EPEL for ClamAV packages\nsudo dnf install -y epel-release\n\n# Install ClamAV components\nsudo dnf install -y clamav clamav-update clamav-scanner-systemd\n\n# Update signatures (first run)\nsudo freshclam\n\n# Enable and start the scanning daemon instance\nsudo systemctl enable --now clamd@scan\n\n# Optionally enable FreshClam service if provided by your distro\n# (some RHEL-based systems rely on freshclam via cron)\n# sudo systemctl enable --now clamav-freshclam\n\n# Verify\nclamscan --version\nsystemctl status clamd@scan<\/code><\/pre>\n\n\n\n<p>On RHEL-based distros, clamd configuration often lives in \/etc\/clamd.d\/scan.conf and uses a systemd instance clamd@scan. FreshClam may run as a service or via cron depending on your repository.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"opensuse-suse-linux-enterprise\"><strong>openSUSE\/SUSE Linux Enterprise<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo zypper refresh\nsudo zypper install -y clamav clamav-daemon\n\n# Update signatures and start services\nsudo systemctl stop freshclam\nsudo freshclam\nsudo systemctl enable --now freshclam\nsudo systemctl enable --now clamd\n\n# Verify\nclamscan --version\nsystemctl status clamd freshclam<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"update-virus-signatures-with-freshclam\"><strong>Update Virus Signatures with FreshClam<\/strong><\/h2>\n\n\n\n<p>FreshClam keeps ClamAV\u2019s virus definitions up to date. After installation, ensure FreshClam is enabled and running, or configure a cron job if your distro doesn\u2019t ship a service.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Run a manual update\nsudo freshclam\n\n# Check service (if available)\nsystemctl status clamav-freshclam\n# or\nsystemctl status freshclam<\/code><\/pre>\n\n\n\n<p>Configuration paths are typically \/etc\/clamav\/freshclam.conf (Debian\/Ubuntu) or \/etc\/freshclam.conf (RHEL-based). Keep DatabaseMirror defaults unless you maintain a local mirror.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"configure-clamd-for-faster-scanning\"><strong>Configure clamd for Faster Scanning<\/strong><\/h2>\n\n\n\n<p>The clamd daemon keeps signatures in memory and uses a local socket for fast scanning. Verify the socket path and file permissions so clamdscan can communicate with the daemon.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Debian\/Ubuntu: \/etc\/clamav\/clamd.conf (ensure these lines exist\/uncommented)\nLocalSocket \/var\/run\/clamav\/clamd.ctl\nFixStaleSocket true\nUser clamav\nLogFile \/var\/log\/clamav\/clamd.log\nLogTime yes\n\n# RHEL-based: \/etc\/clamd.d\/scan.conf (common defaults)\nLocalSocket \/run\/clamd.scan\/clamd.sock\nFixStaleSocket yes\nUser clamscan\nLogFile \/var\/log\/clamd.scan\nLogTime yes\n\n# After editing, restart clamd service\nsudo systemctl restart clamav-daemon   # Debian\/Ubuntu\n# or\nsudo systemctl restart clamd@scan      # RHEL-based<\/code><\/pre>\n\n\n\n<p>Use clamdscan for on-demand scans through the daemon. It is significantly faster than clamscan on large directories.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"run-your-first-scan-on-demand\"><strong>Run Your First Scan (On-Demand)<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"quick-checks\"><strong>Quick checks<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Scan a specific file or directory\nclamscan \/path\/to\/file\nclamscan -r \/var\/www\n\n# Use the daemon for speed (recommended)\nclamdscan \/var\/www\n\n# Print only infected results and summary\nclamscan -r --infected --bell --log=\/var\/log\/clamav\/manual-scan.log \/var\/www\n\n# Move infected files to quarantine\nsudo mkdir -p \/var\/quarantine\nsudo chown -R root:root \/var\/quarantine\nclamscan -r --infected --move=\/var\/quarantine \/home<\/code><\/pre>\n\n\n\n<p>Be careful with &#8211;remove; consider using &#8211;move to quarantine, review logs, and then delete if confirmed malicious.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"schedule-automatic-scans\"><strong>Schedule Automatic Scans<\/strong><\/h2>\n\n\n\n<p>Automating malware checks ensures consistency. Cron is simplest, but you can also use systemd timers.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"cron-example-daily-scan-at-0230\"><strong>Cron example (daily scan at 02:30)<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo crontab -e\n# Add:\n30 2 * * * \/usr\/bin\/clamdscan --fdpass --infected --move=\/var\/quarantine \/var\/www &gt;&gt; \/var\/log\/clamav\/daily-webroot.log 2&gt;&amp;1<\/code><\/pre>\n\n\n\n<p>Use &#8211;fdpass when clamd runs as a different user so file descriptors are passed correctly. If clamdscan is unavailable, switch to clamscan with similar options.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"recommended-exclusions-and-performance-tuning\"><strong>Recommended Exclusions and Performance Tuning<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Exclude temp and cache directories to reduce noise and I\/O:<br><pre class=\"wp-block-code\"><code>clamscan -r --exclude-dir=\/proc --exclude-dir=\/sys --exclude-dir=\/dev --exclude-dir=\/var\/cache \/<\/code><\/pre><br><\/li>\n\n\n\n<li>For clamd, use ExcludePath in the config for permanent exclusions.<\/li>\n\n\n\n<li>Set sensible size limits for large files and archives if needed (in clamd.conf):<br><pre class=\"wp-block-code\"><code>MaxFileSize 200M<br>MaxScanSize 400M<br>MaxRecursion 16<\/code><\/pre><br><\/li>\n\n\n\n<li>Prefer clamdscan over clamscan for large trees.<\/li>\n\n\n\n<li>Place signatures and sockets on fast local storage; avoid network mounts for the socket.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"real-time-on-access-scanning-with-clamonacc\"><strong>Real-Time (On-Access) Scanning with clamonacc<\/strong><\/h2>\n\n\n\n<p>ClamAV supports on-access scanning via clamonacc (fanotify). It watches directories and submits files to clamd when accessed. This adds overhead and should be targeted to high-risk paths like upload folders rather than the entire filesystem.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Example (adjust paths for your distro)\nsudo mkdir -p \/var\/quarantine\nsudo clamonacc \\\n  --log=\/var\/log\/clamav\/clamonacc.log \\\n  --move=\/var\/quarantine \\\n  --exclude-dir=\/proc --exclude-dir=\/sys --exclude-dir=\/dev \\\n  --fdpass \\\n  --config-file=\/etc\/clamav\/clamd.conf \\\n  --path=\/var\/www\/html\/wp-content\/uploads<\/code><\/pre>\n\n\n\n<p>Run clamd first, and <a href=\"https:\/\/www.youstable.com\/blog\/why-should-you-consider-windows-dedicated-server-hosting\/\">consider creating a dedicated<\/a> systemd service or using provided units if your distribution ships them. Limit on-access to specific directories to avoid heavy CPU and I\/O usage.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"logging-alerts-and-reporting\"><strong>Logging, Alerts, and Reporting<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Logs: clamd logs in \/var\/log\/clamav\/ or \/var\/log\/clamd.scan (distro-dependent). FreshClam logs updates to freshclam.log.<\/li>\n\n\n\n<li>Enable LogTime yes and optionally LogClean no to reduce verbosity.<\/li>\n\n\n\n<li>Integrate alerts with your monitoring: tail logs and notify via mailx, Slack webhooks, or your SIEM.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code># Show infected detections from the latest log\ngrep -i \"FOUND\" \/var\/log\/clamav\/*.log<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"use-cases-web-and-mail-servers\"><strong>Use Cases: Web and Mail Servers<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Web servers: Scan \/var\/www and specifically user-upload directories. Automate scans after deployments and nightly.<\/li>\n\n\n\n<li>Mail servers: Pair ClamAV with Amavis\/SpamAssassin, Postfix, or Exim to scan inbound\/outbound mail queues.<\/li>\n\n\n\n<li>File gateways: Scan NFS\/Samba shares before files reach user endpoints.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"troubleshooting-common-issues\"><strong>Troubleshooting Common Issues<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>FreshClam \u201clocked database\u201d or permission errors: Stop service, update manually, then restart:<br><pre class=\"wp-block-code\"><code>sudo systemctl stop clamav-freshclam || true<br>sudo freshclam<br>sudo systemctl start clamav-freshclam || true<\/code><\/pre><br><\/li>\n\n\n\n<li>\u201cCan\u2019t connect to clamd\u201d: Check LocalSocket path in clamd.conf and permissions; confirm clamd is running.<\/li>\n\n\n\n<li>High CPU or slow scans: Add exclusions, increase MaxFileSize judiciously, and use clamdscan.<\/li>\n\n\n\n<li>False positives: Quarantine first, review logs, whitelist hashes or paths where appropriate.<\/li>\n\n\n\n<li>Signature update failures: Verify DNS and HTTP egress; ensure mirrors aren\u2019t blocked by a firewall or proxy.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"uninstall-or-disable-clamav\"><strong>Uninstall or Disable ClamAV<\/strong><\/h2>\n\n\n\n<p>If you need to remove ClamAV, stop services first and then remove packages. Only do this if you have alternative protections in place.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Ubuntu\/Debian\nsudo systemctl disable --now clamav-daemon clamav-freshclam\nsudo apt remove --purge -y clamav clamav-daemon\n\n# RHEL-based\nsudo systemctl disable --now clamd@scan\nsudo dnf remove -y clamav*<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"security-best-practices-with-clamav\"><strong>Security Best Practices with ClamAV<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Keep the OS and ClamAV updated; signatures age quickly.<\/li>\n\n\n\n<li>Use least privilege: run clamd as the clamav\/clamscan user.<\/li>\n\n\n\n<li>Scan only what matters (uploads, mail queues, user homes). Don\u2019t waste cycles on \/proc, \/sys, or immutable system dirs.<\/li>\n\n\n\n<li>Quarantine before deletion and review detections.<\/li>\n\n\n\n<li>Log and alert on infections; integrate with your monitoring stack.<\/li>\n\n\n\n<li>Combine with other layers: WAF, secure configurations, principle of least privilege, and timely patching.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"why-this-matters-for-hosting-a-note-from-youstable\"><strong>Why This Matters for Hosting: A Note from YouStable<\/strong><\/h2>\n\n\n\n<p>If you manage client websites, shared hosting, or <a href=\"https:\/\/www.youstable.com\/blog\/how-to-create-a-business-email-account\/\">business email<\/a>, ClamAV significantly reduces the risk of distributing malware from your server. At YouStable, our <a href=\"https:\/\/www.youstable.com\/blog\/benefits-of-fully-managed-dedicated-server\/\">managed VPS and dedicated servers<\/a> can ship with ClamAV preconfigured, automated updates, and scheduled scans\u2014so your stack stays secure while you focus on growth.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"faq-install-clamav-on-linux-server\"><strong>FAQ: Install 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-1765523042865\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"is-clamav-real-time-antivirus-on-linux\"><strong>Is ClamAV real-time antivirus on Linux?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Yes, with clamonacc (fanotify) it can monitor directories in real time. It\u2019s best to restrict monitoring to high-risk paths like upload folders. Full-system on-access scanning can be heavy; schedule periodic full scans instead.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765523052556\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"whats-the-difference-between-clamscan-and-clamdscan\"><strong>What\u2019s the difference between clamscan and clamdscan?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>clamscan is a standalone scanner that loads signatures each run (slower). clamdscan uses the clamd daemon, which keeps signatures in memory (faster). For servers and scheduled tasks, clamdscan is recommended.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765523062964\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"how-do-i-update-clamav-signatures-automatically\"><strong>How do I update ClamAV signatures automatically?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Enable the FreshClam service (clamav-freshclam or freshclam) so it checks mirrors regularly. If your distro doesn\u2019t ship a service, add a cron job that runs freshclam every hour.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765523071421\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"can-clamav-remove-or-quarantine-threats\"><strong>Can ClamAV remove or quarantine threats?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Yes. Use &#8211;move=\/path\/to\/quarantine with clamscan or configure clamdscan with a quarantine directory. Review quarantined files before deletion to avoid data loss from false positives.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765523079475\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"which-directories-should-i-scan-on-a-web-server\"><strong>Which directories should I scan on a web server?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Focus on \/var\/www (or your doc roots), user home directories, and upload\/temp locations used by applications (for example, WordPress wp-content\/uploads). Exclude system paths like \/proc, \/sys, and \/dev.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765523086702\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"does-clamav-detect-windows-malware-on-linux\"><strong>Does ClamAV detect Windows malware on Linux?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Yes. ClamAV detects a wide range of Windows and cross-platform malware. This is critical for mail and file servers to prevent passing infected files to Windows endpoints.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765523097747\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"how-often-should-i-schedule-scans\"><strong>How often should I schedule scans?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>For most servers, daily or weekly scans of key directories are sufficient, plus near real-time scanning of upload locations if feasible. Always keep FreshClam updating hourly or at least several times a day.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"final-thoughts\"><strong>Final Thoughts<\/strong><\/h2>\n\n\n\n<p>Installing ClamAV on a Linux server is straightforward and adds a dependable layer to your defense-in-depth strategy. Keep signatures fresh, scan the right paths, and log results. If you prefer a hands-off setup, consider a managed server from YouStable with ClamAV and security best practices pre-tuned for your workloads.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To install ClamAV on a Linux server, update your package index, install ClamAV and its daemon, update virus signatures with [&hellip;]<\/p>\n","protected":false},"author":13,"featured_media":15421,"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-12514","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-Install-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\/12514","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=12514"}],"version-history":[{"count":3,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/12514\/revisions"}],"predecessor-version":[{"id":15422,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/12514\/revisions\/15422"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media\/15421"}],"wp:attachment":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media?parent=12514"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/categories?post=12514"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/tags?post=12514"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}