ข้ามไปยังเนื้อหา

NAS, Synology และ Unraid

มือใหม่

รัน HolyArrs บน NAS ของคุณด้วยโฟลเดอร์ เจ้าของไฟล์ และการตั้งค่ารีสตาร์ตที่ถูกต้อง อ่าน การติดตั้ง ก่อน

  • /config ต้องอยู่บน volume หรือ pool ในเครื่อง ห้ามอยู่บน network share
  • สื่อวางในโฟลเดอร์ที่แชร์ร่วมกันหนึ่งโฟลเดอร์ โดยมี 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 ตรวจด้วย id <user> ผ่าน SSH
  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 เพิ่ม container ด้วย image ของ HolyArrs
  2. แมป port 6262
  3. แมป /config ไปยังพาธบน pool เช่น /mnt/<pool>/appdata/holyarrs <pool> คือชื่อ pool ของคุณ ห้ามใช้ /mnt/user/appdata
  4. แมปโฟลเดอร์สื่อของคุณไปยัง /movies, /tv, /music และ /downloads โดยใช้พาธของดิสก์หรือ pool เช่น /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 (nobody:users ของ Unraid) และ UMASK=022
  6. เปิด auto-start ให้ 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 โดยมีโฟลเดอร์ downloads, movies, tv และ music อยู่ข้างใน media
  2. ใน Apps เพิ่ม custom app จาก YAML ด้วยไฟล์ Compose
  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 ให้ผู้ใช้นั้นมีสิทธิ์เขียนใน ACL ของ dataset
  5. ตั้งนโยบายรีสตาร์ตเป็น unless-stopped
  6. เปิด http://your-server:6262 จะเห็นวิซาร์ดการเปิดใช้ครั้งแรก

NAS ทุกรุ่น: ให้ผู้ใช้ PUID มีสิทธิ์อ่านและเขียนบนโฟลเดอร์สื่อในหน้าจอสิทธิ์ของ NAS ส่วนโฟลเดอร์คอนฟิก HolyArrs จัดการเอง เปิด auto-restart ให้ container (นโยบาย unless-stopped ของ Docker)

ถ้าต้องการ hardlink ซึ่งไม่กินพื้นที่เพิ่มและเสร็จทันที ให้เมานต์โฟลเดอร์สื่อโฟลเดอร์เดียวแทนทั้งสี่ และให้ตัวดาวน์โหลดใช้การเมานต์เดียวกันที่พาธเดียวกัน ดู โฟลเดอร์สื่อ

การเมานต์ /movies, /tv, /music และ /downloads ทีละตัวใช้ได้ แต่ทุกการนำเข้าจะกลายเป็นการคัดลอกเต็มไฟล์ เพราะแต่ละ mount เป็นระบบไฟล์ของตัวเองภายใน container และ hardlink ข้ามระบบไฟล์ไม่ได้ share หรือ dataset แยกกันใต้โฟลเดอร์แม่เดียวกันก็คัดลอกเช่นกัน Settings > Library folders (การตั้งค่า > โฟลเดอร์คลัง) จะเตือนเมื่อ HolyArrs ต้องคัดลอก

งานเหล่านี้ปลุกดิสก์สื่อ เปลี่ยนความถี่ได้ที่หน้า Schedules (ตารางเวลา)

งาน อ่านอะไร
Rescan the Library (สแกนคลังใหม่) ทุกโฟลเดอร์คลัง ปลุกดิสก์มากที่สุด
Check Library folders (ตรวจโฟลเดอร์คลัง) รายละเอียดและพื้นที่ว่างของแต่ละโฟลเดอร์ การทดสอบเขียนและ hardlink รันเฉพาะตอนเริ่ม ตอน Run now (รันทันที) และเมื่อโฟลเดอร์เปลี่ยน
Look for missing subtitles (หาคำบรรยายที่ขาด), Look for better subtitles (หาคำบรรยายที่ดีกว่า) โฟลเดอร์ข้างวิดีโอแต่ละไฟล์
  • วาง /config และโฟลเดอร์ดาวน์โหลดไว้บน SSD หรือ cache pool
  • เหลือพื้นที่ว่าง 1 GB บนดิสก์ที่เก็บ /config ต่ำกว่านั้นจะมีคำเตือนสุขภาพระบบ
  • บน Unraid ปลั๊กอิน Cache Directories เก็บรายการโฟลเดอร์ไว้ในหน่วยความจำ การสแกนจึงไม่แตะดิสก์
  • การนำเข้า การเพิ่ม และการลบจะแตะดิสก์ที่เกี่ยวข้อง ตอนที่เกิดขึ้น
  • ตั้งการสแกนใหม่เป็นทุก 7 วันหรือปิดไว้ ไฟล์ที่คุณเพิ่มเองจะถูกพบก็ต่อเมื่อกด Run now ที่ Rescan the Library
  • Torrent ที่กำลัง seed จะอ่านไฟล์ของมัน ถ้ามัน hardlink เข้าคลังของคุณ ดิสก์นั้นจะตื่นอยู่จนกว่าจะหยุด seed
อาการ สาเหตุ วิธีแก้
เริ่มไม่ได้ และบอกพาธ FUSE, network share หรือ user share ของ Unraid /config ไม่ได้อยู่บนดิสก์ในเครื่อง (บน Unraid คือชี้ไปที่ /mnt/user) ย้าย /config ไปที่ดิสก์ในเครื่องหรือพาธบน pool เช่น /mnt/<pool>/appdata/holyarrs
หยุดอยู่หลังรีสตาร์ตหรือกู้คืน auto-restart ปิดอยู่ เปิดแล้วเริ่ม container
การนำเข้าล้มเหลวด้วยข้อผิดพลาดเรื่องสิทธิ์ ผู้ใช้ PUID เขียนลงสื่อไม่ได้ ให้สิทธิ์อ่านและเขียนในหน้าจอสิทธิ์ของ NAS (บน Synology: Control Panel > Shared Folder > Edit > Permissions)
การนำเข้าเป็นสำเนา ไม่ใช่ hardlink งานดาวน์โหลดและคลังอยู่คนละ mount หรือคนละดิสก์ เมานต์โฟลเดอร์แชร์โฟลเดอร์เดียวครั้งเดียว ทั้งใน HolyArrs และตัวดาวน์โหลด

วิธีแก้เพิ่มเติม: การแก้ปัญหา

ทำไม HolyArrs ปฏิเสธพาธคอนฟิกบางแบบ

HolyArrs เก็บฐานข้อมูลไว้ใน /config network share และพาธ FUSE อาจทำให้ฐานข้อมูลเสียหาย HolyArrs จึงไม่ยอมเริ่มบนพาธเหล่านั้นและบอกเหตุผล

บน Unraid /mnt/user เป็นพาธ FUSE ให้ใช้พาธบน pool หรือทำ appdata ให้เป็น Exclusive: เปิด Permit exclusive shares ใน Settings > Global Share Settings แล้วตั้ง Shares > appdata ให้ใช้พื้นที่หลักบน pool เดียว และพื้นที่รองเป็นไม่มี

พาธ /config บน pool ที่ไม่มีอยู่จะไปอยู่ในหน่วยความจำและหายเมื่อรีบูต HolyArrs ปฏิเสธกรณีนี้ด้วย หลีกเลี่ยง /mnt/user สำหรับสื่อเช่นกัน hardlink ที่ข้ามมันอาจล้มเหลว

ทำไม auto-restart จึงสำคัญ

การรีสตาร์ตในแอป เซฟโหมด และการกู้คืน Backup ล้วนหยุด HolyArrs และคาดว่า Docker จะเริ่มให้ใหม่ ถ้าไม่มี auto-restart มันจะหยุดอยู่ ดู ส่วนต่าง ๆ และเซฟโหมด

Port และการอัปเดต
  • แมป port 6262 เฉพาะเครือข่ายในบ้านของคุณ อ่าน พื้นฐานด้านความปลอดภัย ก่อนเปิดให้คนนอกใช้
  • ถ้าจะอัปเดต ให้ดึง image ใหม่แล้วสร้าง container ใหม่ ข้อมูลของคุณยังอยู่ใน /config ดู การอัปเดต

HolyArrs ใช้ได้ฟรี ถ้าช่วยประหยัดเวลาคุณได้ กดดาวบน GitHub, สนับสนุนโปรเจกต์ หรือ เลี้ยงกาแฟผู้พัฒนา