在 Debian 系統中,你可以使用 systemd 定時器來實現定時清理緩存。以下是具體步驟:
創建一個清理緩存的 systemd 服務文件:
首先,創建一個新的 systemd 服務文件,用于定義清理緩存的任務。
sudo nano /etc/systemd/system/clear-cache.service
在這個文件中添加以下內容:
[Unit]
Description=Clear system cache
[Service]
Type=oneshot
ExecStart=/usr/bin/sync; /usr/bin/echo 3 > /proc/sys/vm/drop_caches
這個服務文件定義了一個名為 clear-cache.service 的服務,它會在啟動時執行 sync 命令來同步文件系統緩存,然后通過向 /proc/sys/vm/drop_caches 文件寫入 3 來清理頁面緩存、目錄項緩存和 inode 緩存。
創建一個 systemd 定時器文件:
接下來,創建一個新的 systemd 定時器文件,用于定義定時任務的執行時間。
sudo nano /etc/systemd/system/clear-cache.timer
在這個文件中添加以下內容:
[Unit]
Description=Run clear-cache.service every hour
[Timer]
OnCalendar=*-*-* *:00:00
Persistent=true
[Install]
WantedBy=timers.target
這個定時器文件定義了一個名為 clear-cache.timer 的定時器,它會在每天的整點執行 clear-cache.service 服務。你可以根據需要調整 OnCalendar 行來設置不同的執行時間。
啟用并啟動定時器:
保存并關閉文件后,使用以下命令啟用并啟動定時器:
sudo systemctl enable --now clear-cache.timer
這將啟用定時器并立即啟動它。
檢查定時器狀態:
你可以使用以下命令來檢查定時器的狀態:
sudo systemctl list-timers --all
或者查看特定定時器的詳細信息:
sudo systemctl status clear-cache.timer
通過以上步驟,你就可以在 Debian 系統中設置一個定時器來定期清理緩存了。