หลังจากอัปเดตหรือเปลี่ยนแปลงด้วยตนเอง คุณอาจเปิดหน้าภาพรวมผู้ดูแลระบบของ Nextcloud และเห็นข้อความ “ไฟล์บางไฟล์ไม่ผ่านการตรวจสอบความสมบูรณ์” คำเตือนนี้อาจทำให้ตกใจ แต่ไม่ได้ระบุข้อผิดพลาดทั่วไปเพียงอย่างเดียว Nextcloud ตรวจสอบว่าโค้ดเซิร์ฟเวอร์และแอปที่ติดตั้งตรงกับไฟล์ที่ลงนามไว้หรือไม่ ไฟล์ที่เปลี่ยนแปลงหรือหายไป ไฟล์ที่ไม่คาดคิด หรือปัญหาเกี่ยวกับลายเซ็นแอปอาจทำให้เกิดการแจ้งเตือน การสแกนใหม่จะรายงานสถานะปัจจุบัน แต่จะไม่ซ่อมแซมไฟล์
หน้าดาวน์โหลดอย่างเป็นทางการของ Nextcloud ระบุว่า Server 35.0.0 ซึ่งวางจำหน่ายเมื่อวันที่ 16 กันยายน 2026 เป็นเวอร์ชันล่าสุด ณ เวลาที่เขียนบทความนี้ เอกสารการดูแลระบบในปัจจุบันยังคงแนะนำให้ผู้ดูแลระบบตรวจสอบรายงานไฟล์ที่ไม่ถูกต้อง แก้ไขสาเหตุเฉพาะ และสแกนอีกครั้ง ขั้นตอนด้านล่างนี้เป็นไปตามกระบวนการที่ใช้กันมาอย่างยาวนานนั้น ข้อความในเมนูอาจแตกต่างกันไปตามเวอร์ชันหรือแพ็กเกจโฮสติ้ง
1. อ่านรายงานไฟล์ที่ไม่ถูกต้องก่อนทำการเปลี่ยนแปลงใดๆ
ลงชื่อเข้าใช้ในฐานะผู้ดูแลระบบและเปิดการตั้งค่าการดูแลระบบ > ภาพรวมในคำเตือนความสมบูรณ์ ให้เลือกรายการไฟล์ที่ไม่ถูกต้อง… (ป้ายกำกับอาจแตกต่างกันเล็กน้อย) บันทึกหรือคัดลอกรายงานไปยังที่ที่ปลอดภัยเพื่อให้คุณสามารถเปรียบเทียบได้หลังจากการซ่อมแซม รายงานจะระบุแอปหรือพื้นที่หลักและแสดงรายการเงื่อนไขต่างๆ เช่นINVALID_HASH, MISSING_FILE, EXTRA_FILE, EXCEPTIONและ
สำรองข้อมูลการตั้งค่า Nextcloud ฐานข้อมูล และโค้ดแอปพลิเคชันที่กำหนดเองทั้งหมดก่อนที่จะแทนที่ไฟล์เซิร์ฟเวอร์ อย่าแก้ไขsignature.jsonสร้างลายเซ็นทดแทนเพื่อปิดเสียงเตือน หรือลบไฟล์เพียงเพราะชื่อไฟล์ปรากฏในรายงาน การตรวจสอบนี้ช่วยปกป้องความถูกต้องของโค้ด และยังสามารถเปิดเผยไฟล์ที่ไม่คาดคิดซึ่งควรได้รับการตรวจสอบเพิ่มเติมได้
2. จับคู่ประเภทของข้อผิดพลาดกับวิธีการแก้ไขที่ถูกต้อง
| การบันทึกรายงาน | มันหมายความว่าอย่างไร | ดำเนินการต่อไปอย่างปลอดภัย |
|---|
INVALID_HASH | เนื้อหาของไฟล์ไม่ตรงกับเวอร์ชันที่ลงนามไว้ | ตรวจสอบว่าเป็นโค้ดหลักหรือไฟล์แอปพลิเคชัน จากนั้นกู้คืนไฟล์นั้นจากเวอร์ชันที่เชื่อถือได้หรือแพ็กเกจแอปพลิเคชันที่ตรงกัน |
MISSING_FILE | ไฟล์ที่คาดว่าจะพบตามลายเซ็นนั้นหายไป | กู้คืนไฟล์ที่หายไปจากแพ็กเกจทางการที่ตรงกัน หรือติดตั้ง/อัปเดตแอปที่ได้รับผลกระทบใหม่ |
EXTRA_FILE | มีไฟล์อยู่ แต่ไฟล์นั้นไม่ได้เป็นส่วนหนึ่งของชุดไฟล์ที่ลงนามแล้ว | ระบุว่าใครเป็นผู้เพิ่มไฟล์นั้นและด้วยเหตุผลใด ย้ายไฟล์นั้นออกไปนอกไดเร็กทอรีโค้ดของ Nextcloud หรือลบออกหลังจากตรวจสอบแล้วว่าไม่จำเป็น |
EXCEPTION | ไม่สามารถตรวจสอบลายเซ็นได้ เช่น เนื่องจากข้อมูลลายเซ็นไม่มีอยู่หรือไม่ถูกต้อง | ใช้แอปเวอร์ชันที่เข้ากันได้และเชื่อถือได้ หรือติดต่อผู้ดูแลแอปนั้น อย่าแก้ไขไฟล์ลายเซ็นของแอป |
ป้ายกำกับเหล่านี้เป็นเพียงเบาะแสในการวินิจฉัย ไม่ใช่หลักฐานการโจมตีหรือหลักฐานว่าการติดตั้งปลอดภัย การแก้ไขในเครื่องของนักพัฒนา ไฟล์สำรองที่คัดลอกมา การติดตั้งที่ไม่สมบูรณ์ และโค้ดที่ไม่ได้รับอนุญาต อาจทำให้ผลลัพธ์ที่ได้แตกต่างกัน หากคุณไม่สามารถอธิบายไฟล์ PHP ที่ไม่คาดคิดหรือไฟล์หลักที่เปลี่ยนแปลงไปได้ ให้เก็บรักษารายงานไว้และตรวจสอบก่อนที่จะลบหรือเขียนทับ
3. กู้คืนไฟล์หลักจากเวอร์ชัน Nextcloud ที่แน่นอน
หากรายงานระบุชื่อไฟล์ภายใต้coreเช่นindex.phpหรือversion.phpให้ตรวจสอบก่อนว่าการอัปเกรดหยุดชะงักกลางคันหรือไม่ หรือกระบวนการปรับใช้ได้เปลี่ยนแปลงโค้ดหรือไม่ ยืนยันเวอร์ชันที่ติดตั้งในภาพรวมผู้ดูแลระบบหรือจากบันทึกการปรับใช้ตามปกติของคุณ อย่าคัดลอกไฟล์จากเวอร์ชัน Nextcloud อื่น เนื่องจากแฮชของไฟล์จะไม่ตรงกับเวอร์ชันที่ติดตั้งบนเซิร์ฟเวอร์
หากเป็นไปได้ ให้ใช้โปรแกรมอัปเดตที่รองรับเพื่อทำการอัปเกรดที่หยุดชะงักให้เสร็จสมบูรณ์ หากคุณจำเป็นต้องกู้คืนไฟล์ด้วยตนเอง ให้ดาวน์โหลดไฟล์เก็บถาวรเซิร์ฟเวอร์ที่ตรงกันจากหน้าดาวน์โหลดอย่างเป็นทางการของ Nextcloud ตรวจสอบไฟล์เก็บถาวรโดยใช้ checksum หรือลายเซ็น PGP ที่เผยแพร่ และแทนที่เฉพาะไฟล์โค้ดแอปพลิเคชันที่ได้รับผลกระทบตามคำแนะนำในการอัปเกรดของ Nextcloud เก็บรักษาconfig/ไดเร็กทอรีข้อมูล และแอปหรือธีมที่ดูแลรักษาไว้ในเครื่อง ปฏิบัติตามขั้นตอนการสำรองข้อมูลและโหมดการบำรุงรักษาสำหรับวิธีการติดตั้งของคุณ Docker, Snap, อุปกรณ์ และการโฮสติ้งแบบจัดการอาจต้องมีกระบวนการอัปเดตของตนเอง
คู่มือตรวจสอบความสมบูรณ์ของ Nextcloud ใช้หลักการเดียวกันสำหรับแฮชหลักที่ไม่ถูกต้อง: กู้คืนไฟล์ที่ถูกต้อง จากนั้นสแกนใหม่ หากถ่ายโอนไฟล์ผ่าน FTP คู่มือจะเตือนเป็นพิเศษให้ใช้โหมดการถ่ายโอนแบบไบนารี หลีกเลี่ยงการเรียกใช้การอัปเดตโดยปิดใช้งานการตรวจสอบลายเซ็นเป็นทางลัด การติดตั้งไฟล์เก็บถาวรด้วยตนเองที่ยังไม่ได้รับการตรวจสอบอาจทำให้เกิดปัญหาด้านความสมบูรณ์และความปลอดภัยใหม่ได้
4. ตรวจสอบไฟล์เพิ่มเติมและการเปลี่ยนแปลงที่กำหนดเองอย่างละเอียดถี่ถ้วน
รายการEXTRA_FILEดังกล่าวอาจเป็นไฟล์ชั่วคราวที่เหลืออยู่ ไฟล์สำรองของตัวแก้ไข สคริปต์ที่กำหนดเอง หรือสิ่งที่คุณไม่รู้จัก ตรวจสอบเส้นทางแบบเต็ม เวลาที่สร้าง เจ้าของ และประวัติการใช้งาน หากเป็นเครื่องมือที่กำหนดเองที่ถูกต้อง ให้ย้ายออกจากไดเร็กทอรีโค้ด Nextcloud ที่ให้บริการ และเปิดเผยผ่านแอปที่รองรับหรือบริการแยกต่างหากตามความเหมาะสม หากเป็นไฟล์สำรองที่ล้าสมัย ให้ลบออกหลังจากเก็บรักษาข้อมูลที่คุณต้องการแล้วเท่านั้น หากไฟล์ปฏิบัติการหรือไฟล์ PHP ที่ไม่สามารถอธิบายได้ปรากฏขึ้นเมื่อเร็ว ๆ นี้ ให้ดำเนินการตรวจสอบด้านความปลอดภัย: เก็บรักษาหลักฐาน ตรวจสอบบันทึกการเข้าถึงและเว็บเซิร์ฟเวอร์ และปฏิบัติตามกระบวนการตอบสนองต่อเหตุการณ์ของคุณ แทนที่จะลบคำเตือนนั้นทิ้งไป
สำหรับการINVALID_HASHแก้ไขไฟล์หลักที่คุณตั้งใจแก้ไข วิธีแก้ไขที่ยั่งยืนคือการกู้คืนไฟล์หลักที่ลงนามแล้ว และย้ายพฤติกรรมที่กำหนดเองไปยังแอป ธีม หรือจุดขยายที่ได้รับการสนับสนุนและมีเอกสารกำกับไว้ อย่าเปลี่ยนค่าแฮชที่คาดหวังหรือแก้ไขเมตาเดต้าของรุ่นเพื่อทำให้การตรวจสอบผ่าน การแจกจ่าย Nextcloud แบบกำหนดเองมีข้อควรพิจารณาเกี่ยวกับสาขาการเผยแพร่แยกต่างหากในเอกสารการลงนามโค้ด การเปลี่ยนการตั้งค่าดังกล่าวเป็นหน้าที่ของผู้ดูแลการแจกจ่ายแบบกำหนดเอง ไม่ใช่การซ่อมแซมตามปกติสำหรับการติดตั้งมาตรฐาน
5. ซ่อมแซมลายเซ็นแอปหรือไฟล์แอป
หากรายงานระบุชื่อไดเร็กทอรีแอป ให้ระบุ ID ของแอปและตรวจสอบว่าแอปได้รับการอัปเดต คัดลอกด้วยตนเอง หรือแก้ไขในเครื่องหรือไม่ ใช้ส่วนติดต่อแอปของ Nextcloud หรือวิธีการปรับใช้ของคุณเพื่ออัปเดตหรือติดตั้งเวอร์ชันที่เข้ากันได้จากแหล่งที่เชื่อถือได้ สำรองข้อมูลและการกำหนดค่าเฉพาะแอปก่อน และตรวจสอบความเข้ากันได้กับเวอร์ชันหลักของ Nextcloud ของคุณ สำหรับแอปที่กำหนดเองหรือพัฒนาภายใน ให้ขอแพ็กเกจที่ลงนามแล้วหรือเวอร์ชันที่แก้ไขแล้วจากผู้ดูแลแอป Nextcloud กำหนดให้มีการลงนามรหัสสำหรับแอปที่เผยแพร่ผ่าน App Store ของ Nextcloud ข้อกำหนดและการบังคับใช้การลงนามอาจแตกต่างกันไปสำหรับแอปประเภทอื่น ดังนั้นให้ใช้เอกสารสำหรับนักพัฒนาที่เกี่ยวข้องแทนที่จะสร้างลายเซ็นในเครื่องเอง
อย่าเขียนทับไดเร็กทอรีแอปด้วยไฟล์เก็บถาวรแบบสุ่ม หรือคัดลอกมาsignature.jsonจากเวอร์ชันอื่น ลายเซ็นต์อธิบายถึงโค้ดเฉพาะ การผสมไฟล์จากเวอร์ชันที่แตกต่างกันอาจทำให้เกิดข้อผิดพลาดเพิ่มเติม หากคุณต้องการลบแอป ให้ใช้กระบวนการจัดการแอปที่ได้รับการสนับสนุน และตรวจสอบให้แน่ใจว่าการลบจะไม่ทำให้ข้อมูลที่องค์กรของคุณต้องการสูญหาย
6. เรียกใช้การตรวจสอบความสมบูรณ์อีกครั้ง
เมื่อคุณซ่อมแซมไฟล์ที่รายงานเสร็จแล้ว ให้กลับไปที่การตั้งค่าการดูแลระบบ > ภาพรวมและเลือกสแกนใหม่…รอจนกว่าการสแกนจะเสร็จสิ้น จากนั้นเปิดรายการไฟล์ที่ไม่ถูกต้องอีกครั้ง หากคุณดูแลระบบเซิร์ฟเวอร์ผ่าน SSH เอกสาร Nextcloud 35 จะอธิบายคำสั่งเหล่านี้จากไดเร็กทอรีการติดตั้ง Nextcloud:
sudo -E -u www-data php occ integrity:check-core
sudo -E -u www-data php occ integrity:check-app calendar
sudo -E -u www-data php occ integrity:check-app --all
แทนที่calendarด้วยรหัสแอปที่แสดงในรายงานของคุณwww-dataบัญชีผู้ใช้จะเหมือนกันในระบบที่ใช้ Debian หรือ Ubuntu แต่ผู้ใช้เว็บเซิร์ฟเวอร์และไฟล์ปฏิบัติการ PHP อาจแตกต่างกัน ใช้บัญชีผู้ใช้และสภาพแวดล้อม PHP ที่ถูกต้องสำหรับระบบของคุณ สำหรับการติดตั้งในคอนเทนเนอร์ ให้เรียกใช้คำสั่งที่เทียบเท่ากันภายในคอนเทนเนอร์ที่เหมาะสม คู่มือ OCC ฉบับปัจจุบันระบุว่า การตรวจสอบแอปที่สำเร็จอาจไม่แสดงผลลัพธ์ใดๆ เว้นแต่จะร้องขอโหมดละเอียด ในขณะที่ความล้มเหลวจะแสดงรายละเอียด
วิธีตรวจสอบว่าคำเตือนได้รับการแก้ไขแล้วหรือไม่
เปิดหน้าภาพรวมผู้ดูแลระบบอีกครั้ง และตรวจสอบว่าคำเตือนเรื่องความสมบูรณ์ของไฟล์หายไปแล้วหลังจากการสแกนครั้งใหม่ หากยังคงอยู่ ให้เปรียบเทียบรายงานใหม่กับสำเนาที่คุณบันทึกไว้: หากเส้นทางเดียวกัน แสดงว่าไฟล์ต้นฉบับไม่ได้ถูกกู้คืน หรือใช้เวอร์ชันที่ไม่ถูกต้อง หากเส้นทางแตกต่างกัน อาจพบปัญหาอื่น เรียกใช้การตรวจสอบแกนหลักหรือแอปที่เกี่ยวข้องอีกครั้ง และตรวจสอบบันทึกของ Nextcloud เพื่อหาข้อผิดพลาดเกี่ยวกับลายเซ็น นอกจากนี้ โปรดตรวจสอบให้แน่ใจว่าอินสแตนซ์สามารถลงชื่อเข้าใช้ เรียกดูไฟล์ อัปโหลด และดาวน์โหลดได้ตามปกติ
หากคำเตือนปรากฏขึ้นอีกครั้งหลังจากการปรับใช้ ให้ตรวจสอบการทำงานอัตโนมัติ ปลั๊กอิน หรือสคริปต์การบำรุงรักษาด้วยตนเองที่เขียนทับไฟล์ภายในโครงสร้างโค้ดที่ลงนามแล้ว หากรายงานความสมบูรณ์ของโค้ดสะอาด แต่ผู้ใช้ยังคงเห็นข้อผิดพลาด ปัญหาเดิมอาจมีสาเหตุอื่นและควรแก้ไขปัญหานั้นแยกต่างหาก สำหรับ Nextcloud ที่ให้บริการโดยผู้ให้บริการ ให้ส่งรายงานที่ถูกต้องและเวอร์ชันที่ติดตั้งให้กับผู้ให้บริการ หลีกเลี่ยงการใส่รหัสผ่าน คีย์ส่วนตัว หรือเนื้อหาไฟล์ของผู้ใช้
สำหรับรายละเอียดเฉพาะเวอร์ชัน โปรดดูเอกสารเกี่ยวกับการลงนามรหัสและความสมบูรณ์ของ Nextcloud , เอกสารอ้างอิงการตรวจสอบความสมบูรณ์ของ OCC , คู่มือการอัปเดต Nextcloudและหน้าดาวน์โหลดอย่างเป็นทางการ