跳到內容

NAS, Synology and Unraid

新手入門

用正確的資料夾、擁有者和重新啟動設定,在你的 NAS 上執行 HolyArrs。請先閱讀 安裝。

  • /config 要放在本機 volume 或儲存集區上。絕對不要放在網路共用資料夾。
  • 媒體放在同一個共用資料夾,裡面有 downloads、movies、tv 和 music。可以各自掛載,或為了 hardlink(硬連結)只掛載一次上層資料夾。請見 資料夾。

::tab[Synology]

  1. 在 File Station 建立 docker/holyarrs/config。
  2. 建立一個共用資料夾 media,裡面有 downloads、movies、tv 和 music。
  3. 在 Container Manager 開啟 Project > Create(專案 > 建立),貼上 安裝 裡的 Compose 檔。
  4. 把 volume 設為 /volume1/docker/holyarrs/config:/config,接著是 /volume1/media/movies:/movies、/volume1/media/tv:/tv、/volume1/media/music:/music 和 /volume1/media/downloads:/downloads。
  5. 把 PUID 和 PGID 設為你的使用者,通常是 1026 和 100。可以透過 SSH 用 id <user> 確認。
  6. 給那個使用者 media 的讀取和寫入權限:Control Panel > Shared Folder > Edit > Permissions。
  7. 勾選 Enable auto-restart。
  8. 開啟 http://your-server:6262。你應該會看到首次執行的精靈。把 /movies、/tv 和 /music 新增為媒體庫資料夾。

::tab[Unraid]

目前還沒有 Community Applications 範本,所以要手動新增 container。

  1. 在 Docker 分頁,用 HolyArrs image 新增一個 container。
  2. 對應 port 6262。
  3. 把 /config 對應到儲存集區路徑,例如 /mnt/<pool>/appdata/holyarrs。<pool> 是你的集區名稱。不要用 /mnt/user/appdata。
  4. 把你的媒體資料夾對應到 /movies、/tv、/music 和 /downloads,使用磁碟或集區路徑,例如 /mnt/<pool>/media/movies:/movies、/mnt/<pool>/media/tv:/tv、/mnt/<pool>/media/music:/music 和 /mnt/<pool>/media/downloads:/downloads。
  5. 設定 PUID=99、PGID=100(Unraid 的 nobody:users)和 UMASK=022。
  6. 為 container 開啟自動啟動,讓它自己重新啟動。
  7. 開啟 http://your-server:6262。你應該會看到首次執行的精靈。

::tab[QNAP]

  1. 建立 Container/holyarrs/config 和一個 media 共用資料夾,裡面有 downloads、movies、tv 和 music。
  2. 在 Container Station 開啟 Applications > Create(應用程式 > 建立),貼上 Compose 檔。
  3. 使用 /share/Container/holyarrs/config:/config,接著是 /share/media/movies:/movies、/share/media/tv:/tv、/share/media/music:/music 和 /share/media/downloads:/downloads。
  4. 把 PUID 和 PGID 設為 media 共用資料夾的擁有者。
  5. 把重新啟動原則設為 unless-stopped。
  6. 開啟 http://your-server:6262。你應該會看到首次執行的精靈。

::tab[TrueNAS SCALE]

  1. 建立 2 個 dataset:apps/holyarrs-config 和 media,並在 media 裡建立 downloads、movies、tv 和 music 資料夾。
  2. 在 Apps 中,用 Compose 檔以 YAML 新增自訂 App。
  3. 使用 /mnt/<pool>/apps/holyarrs-config:/config,接著是 /mnt/<pool>/media/movies:/movies、/mnt/<pool>/media/tv:/tv、/mnt/<pool>/media/music:/music 和 /mnt/<pool>/media/downloads:/downloads。
  4. 把 PUID 和 PGID 設為 dataset 的擁有者,通常是 568。在 dataset 的 ACL 中給那個使用者寫入權限。
  5. 把重新啟動原則設為 unless-stopped。
  6. 開啟 http://your-server:6262。你應該會看到首次執行的精靈。

每一種 NAS 都一樣:在 NAS 的權限畫面,給 PUID 使用者媒體資料夾的讀取和寫入權限;設定資料夾 HolyArrs 會自己處理。為 container 開啟自動重新啟動(Docker 的 unless-stopped 原則)。

hardlink 不佔額外空間,而且瞬間就完成。要用它的話,把那一個媒體資料夾掛載進去,取代原本的四個,並讓你的下載器用同一個路徑掛載同一個資料夾。請見 媒體資料夾。

把 /movies、/tv、/music 和 /downloads 一個一個掛載也可以運作,但每次匯入都會變成完整複製。每個掛載在 container 裡都是自己的檔案系統,而 hardlink 無法跨檔案系統。同一個上層資料夾下的不同共用資料夾或 dataset 也一樣會複製。當 HolyArrs 必須複製時,Settings > Library folders(設定 > 媒體庫資料夾)會警告你。

這些工作會喚醒媒體磁碟。可以在 Schedules(排程)頁面變更它們的執行頻率。

工作 它讀取什麼
Rescan the Library 每個媒體庫資料夾。最容易喚醒磁碟。
Check Library folders 每個資料夾的詳細資料和可用空間。寫入與 hardlink 測試只會在啟動時、Run now 時和資料夾變更時執行。
Look for missing subtitles、Look for better subtitles 每部影片旁邊的資料夾。
  • 把 /config 和下載資料夾放在 SSD 或快取集區上。
  • 存放 /config 的磁碟要保留 1 GB 可用空間。低於這個數字就會出現健康狀態警告。
  • 在 Unraid 上,Cache Directories 外掛程式會把資料夾清單留在記憶體中,所以掃描時不會動到磁碟。
  • 匯入、新增和刪除發生時,會動到它們所處理的那顆磁碟。
  • 把重新掃描設為每 7 天一次或關閉。這樣你手動新增的檔案,只有在你對 Rescan the Library 按下 Run now 時才會被找到。
  • 做種中的 torrent 會讀取它的檔案。如果它是以 hardlink 連到你的媒體庫,那顆磁碟在做種結束之前都會一直醒著。
症狀 原因 解決方式
無法啟動,訊息提到 FUSE 路徑、網路共用資料夾或 Unraid user share /config 不在本機磁碟上(在 Unraid 上,是指向 /mnt/user) 把 /config 移到本機磁碟或集區路徑,例如 /mnt/<pool>/appdata/holyarrs。
重新啟動或還原後一直停著 自動重新啟動是關閉的 開啟它,並啟動 container。
匯入因權限錯誤而失敗 PUID 使用者無法寫入媒體 在 NAS 的權限畫面給它讀取和寫入權限(Synology 上:Control Panel > Shared Folder > Edit > Permissions)。
匯入是複製而不是 hardlink 下載和媒體庫在不同的掛載或磁碟上 在 HolyArrs 和下載器中,只掛載一次同一個共用資料夾。

更多解決方式:疑難排解。

為什麼 HolyArrs 會拒絕某些設定路徑

HolyArrs 把資料庫放在 /config。網路共用資料夾和 FUSE 路徑可能損壞它們,所以 HolyArrs 在這類路徑上會拒絕啟動,並說明原因。

在 Unraid 上,/mnt/user 是 FUSE 路徑。請使用集區路徑,或把 appdata 設為 Exclusive:在 Settings > Global Share Settings 中開啟 Permit exclusive shares,然後把 Shares > appdata 的主要儲存空間設為某一個集區,次要儲存空間設為無。

指向不存在的集區的 /config 路徑,會落在記憶體裡,重新開機就消失。HolyArrs 對這種情況也會拒絕。媒體也請避開 /mnt/user;跨它建立的 hardlink 可能會失敗。

為什麼自動重新啟動很重要

在 App 內重新啟動、安全模式和還原 backup,都會讓 HolyArrs 停止,並期待 Docker 再把它啟動起來。沒有自動重新啟動的話,它就會一直停著。請見 功能區塊與安全模式。

Port 與更新
  • 只把 port 6262 對應到你的家用網路。要對外開放給任何人之前,先閱讀 安全基本原則。
  • 要更新的話,拉取新的 image 並重新建立 container。你的資料會留在 /config。請見 更新。

HolyArrs 是免費的。如果它幫你省下了時間,歡迎在 GitHub 上給顆星、贊助專案,或請我喝杯咖啡。