การแก้ปัญหา¶
FAQ สั้นๆ สำหรับตารางการแก้ปัญหาฝั่งโฮสต์ของ VM ผ่าน SSH ฉบับเต็ม (permission-denied, host-key verification, ตัวแปรเทมเพลตที่ขาดหายไป และอื่นๆ) ดู คู่มือการสำรองข้อมูล VM ผ่าน SSH บน GitHub
มีบางอย่างเชื่อมต่อไม่ถูกต้อง¶
เปิด /spike ในเว็บ UI การตรวจสอบการผสานรวมโฮสต์จะตรวจสอบทุกการเมานต์และ CLI (Docker socket, libvirt, restic, qemu-img, rclone) และรายงานส่วนที่ขาดหายไป เริ่มที่นี่ก่อนที่จะสันนิษฐานว่าเป็นข้อบกพร่อง: การเมานต์ที่ขาดหายไปหรือโฮสต์ที่เข้าถึงไม่ได้จะปรากฏขึ้นทันที
ฉันเข้าถึงเว็บ UI ไม่ได้¶
BombVault ให้บริการ HTTPS พร้อมใช้งานทันทีบนพอร์ต 3443 (ใบรับรองแบบ self-signed) ดังนั้นเปิด https://<your-unraid-ip>:3443 ยอมรับคำเตือนใบรับรองแบบ self-signed หรือวาง BombVault ไว้หลัง reverse proxy ด้วยใบรับรองของคุณเอง หากคุณรันด้วย HTTP_ONLY=true มันจะให้บริการ HTTP ธรรมดาบนพอร์ต 3000 แทน (มีไว้สำหรับใช้หลัง proxy ที่ terminate TLS)
ฉันทำ APP_KEY หาย¶
APP_KEY นำมาสร้างรหัสผ่านของรีพอสิทอรี restic หากไม่มีมัน (และไม่มีชุดกู้คืนคีย์เข้ารหัส) การสำรองข้อมูลที่เข้ารหัสไว้จะไม่สามารถกู้คืนได้ นี่คือเหตุผลที่แดชบอร์ดจ้ำจี้ให้คุณดาวน์โหลดชุดกู้คืน ดู Off-site & recovery สร้างคีย์ด้วย openssl rand -hex 32 แล้วเก็บไว้นอกเซิร์ฟเวอร์ก่อนที่คุณจะพึ่งพาการสำรองข้อมูลใดๆ
การสำรองข้อมูล VM เชื่อมต่อไม่ได้¶
การสำรองข้อมูล VM ติดต่อ libvirt ผ่าน SSH ไม่เคยผ่านการเมานต์
- ยืนยันว่า SSH ถูกเปิดใช้งานบนโฮสต์และคีย์สาธารณะของ BombVault ได้รับอนุญาตใน
/root/.ssh/authorized_keys(การตั้งค่า, การเชื่อมต่อ, SSH ของโฮสต์ แสดงคีย์และปุ่ม ทดสอบการเชื่อมต่อ) - บนเครือข่าย
br0.xที่กำหนดเอง ให้ตั้งLIBVIRT_HOSTเป็น LAN IP ของ Unraid ของคุณ (container ไม่สามารถเข้าถึงโฮสต์ผ่านhost.docker.internalที่นั่นได้) เปิดใช้งาน Settings, Docker, Host access to custom networks - หากคุณเปลี่ยนพอร์ต SSH ของ Unraid ให้ตั้ง
LIBVIRT_SSH_PORTให้ตรง - การวินิจฉัยทีละขั้นตอนฉบับเต็ม (การทดสอบการเข้าถึง, การกำหนดเส้นทาง VLAN,
Permission denied (publickey),Host key verification failed) อยู่ใน คู่มือการสำรองข้อมูล VM ผ่าน SSH
สแนปช็อต VM ขณะทำงานไม่ได้รัน¶
สแนปช็อตขณะทำงานต้องการ qemu guest agent ที่ติดตั้งใน VM และดิสก์อยู่บน /mnt/cache (หรือ /mnt/diskX) ไม่ใช่ /mnt/user บน VM ที่ปิดอยู่ ขณะทำงานจะย้อนกลับไปใช้แบบราบรื่นโดยอัตโนมัติ การสำรองข้อมูลแบบราบรื่นจะปิด VM, สำรองข้อมูลดิสก์ แล้วรีสตาร์ทมัน ดังนั้นจึงสอดคล้องเสมอ
การสำรองข้อมูลล้มเหลวด้วย "repository is already locked"¶
โดยปกติแล้วนี่คือล็อก restic ที่กำพร้าที่ถูกทิ้งไว้เมื่อ container ถูกอัปเดตหรือรีสตาร์ทกลางการทำงาน BombVault ตรวจจับล็อกที่กำพร้าอย่างพิสูจน์ได้, ล้างมันโดยบังคับ และลองใหม่หนึ่งครั้งโดยอัตโนมัติ หากยังคงอยู่ ให้ใช้ การตั้งค่า, ความสมบูรณ์, ปลดล็อก สำหรับโดเมนที่ได้รับผลกระทบเพื่อล้างล็อกที่ค้างด้วยมือ ปัญหาที่แท้จริงจะยังคงปรากฏขึ้นแทนที่จะถูกซ่อนไว้ หลังรีสตาร์ต BombVault จะรอจนกว่าล็อกนั้นไม่ได้ถูกต่ออายุมาสิบนาที เพราะ restic ที่ยังทำงานอยู่ เช่นใน BombVault ตัวที่สองบนรีโพซิทอรีเดียวกัน จะต่ออายุล็อกของตัวเองทุกห้านาที
สำเนานอกสถานที่ของฉันไม่เกิดขึ้นหลังการสำรองข้อมูล¶
การจำลองข้อมูลนอกสถานที่เป็นแบบทำเท่าที่ทำได้โดยการออกแบบ ดังนั้นการสะดุดที่นอกสถานที่จึงไม่เคยทำให้การสำรองข้อมูลในเครื่องล้มเหลว ตรวจสอบตารางเวลานอกสถานที่ของโดเมนนั้น (การตั้งค่า, กำหนดการ): ตารางเวลาที่ว่างเปล่าจะจำลองหลังการสำรองข้อมูลในเครื่องทุกครั้ง ในขณะที่จังหวะจะส่งไม่บ่อยนัก ใช้ จำลองตอนนี้ บนหน้านอกสถานที่สำหรับการรันตามต้องการ และเฝ้าดูตัวบ่งชี้การจำลองข้อมูลบนแดชบอร์ด
การกู้คืนถูกยกเลิกก่อนที่จะเริ่ม¶
ก่อนที่จะมีการหยุดหรือลบอะไร การกู้คืนจะรันการตรวจสอบความขัดแย้งก่อนเริ่ม: มันตรวจสอบว่า IP แบบสแตติกและพอร์ตโฮสต์ที่เผยแพร่ของ container ว่างอยู่ หาก container อื่นถือครองอันหนึ่งอยู่แล้ว มันจะยกเลิกพร้อมข้อความที่ชัดเจนและนำไปปฏิบัติได้แทนที่จะทิ้งการกู้คืนที่ทำค้างไว้ครึ่งทาง ปลดพอร์ตหรือ IP ที่ขัดแย้ง แล้วลองใหม่
การส่งออกแบบธรรมดาล้มเหลวแทนที่จะเขียนไฟล์¶
หากเปิดการเข้ารหัส age (การตั้งค่า) แต่ไม่ได้ตั้งผู้รับที่ถูกต้อง การส่งออกจะล้มเหลวพร้อมข้อผิดพลาดที่ชัดเจนแทนที่จะเขียนข้อความธรรมดา เพิ่มผู้รับที่ถูกต้อง (คีย์สาธารณะ age หรือคีย์สาธารณะ SSH) หรือปิดการเข้ารหัสหากคุณตั้งใจให้การส่งออกเป็นข้อความธรรมดา ดู Features
การดัมป์ฐานข้อมูลล้มเหลว¶
ดัมป์ที่ล้มเหลวไม่เคยทำให้การสำรองข้อมูลรอบตัวมันล้มเหลว มันถูกบันทึกเป็นการทำงานที่ล้มเหลวของตัวเอง และเหตุผลจะบอกว่าต้องแก้อะไร
- ถูกปฏิเสธการเข้าสู่ระบบ ดัมป์เข้าสู่ระบบด้วยตัวแปรรหัสผ่านของคอนเทนเนอร์เอง (
POSTGRES_PASSWORD,MARIADB_ROOT_PASSWORD,MYSQL_ROOT_PASSWORDหรือรุ่น_FILEของตัวแปรเหล่านี้) ตรวจสอบที่คอนเทนเนอร์ฐานข้อมูล ตัวแปร_FILEที่ชี้ไปยังความลับซึ่งผู้ใช้ของคอนเทนเนอร์เองอ่านไม่ได้ ก็ล้มเหลวแบบเดียวกัน - สิทธิ์ไม่พอ เมื่อรหัสผ่าน root เป็นแบบสุ่ม ดัมป์จะเข้าสู่ระบบได้เพียงในฐานะผู้ใช้ของแอป จึงได้เฉพาะฐานข้อมูลนั้นฐานเดียว และ MySQL 8.4 ขึ้นไปอาจปฏิเสธไปเลย ให้ตั้งรหัสผ่าน root จริงให้คอนเทนเนอร์ หรือปิดการดัมป์ของมัน
- ตารางระบบต้องอัปเกรด MariaDB จะปฏิเสธการดัมป์เมื่อตารางระบบของมันมาจากเวอร์ชันที่เก่ากว่า (ข้อผิดพลาด 1558) ให้เพิ่มตัวแปร
MARIADB_AUTO_UPGRADE=1แล้วรีสตาร์ทคอนเทนเนอร์ หรือรันmariadb-upgradeภายในคอนเทนเนอร์หนึ่งครั้ง - ไม่มีเครื่องมือดัมป์ อิมเมจแบบบางหรือที่สร้างเองซึ่งไม่มี
pg_dump,mysqldumpหรือmariadb-dumpจะดัมป์ไม่ได้ ให้ใช้อิมเมจทางการ หรือปิดการดัมป์ - ขีดจำกัดเวลา ดัมป์หนึ่งครั้งได้
DB_DUMP_MAX_HOURS(ค่าเริ่มต้น 6) การสำรองข้อมูลรอบตัวมันได้BACKUP_MAX_HOURSและดัมป์ที่หยุดคืบหน้าจะถูกตัดหลังจากBACKUP_STALL_HOURSกรณีหลังมักเกิดจากล็อกที่แอปพลิเคชันถืออยู่ ให้เพิ่มขีดจำกัดที่ทำงาน หรือดัมป์ตอนที่แอปพลิเคชันว่าง - คอนเทนเนอร์ถูกพักหรือกำลังรีสตาร์ท ดัมป์คุยกับเซิร์ฟเวอร์ที่กำลังทำงาน ถ้าคอนเทนเนอร์รีสตาร์ทซ้ำๆ บันทึกของมันเองจะบอกเหตุผล
- ลบดัมป์ที่เสียหายไม่ได้ ดัมป์ที่ BombVault ทำไม่สำเร็จจะถูกลบทิ้ง เมื่อการลบนั้นล้มเหลว ดัมป์จะค้างอยู่ในรายการพร้อมเครื่องหมายว่าเสียหาย และคุณลบมันได้จากตรงนั้น
การนำเข้าล้มเหลว¶
การนำเข้าจะหยุดคอนเทนเนอร์ ย้ายโฟลเดอร์ข้อมูลไปไว้ข้างๆ แล้วให้อิมเมจสร้างโฟลเดอร์เปล่าขึ้นแทนที่ ถ้าขั้นตอนก่อนการนำเข้าจริงล้มเหลว โฟลเดอร์เดิมจะถูกวางกลับเองโดยอัตโนมัติ ถ้าการนำเข้าเองล้มเหลว คอนเทนเนอร์จะเหลือโฟลเดอร์ใหม่ไว้ ส่วนโฟลเดอร์เดิมจะอยู่ข้างๆ ในชื่อ <โฟลเดอร์ข้อมูล>.bombvault-before-import-<เวลา> ข้อความแสดงข้อผิดพลาดของการทำงานจะบอกเส้นทางที่แน่นอน
วิธีวางกลับด้วยมือ: หยุดคอนเทนเนอร์ เปลี่ยนชื่อโฟลเดอร์ข้อมูลปัจจุบันให้พ้นทาง เปลี่ยนชื่อโฟลเดอร์ที่เก็บไว้กลับเป็นชื่อเดิม แล้วเริ่มคอนเทนเนอร์ บน Unraid ตัวจัดการไฟล์ในแท็บ Shares ทำสิ่งนี้ได้
การสำรองชุดข้อมูล ZFS ล้มเหลวหรือข้ามชุดข้อมูลไป¶
ทุกปัญหามีรหัสเหตุผลในวงเล็บเหลี่ยม และหน้า ชุดข้อมูล ZFS มีรายการทั้งหมดพร้อมวิธีแก้ สามกรณีที่พบบ่อยที่สุด:
snapshot-loop: สแนปช็อตไปไม่ถึง BombVault เพราะ Host Data ไม่ส่งต่อการเมานต์ใหม่ แก้ไขคอนเทนเนอร์ ตั้ง Access Mode ของ Host Data เป็น Read/Write - Slave แล้วรีสตาร์ต BombVaultkey-not-loaded: ชุดข้อมูลที่เข้ารหัสและยังไม่ได้โหลดคีย์จะถูกข้าม โหลดคีย์ด้วยzfs load-keyแล้วเมานต์ชุดข้อมูล การสำรองครั้งถัดไปจะรวมเข้าไปด้วยssh-auth: เซิร์ฟเวอร์ปฏิเสธคีย์ของ BombVault การ์ดการเชื่อมต่อในหน้า ZFS แสดงคำสั่งที่อนุญาตคีย์นี้ ให้รันหนึ่งครั้งบนเซิร์ฟเวอร์
รายการค้างอยู่ที่ "กำลังเรียนรู้ N/10"¶
การตรวจความผิดปกติส่วนใหญ่เริ่มหลังจากรายการสำรองข้อมูลสำเร็จ 10 ครั้ง และการนับจะเริ่มใหม่หลัง ทำเครื่องหมายว่าคาดไว้แล้ว และหลังจากการเลือกของรายการเปลี่ยนไป รายการที่ไม่มีกำหนดการจะไม่เรียนรู้ และคอนเทนเนอร์ที่ไม่มี appdata ก็ไม่มีอะไรให้เรียนรู้ ซึ่งป้ายของมันก็บอกไว้
การเก็บรักษาไม่ลบการสำรองข้อมูลเก่าของรายการหนึ่งอีกต่อไป¶
ความผิดปกติระดับวิกฤตที่เปิดอยู่กำลังยึดมันไว้: ต้นทางของรายการเกือบว่าง หดลงมาก หรือการสำรองข้อมูลครั้งหนึ่งบันทึกข้อมูลส่วนใหญ่ซ้ำใหม่ เปิดความผิดปกติจากป้ายที่รายการ ถ้าข้อมูลหายไปหรือถูกเข้ารหัส ให้กู้คืนจากการสำรองข้อมูลที่ดีล่าสุดที่ลิงก์ไว้ก่อน จากนั้นรับทราบความผิดปกติ หรือทำเครื่องหมายว่าคาดไว้แล้วถ้าคุณเป็นคนเปลี่ยนเอง แล้วการรันครั้งถัดไปจะล้างตามปกติ ตัวอย่างการเก็บรักษาจะทำเครื่องหมายรายการแบบนี้ว่าถูกเก็บไว้ สำหรับรายการ ZFS มีเพียงชุดข้อมูลที่ความผิดปกติระบุเท่านั้นที่เก็บข้อมูลสำรองเก่าไว้ ชุดข้อมูลอื่นในทรีจะถูกล้างตามปกติ
การล้างด้วยตนเองแจ้งว่าบางรายการถูกเก็บไว้¶
สาเหตุเดียวกัน: การล้างจะไม่แตะการสำรองข้อมูลเก่าของรายการที่มีความผิดปกติแบบนี้ และระบุชื่อรายการในข้อความ ส่วนที่เหลือจะถูกล้างตามปกติ
การนำเข้าประวัติแจ้งว่าอ่านรีโพสิทอรีไม่ได้¶
หลังอัปเดต BombVault จะอ่านขนาดของการสำรองข้อมูลก่อนหน้าจากแต่ละรีโพสิทอรีหนึ่งครั้ง รีโพสิทอรีที่เข้าถึงไม่ได้ในตอนนั้น เช่น ปลายทางนอกสถานที่ที่ล่มอยู่หรือแชร์ที่ยังไม่ได้เมานต์ จะแสดงในการ์ด ความผิดปกติ ที่ การตั้งค่า, ความสมบูรณ์ และจะลองใหม่วันละครั้ง ระหว่างนั้นรายการของมันจะเรียนรู้จากการสำรองข้อมูลใหม่
คำเตือนพื้นที่ดิสก์ไม่ตรงกับแดชบอร์ดของ Unraid¶
บนแชร์ผู้ใช้ของ Unraid (/mnt/user) พื้นที่ว่างเป็นของทั้งอาร์เรย์ ไม่ใช่ของดิสก์ลูกเดียว รีโพสิทอรีระยะไกลจะวัดได้ผ่าน rclone remote ที่รายงานพื้นที่ว่างเท่านั้น รีโพสิทอรี S3, B2, REST และ SFTP ไม่มีค่า และแสดงเป็นไม่ได้วัดในการ์ด ความผิดปกติ
ผู้ช่วย AI เชื่อมต่อไม่ได้¶
หน้า เซิร์ฟเวอร์ MCP อธิบายว่ารหัสสถานะและการปฏิเสธแต่ละแบบของปลายทาง MCP หมายถึงอะไร และควรทำอย่างไร
container รีสตาร์ทซ้ำๆ หรือดูไม่สมบูรณ์¶
BombVault รายงานสมบูรณ์/ไม่สมบูรณ์จาก /api/health ของตัวเอง เครื่องมือ auto-heal (เช่น Autoheal) สามารถรีสตาร์ทมันได้โดยอัตโนมัติหากเอนจินติดขัด ตรวจสอบบันทึกของ container และรายงาน /spike เพื่อหาสาเหตุที่แท้จริง
ยังติดขัดอยู่?¶
- อ่านหน้า Configuration และ Off-site & recovery ฉบับเต็ม
- ถามที่ กระทู้สนับสนุนของ Unraid
- เปิด GitHub issue