使用 Systemd 定時器可靠地執行 ownCloud 後台作業
將按需作業運行替換為 systemd 定時器,該定時器每 15 分鐘執行一次 ownCloud 支援的 occ system:cron 命令。
若要從兩塊空白磁碟建立 Debian 12 軟體 RAID 1 映像,請安裝 RAID 12 mdadm,驗證裝置名稱是否準確,建立/dev/md0RAID 12 鏡像,並在陣列裝置上建置檔案系統。在本例中,`1`/dev/sdb和/dev/sdc`2` 是專用資料磁碟;請將其替換為您已驗證的裝置路徑。請勿在包含所需資料的磁碟上執行建立或格式化命令。
此步驟適用於建立新的資料卷,而非根鏡像或引導鏡像。 RAID 1 會保留鏡像副本,並在一個成員發生故障後繼續運行,但它無法防止資料被刪除、檔案系統損壞、被盜或第二個磁碟發生故障。請務必單獨備份。 Debian 的 Bookworm mdadm 手冊詳細記錄了以下使用的建立和元資料選項。
RAID 1 的容量受限於容量較小的成員。請使用至少與所需資料量一樣大的磁碟,最好是使用透過獨立連接埠連接的相同容量的硬碟。您可以像圖中所示使用整塊磁碟,也可以在每個磁碟上建立大小相同的分割區並鏡像這些分割區。具體選擇取決於您的分割方式和未來的儲存計畫;切勿將整塊磁碟成員與分割區成員混用。
首先列出設備和檔案系統:
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
sudo wipefs -n /dev/sdb /dev/sdc
lsblk顯示磁碟大小、分割區、檔案系統和掛載點。wipefs -n僅報告簽名,不會擦除簽名。請透過型號、序號、容量和掛載點確認兩個目標磁碟均為預期的未掛載磁碟。設備號碼可能會在硬體或啟動變更後發生變化,因此對於伺服器,請識別/dev/disk/by-id/路徑穩定的磁碟機並始終使用這些路徑。

常見誤解: RAID 1 並非將兩塊磁碟的容量合併成一個更大的磁碟區。它只是鏡像寫入操作,因此可用空間大致等於較小磁碟的容量。請立即檢查報告的容量,並依照鏡像容量進行規劃。
安裝 Debian 的 RAID 管理工具,然後建立一個雙裝置鏡像:
sudo apt update
sudo apt install mdadm
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
僅在再次檢查成員路徑後才回答確認提示。--level=1選擇鏡像,同時--raid-devices=2設定活動成員數。 Debian Bookwormmdadm預設對新陣列使用 1.2 版本元資料;僅在已驗證的啟動或相容性要求需要時才指定不同的元資料格式。該指令會將 RAID 元資料寫入選取的裝置。請將這些設備視為一次性設備,切勿假設現有檔案系統仍然可用。

建立操作會啟動同步,這可能需要很長時間,具體取決於磁碟大小和活動情況。這並不意味著兩個副本已完全同步。請使用以下命令檢查進度:
cat /proc/mdstat
sudo mdadm --detail /dev/md0
尋找raid1兩個預期成員,並確保[UU]陣列在兩個裝置都存在且完全啟動的情況下都已連接。重新同步運行時,/proc/mdstat系統會報告進度;如果可行,請避免在同步完成前進行大量寫入操作。確切的速度和持續時間取決於驅動器、控制器和工作負載,因此請勿根據其他機器的輸出推斷完成時間。

常見誤解:建立命令返回後,陣列設備並不意味著可以立即格式化。請先檢查/proc/mdstat並mdadm --detail確認成員清單與您的兩塊磁碟相符。
一旦/dev/md0陣列啟動且其成員正確,就在陣列設備上(而不是每個成員磁碟上)建立檔案系統,然後掛載它:
sudo mkfs.ext4 /dev/md0
sudo mkdir -p /srv/mirror
sudo mount /dev/md0 /srv/mirror
findmnt /srv/mirror
mkfs.ext4擦除目標上的資料。格式化/dev/md0會在邏輯鏡像上建立一個檔案系統,而單獨/dev/sdb格式化/dev/sdc則會繞過陣列。寫入檔案前,請確認findmnt已/dev/md0掛載到目標位置。/srv/mirror

為了幫助 Debian 在啟動時根據陣列的標識重新組裝陣列,請檢查產生的條目:
sudo mdadm --detail --scan
ARRAY將輸出中匹配的行新增到文件中,/etc/mdadm/mdadm.conf不要替換文件的其餘部分,然後重新建構 initramfs:
sudo nano /etc/mdadm/mdadm.conf
sudo update-initramfs -u -k all
Debian手冊中關於 mdadm 的指南也建議在更改此配置後更新 initramfs。若要實現自動掛載,請取得檔案系統 UUID 並新增對應的條目/etc/fstab:
sudo blkid /dev/md0
# Example format; replace the UUID with the value from blkid:
UUID=your-filesystem-uuid /srv/mirror ext4 defaults,nofail 0 2
請使用實際的 UUID,而不是範例佔位符。然後驗證文件並掛載配置:
sudo findmnt --verify
sudo mount -a
findmnt /srv/mirror
確認mdadm --detail /dev/md0報告顯示 RAID 等級為 1,兩位成員皆符合預期,且同步後狀況良好。確認/proc/mdstat報告顯示兩個設備,然後檢查是否findmnt /srv/mirror已從陣列掛載 ext4 檔案系統。規劃重新啟動後,在儲存重要資料之前,請重複執行陣列和掛載檢查。
RAID 1 可以在一個成員發生故障後保持磁碟區的可用性,但冗餘並非備份,也無法保證每個檔案都能恢復。請將版本化的備份保存在單獨的儲存裝置上,監控陣列狀態,並使用mdadm 的 Bookworm 手冊中記錄的裝置和復原步驟來取代發生故障的成員。本指南不涉及將現有的 Debian 根磁碟轉換為 RAID;這需要針對特定機器製定遷移和引導程式方案。
將按需作業運行替換為 systemd 定時器,該定時器每 15 分鐘執行一次 ownCloud 支援的 occ system:cron 命令。
透過 Apache、Nginx 或反向代理程式追蹤 WebDAV 請求,然後使用經過驗證的 PROPFIND 測試確認 ownCloud 同步功能正常。
透過設定其規範 URL 並從伺服器本身檢查 DNS、HTTPS 和反向代理路由,修復 Nextcloud 缺少出站位址警告的問題。
透過本機 Unix 套接字配置 APCu 和 Redis,以實現 Nextcloud 快取和檔案鎖定,並提供目前和舊版 Nextcloud 的步驟。
檢查 Nextcloud 的 cron 模式,修復其 systemd 服務和計時器,並驗證後台作業在啟動後以及每隔五分鐘運行一次。
啟用可靠的 Nextcloud 檔案鎖定,選擇適當的 Redis 或 Valkey 後端,並驗證警告是否清除,同時避免並發檔案變更的風險。
使用最新更新、HTTPS 和 HSTS、精確的反向代理信任以及針對公共伺服器的檢查,修復 Nextcloud 掃描中常見的錯誤。
為需要加密的儲存配置 Nextcloud SSE,保護加密金鑰,並在加密現有文件之前測量傳輸和 CPU 影響。
將 Nextcloud 的檔案搜尋連接到 Elasticsearch,索引文件內容,並選擇適合您的伺服器和安全需求的設定。
配置 Nextcloud 在規定的保留期後刪除已刪除的文件,可靠地安排後台作業,並避免執行清除所有使用者回收站的命令。