คู่มือการกู้คืนระบบอย่างปลอดภัยสำหรับ SLES Btrfs Snapper หลังจากการอัปเดตล้มเหลว:

การอัปเดต SLES ที่ล้มเหลวไม่ได้หมายความว่าคุณต้องติดตั้งเซิร์ฟเวอร์ใหม่เสมอไป ในการติดตั้ง SUSE Linux Enterprise Server มาตรฐานที่ใช้ Btrfs สำหรับระบบไฟล์รูทและเปิดใช้งาน Snapper คุณมักจะสามารถบูตสแนปช็อตก่อนการอัปเดต ทดสอบโดยไม่ต้องเปลี่ยนแปลงระบบปัจจุบัน แล้วทำให้สถานะที่ใช้งานได้ดีนั้นเป็นรูทที่สามารถเขียนได้ใหม่

การตัดสินใจที่สำคัญไม่ได้อยู่ที่ว่า “สแนปช็อตไหนใหม่ที่สุด?” แต่คือ “ฉันควรย้อนกลับไปมากแค่ไหน?” การย้อนกลับระบบ Snapper แบบเต็มรูปแบบนั้นเหมาะสมเมื่อการอัปเดตเปลี่ยนแปลงแพ็กเกจ ไลบรารี บริการ หรือไฟล์การกำหนดค่าหลายรายการ และเครื่องไม่ทำงานอย่างน่าเชื่อถืออีกต่อไป หากมีเพียงไฟล์การกำหนดค่าเดียวที่ผิดพลาด การกู้คืนไฟล์นั้นมักจะส่งผลกระทบน้อยกว่า คู่มือนี้อธิบายทั้งสองทางเลือกและเป็นไปตามแบบจำลองการกู้คืน SLES 15 SP7 ที่ SUSE ได้บันทึกไว้ว่าจะพร้อมใช้งานในเดือนตุลาคม 2026

เลือกวิธีการกู้คืนก่อนที่จะเปลี่ยนแปลงสิ่งใดๆ

สถานการณ์ตัวเลือกเริ่มต้นที่ดีที่สุดการแลกเปลี่ยนหลัก
เซิร์ฟเวอร์จะไม่สามารถบูตได้ตามปกติหลังจากการอัปเดตบูตสแนปช็อต Btrfs แบบอ่านอย่างเดียวจาก GRUB ทดสอบ แล้วจึงรันsnapper rollbackการกู้คืนแบบครอบคลุม แต่จะกู้คืนเฉพาะเนื้อหาหลักที่ถูกบันทึกสแนปช็อตไว้เท่านั้น
เซิร์ฟเวอร์เริ่มทำงานได้ แต่มีหลายแพ็กเกจหรือบริการที่ใช้งานไม่ได้พร้อมกันใช้ขั้นตอนการย้อนกลับแบบบูตและทดสอบแบบเดียวกันจำเป็นต้องรีบูตเครื่อง แต่จะช่วยหลีกเลี่ยงการคาดเดาว่าไฟล์ใดเป็นสาเหตุของปัญหา
ไฟล์หนึ่งที่ทราบแล้ว/etcได้รับความเสียหายตรวจสอบด้วยsnapper status/ diffจากนั้นใช้undochangeสำหรับไฟล์นั้นผลกระทบน้อยกว่า แต่ไม่เหมาะสำหรับการขนส่งพัสดุขนาดใหญ่
การย้าย Service Pack ล้มเหลวใช้สแนปช็อตก่อนการย้ายข้อมูล จากนั้นตรวจสอบที่เก็บข้อมูลและการลงทะเบียนผลิตภัณฑ์สถานะของที่เก็บข้อมูลมีความสำคัญหลังจากการกู้คืน
รูทไม่ใช่ Btrfs, Snapper ถูกปิดใช้งาน หรือโครงสร้างรูทที่รองรับมีการเปลี่ยนแปลงใช้ข้อมูลสำรอง สื่อกู้คืน การซ่อมแซมแพ็กเกจ หรือแผนการกู้คืนอื่นๆขั้นตอนการย้อนกลับสแนปช็อตมาตรฐานของ SLES ไม่สามารถใช้งานได้

SUSE แยก ความแตกต่าง ระหว่างการยกเลิกการเปลี่ยนแปลง และ การย้อนกลับระบบการยกเลิกการเปลี่ยนแปลงจะเปรียบเทียบสแนปช็อตและย้อนกลับการเปลี่ยนแปลงไฟล์ที่เลือก การย้อนกลับจะใช้สถานะสแนปช็อตเป็นพื้นฐานสำหรับรูทที่สามารถเขียนได้ใหม่ SUSE แนะนำเป็นพิเศษให้บูตสแนปช็อตเป้าหมายก่อนเมื่อทำการย้อนกลับระบบไฟล์รูท เนื่องจากจะทำให้คุณมีโอกาสตรวจสอบตัวเลือกก่อนที่จะยืนยัน โปรดดูคู่มือการดูแลระบบ SLES 15 SP7

ขั้นตอนที่ 1: ตรวจสอบว่าเซิร์ฟเวอร์นี้รองรับเส้นทางการย้อนกลับมาตรฐานของ Snapper หรือไม่

ก่อนเลือกสแนปช็อต ให้ยืนยันสามสิ่งต่อไปนี้: ระบบไฟล์รูทคือ Btrfs, Snapper มีการกำหนดค่าชื่อrootและรูท Btrfs อยู่บนอุปกรณ์เดียว SUSE ระบุในเอกสารว่ารองรับการย้อนกลับแบบบูตได้สำหรับโครงสร้างซับโวลุ่มรูทเริ่มต้น และกล่าวว่าระบบไฟล์รูท Btrfs ต้องรายงานว่ามีอุปกรณ์เพียงเครื่องเดียว

findmnt /
sudo snapper list-configs
sudo /sbin/btrfs filesystem show /
เทอร์มินัล SLES ตรวจสอบระบบไฟล์รูท Btrfs, การกำหนดค่ารูท Snapper และเค้าโครง Btrfs บนอุปกรณ์เดียว
ตรวจสอบระบบไฟล์รูทและการกำหนดค่า Snapper ก่อน โครงสร้าง SLES เริ่มต้นที่รองรับจะใช้ Btrfs สำหรับ /, การกำหนดค่า Snapper ที่ชื่อ root และระบบไฟล์รูทแบบอุปกรณ์เดียว

หากfindmnt /รายงานระบบไฟล์เช่น XFS หรือ Ext4 ให้หยุด: เวิร์กโฟลว์การบูตสแนปช็อต Btrfs ไม่พร้อมใช้งานสำหรับรูทนั้น หากsnapper list-configsไม่มีrootรายการใด ๆ อาจเป็นเพราะไม่ได้เปิดใช้งานสแนปช็อตรูทอัตโนมัติ นอกจากนี้ ให้หยุดหากbtrfs filesystem show /รายงานอุปกรณ์มากกว่าหนึ่งรายการ เอกสาร SLES 15 SP7 ไม่ได้ระบุว่าเค้าโครงดังกล่าวรองรับการย้อนกลับรูทที่บูตได้

ขั้นตอนที่ 2: ระบุสแนปช็อตจากช่วงเวลาก่อนการอัปเดตล้มเหลวทันที

แสดงรายการสแนปช็อตและตรวจสอบวันที่ ประเภท ความสัมพันธ์ก่อนสแนปช็อต และคำอธิบาย:

sudo snapper list
รายการสแนปช็อต SLES Snapper แสดงสแนปช็อตก่อนและหลังการอัปเดต zypper
รายการ Snapper สามารถแสดงคู่ภาพก่อนและหลังที่สร้างขึ้นรอบๆ ธุรกรรม Zypper ได้ โดยปกติแล้วภาพสแนปช็อตก่อนการอัปเดตจะเป็นตัวเลือกแรกเมื่อการอัปเดตนั้นเองเป็นสาเหตุของความล้มเหลว

ในการตั้งค่า SLES ตามค่าเริ่มต้น กิจกรรม YaST และ Zypper สามารถสร้างpreและpostจับคู่สแนปช็อตได้preสแนปช็อตแสดงถึงสถานะของระบบไฟล์ก่อนเกิดธุรกรรมpostสแนปช็อตที่ตรงกันจะแสดงสถานะหลังจากนั้น อย่าเลือกสแนปช็อตเพียงเพราะมันเก่ากว่าช่วงเวลาที่เกิดความล้มเหลว ให้จับคู่เวลาและคำอธิบายของสแนปช็อตกับช่วงเวลาการอัปเดต

หากการเปลี่ยนแปลงที่ล้มเหลวเป็นการย้าย Service Pack คู่มือการอัปเกรด SLES 15 SP7 ของ SUSE ระบุอย่างชัดเจนให้ผู้ดูแลระบบค้นหาสแนปช็อตที่สร้างขึ้นก่อนการย้ายทันที และระบุว่าสแนปช็อตที่เกี่ยวข้องนั้นมีเครื่องหมายสำคัญ

ขั้นตอนที่ 3: ตรวจสอบว่าภาพรวมของผู้สมัครจะเปลี่ยนแปลงอะไรบ้าง

หากระบบปัจจุบันยังคงบูตได้ ให้เปรียบเทียบสแนปช็อตที่คาดการณ์ไว้กับสถานะปัจจุบันก่อนที่จะรีบูต วิธีนี้จะช่วยให้ทราบได้ว่าการอัปเดตเปลี่ยนแปลงเฉพาะไฟล์การกำหนดค่าไฟล์เดียวหรือเปลี่ยนแปลงไฟล์ระบบจำนวนมาก

sudo snapper status SNAPSHOT_ID..0
sudo snapper diff SNAPSHOT_ID..0 /etc/some-file.conf
เทอร์มินัล SLES แสดงสถานะ Snapper และเอาต์พุตความแตกต่างของ Snapper สำหรับสแนปช็อตก่อนการอัปเดต
ใช้คำสั่ง Snapper status และ diff เพื่อทำความเข้าใจขอบเขตของการอัปเดต การเปลี่ยนแปลงแพ็กเกจและการกำหนดค่าจำนวนมากอาจแนะนำให้ย้อนกลับทั้งหมด ในขณะที่ไฟล์เพียงไฟล์เดียวอาจแนะนำให้กู้คืนแบบเลือกเฉพาะส่วน

เมื่อการกู้คืนแบบเลือกสรรเป็นทางเลือกที่ดีกว่า

หากไฟล์ที่ทราบว่ามีปัญหาเพียงไฟล์เดียว และส่วนอื่นๆ ของระบบที่อัปเดตแล้วทำงานได้ปกติ การกู้คืนเฉพาะไฟล์นั้นจะช่วยหลีกเลี่ยงการย้อนกลับการเปลี่ยนแปลงระบบที่ไม่เกี่ยวข้อง SUSE ได้ระบุรูปแบบนี้ไว้ในเอกสาร:

sudo snapper -c root -v undochange SNAPSHOT_ID..0 /etc/some-file.conf

อย่าละเลยชื่อไฟล์โดยเด็ดขาด หากไม่มีชื่อไฟล์undochangeจะสามารถย้อนกลับการเปลี่ยนแปลงไฟล์ทั้งหมดระหว่างสองสถานะได้ SUSE เตือนว่าการใช้การกู้คืนไฟล์เพื่อเลียนแบบการย้อนกลับอย่างสมบูรณ์นั้นไม่ใช่วิธีที่แนะนำ การทำธุรกรรมแพ็กเกจอาจเปลี่ยนแปลงไฟล์ที่เกี่ยวข้องกันหลายไฟล์ ดังนั้นการย้อนกลับที่ผ่านการทดสอบอย่างสมบูรณ์จึงมักจะเข้าใจได้ง่ายกว่าเมื่อความล้มเหลวในการอัปเดตเกิดขึ้นกับระบบ

ขั้นตอนที่ 4: บูตสแนปช็อตที่เตรียมไว้จาก GRUB

รีบูตเครื่อง ในเมนู SLES GRUB 2 ให้เลือกตัวเลือกสำหรับการเริ่มต้นบูตโหลดเดอร์จากสแนปช็อตแบบอ่านอย่างเดียว จากนั้นเลือกสแนปช็อตที่ตรงกับสถานะก่อนการอัปเดต รูปแบบหน้าจออาจแตกต่างกันไปตามเฟิร์มแวร์และการกำหนดค่าบูต แต่เอกสาร SLES 15 SP7 ระบุรายการนี้ว่า " เริ่มต้นบูตโหลดเดอร์จากสแนปช็อตแบบอ่านอย่างเดียว "

เมนู SLES GRUB แสดงตัวเลือกการบูตสแนปช็อตแบบอ่านอย่างเดียว และสแนปช็อตก่อนการอัปเดตที่เลือกไว้
ควรบูตสแนปช็อตก่อนการอัปเดตก่อนที่จะทำการย้อนกลับทันที วิธีนี้จะสร้างขั้นตอนการตรวจสอบความเสี่ยงต่ำก่อนที่จะมีการเปลี่ยนแปลงซับโวลุ่มหลัก

เฉพาะสแนปช็อตจากค่าเริ่มต้นrootของการกำหนดค่า Snapper เท่านั้นที่สามารถบูตได้ผ่านกลไก SLES นี้ หากไม่มีเมนูสแนปช็อต อย่าสร้างรายการบูต ตรวจสอบอีกครั้งว่า Snapper เปิดใช้งานอยู่หรือไม่ โครงสร้างรูทยังคงเป็นโครงสร้างเริ่มต้นที่รองรับหรือไม่ และบูตโหลดเดอร์ที่ติดตั้งใช้งานได้หรือไม่

ขั้นตอนที่ 5: ทดสอบสแนปช็อตขณะที่ไดเร็กทอรีรูทเป็นแบบอ่านอย่างเดียว

หลังจากที่สแนปช็อตเริ่มทำงานแล้ว โปรดตรวจสอบให้แน่ใจว่าคุณกำลังใช้งานจากสแนปช็อตนั้นจริง ๆ และระบบไฟล์รูทอยู่ในโหมดอ่านอย่างเดียว:

findmnt /
mount | grep ' on / '
เทอร์มินัล SLES แสดงภาพสแนปช็อต Btrfs ที่ติดตั้งแบบอ่านอย่างเดียวเป็นระบบไฟล์รูท
การบูตสแนปช็อตนั้นตั้งใจให้เป็นแบบอ่านอย่างเดียวสำหรับเนื้อหารูทที่ถูกสร้างสแนปช็อตไว้ ใช้สถานะนี้เพื่อทดสอบว่าสถานะระบบก่อนหน้านี้สามารถแก้ไขปัญหาการอัปเดตล้มเหลวได้หรือไม่ ก่อนที่จะทำการย้อนกลับ

ตอนนี้ให้ทดสอบสิ่งต่างๆ ที่ล้มเหลวหลังจากการอัปเดต เช่น การเริ่มต้นบริการ การกำหนดค่าเครือข่าย การตรวจสอบสิทธิ์ การเปิดใช้งานแอปพลิเคชัน พฤติกรรมที่ขึ้นอยู่กับเคอร์เนล หรือการตรวจสอบอื่นๆ ที่เกี่ยวข้อง หลีกเลี่ยงการใช้งานสแนปช็อตแบบอ่านอย่างเดียวเหมือนกับการบูตระบบปกติ เพราะบางการทำงานจะล้มเหลวเนื่องจากส่วนของระบบไฟล์รูทที่ถูกสร้างสแนปช็อตนั้นไม่สามารถเขียนได้

หากสแนปช็อตที่เลือกไม่ใช่ไฟล์ที่ถูกต้อง ให้รีบูตเครื่องแล้วลองไฟล์อื่นดู จนกว่าคุณจะรันคำสั่งย้อนกลับ คุณจะยังไม่ได้ทำให้สแนปช็อตนั้นเป็นรูทระบบที่สามารถเขียนได้ใหม่

ขั้นตอนที่ 6: ยืนยันการย้อนกลับก็ต่อเมื่อสแนปช็อตผ่านการตรวจสอบของคุณแล้วเท่านั้น

เมื่อสแนปช็อตที่บูตขึ้นมาทำงานได้ตามที่คาดหวังแล้ว ให้ทำการบันทึกแบบถาวร:

sudo snapper rollback

คุณสามารถเพิ่มคำอธิบายเพื่อให้ง่ายต่อการระบุภาพถ่ายที่ได้ในภายหลัง:

sudo snapper rollback -d "Rollback after failed update"
ภาพเทอร์มินัล SLES แสดงคำสั่ง snapper rollback พร้อมป้ายกำกับแสดงรายละเอียดการย้อนกลับ
เรียกใช้ snapper rollback ก็ต่อเมื่อสแนปช็อตที่สร้างขึ้นผ่านการตรวจสอบความถูกต้องแล้วเท่านั้น การเพิ่มคำอธิบายสั้นๆ จะช่วยให้จดจำจุดกู้คืนได้ง่ายขึ้นในภายหลัง

ตามเอกสารการดูแลระบบ SLES ระบุว่า Snapper จะสร้างสแนปช็อตของสถานะก่อนการย้อนกลับ และสร้างสแนปช็อตใหม่ที่สามารถเขียนได้ ซึ่งจะกลายเป็นรูทเริ่มต้น นี่เป็นคุณสมบัติด้านความปลอดภัยที่สำคัญ: การย้อนกลับจะไม่เขียนทับรูทเก่าโดยตรง

รีบูตเครื่องหลังจากคำสั่งทำงานเสร็จสิ้น:

sudo reboot

ในการบูตครั้งถัดไป ให้เลือกรายการ SLES เริ่มต้นตามปกติ แทนที่จะบูตสแนปช็อตแบบอ่านอย่างเดียวเก่าอีกครั้ง

ขั้นตอนที่ 7: ตรวจสอบว่าไดเร็กทอรีรูทที่กู้คืนมานั้นสามารถเขียนได้และเป็นค่าเริ่มต้นแล้ว

หลังจากบูตเครื่องตามปกติแล้ว ให้ตรวจสอบรายการเมานต์รูทและสแนปช็อต:

findmnt /
sudo snapper list
เทอร์มินัล SLES แสดงรูท Btrfs ที่เขียนได้ และสแนปช็อต Snapper หลังจากทำการย้อนกลับ
หลังจากรีบูตระบบตามปกติแล้ว ให้ตรวจสอบว่าสามารถเขียนข้อมูลลงในไดเร็กทอรี / ได้ และตรวจสอบสแนปช็อตที่เกี่ยวข้องกับการย้อนกลับใหม่ รูทใหม่ควรจะเป็นสถานะระบบที่ใช้งานอยู่แล้ว

ทำการตรวจสอบการทำงานซ้ำอีกครั้งในส่วนที่ล้มเหลวในครั้งแรก หากแอปพลิเคชันยังคงล้มเหลว ให้พิจารณาว่าส่วนใดส่วนหนึ่งของแอปพลิเคชันนั้นอยู่ในไดเร็กทอรีที่ไม่ได้รวมอยู่ในสแนปช็อตหลักหรือไม่

ขั้นตอนที่ 8: รีเฟรชที่เก็บข้อมูลและตรวจสอบสถานะของแพ็กเกจ

สำหรับการอัปเดตแพ็กเกจทั่วไป ให้รีเฟรชที่เก็บข้อมูลและตรวจสอบการพึ่งพาของแพ็กเกจก่อนที่จะพยายามอัปเดตอีกครั้ง สำหรับการย้อนกลับ Service Pack การตรวจสอบที่เก็บข้อมูลและการลงทะเบียนผลิตภัณฑ์มีความสำคัญเป็นพิเศษ เนื่องจากชุดที่เก็บข้อมูลที่ไม่ตรงกันอาจทำให้ระบบกลับเข้าสู่สถานะที่ไม่สอดคล้องกันได้ทันที

sudo zypper ref -fs
sudo zypper lr -u
sudo zypper verify
เทอร์มินัล SLES รีเฟรชที่เก็บข้อมูล Zypper แสดงรายการ URL ของที่เก็บข้อมูล และตรวจสอบแพ็กเกจที่ติดตั้งแล้ว
ขั้นตอนสุดท้ายคือตรวจสอบการกำหนดค่าที่เก็บข้อมูลและความสอดคล้องของแพ็กเกจ หลังจากย้อนกลับ Service Pack แล้ว ให้ตรวจสอบด้วยว่าการลงทะเบียนผลิตภัณฑ์ตรงกับสถานะ SLES ที่กู้คืนแล้วหรือไม่

สำหรับการกู้คืน Service Pack ให้ตรวจสอบตามคำแนะนำในคู่มือการอัปเกรด SLES อย่างเป็นทางการ ซึ่งระบุไว้อย่างชัดเจนว่าให้ตรวจสอบการกำหนดค่า Repository และการลงทะเบียนผลิตภัณฑ์หลังจากทำการ Rollback แล้ว

สิ่งที่การย้อนกลับรูทของ Snapper ไม่สามารถกู้คืนได้

นี่คือข้อจำกัดที่สำคัญที่สุดที่ต้องทำความเข้าใจก่อนใช้งานฟังก์ชันย้อนกลับ (rollback) บนเซิร์ฟเวอร์ที่ใช้งานจริง สแนปช็อตรูทของ SLES ตามค่าเริ่มต้นจะยกเว้นซับโวลุ่มหลายรายการ เพื่อป้องกันไม่ให้ข้อมูลชั่วคราวและข้อมูลผู้ใช้หรือแอปพลิเคชันถูกย้อนกลับโดยไม่คาดคิด รายการเฉพาะผลิตภัณฑ์อาจรวมถึง/home, /opt, /usr/local, /srv, /tmp, /var, /run, และเส้นทางบูตโหลดเดอร์เฉพาะสถาปัตยกรรม โปรดดูเอกสารแนวคิดพื้นฐานของ Snapper จาก SUSE สำหรับรายการปัจจุบันและเหตุผลเบื้องหลัง

การออกแบบดังกล่าวช่วยปกป้องข้อมูล แต่ก็มีข้อแลกเปลี่ยนคือ โค้ดระบบอาจทำงานย้อนหลังไป ในขณะที่ข้อมูลในซับโวลุ่มที่ถูกยกเว้นยังคงอยู่ในสถานะที่ใหม่กว่า SUSE ชี้ให้เห็นถึงผลกระทบที่อาจเกิดขึ้นหลายประการ รวมถึงซอฟต์แวร์ของบุคคลที่สามอาจ/optไม่เข้ากัน สิทธิ์การเข้าถึงอาจเปลี่ยนแปลง และแอปพลิเคชันอาจไม่เข้าใจรูปแบบข้อมูลที่เขียนขึ้นหลังจากที่ทำการสร้างสแนปช็อตแล้ว

เรื่องนี้สำคัญอย่างยิ่งสำหรับฐานข้อมูลและแอปพลิเคชันเซิร์ฟเวอร์ หากการอัปเดตมีการย้ายสคีมาหรือเปลี่ยนแปลงข้อมูลแอปพลิเคชันภายใต้/varหรือ/srvการย้อนกลับแบบรูทอาจไม่สามารถย้อนกลับการเปลี่ยนแปลงข้อมูลนั้นได้ ตรวจสอบขั้นตอนการดาวน์เกรดหรือการกู้คืนของแอปพลิเคชันเองก่อนที่จะสรุปว่าสแนปช็อตของระบบเพียงอย่างเดียวนั้นเพียงพอแล้ว

ข้อผิดพลาดทั่วไปที่ควรหลีกเลี่ยง

  • ย้อนกลับก่อนทดสอบสแนปช็อตการบูตสแนปช็อตแบบอ่านอย่างเดียวเป็นขั้นตอนการทำงานของ SLES ที่ปลอดภัยกว่า เนื่องจากช่วยให้คุณตรวจสอบสถานะเป้าหมายได้
  • เลือกสแนปช็อตหลังการอัปเดตโดยไม่ได้ตั้งใจตรวจสอบประเภท วันที่ คำอธิบาย และความสัมพันธ์ระหว่างก่อนและหลังการอัปเดต แทนที่จะพึ่งพาหมายเลขสแนปช็อตเพียงอย่างเดียว
  • ใช้undochangeสำหรับการทำธุรกรรมทั้งแพ็กเกจ วิธีนี้มีประโยชน์สำหรับไฟล์ที่เลือกไว้ SUSE แนะนำวิธีการบูตและย้อนกลับ (boot-and-rollback) สำหรับการกู้คืนระบบอย่างสมบูรณ์
  • คาดหวัง/varหรือ/homeเดินทางย้อนกลับไปพร้อมกับรูทการยกเว้นซับโวลุ่มเริ่มต้นเป็นไปตามเจตนา
  • โดยไม่คำนึงถึงข้อกำหนดเรื่องอุปกรณ์เดียวเอกสาร SLES 15 SP7 ระบุว่ารองรับการย้อนกลับรูทแบบบูตได้สำหรับรูท Btrfs บนอุปกรณ์เดียว
  • ลองอัปเดตซ้ำอีกครั้งทันทีขั้นแรกให้ระบุสาเหตุที่การอัปเดตล้มเหลว ตรวจสอบที่เก็บซอฟต์แวร์ และพิจารณาว่าความล้มเหลวเกิดจากข้อบกพร่องของแพ็กเกจ ซอฟต์แวร์ของบุคคลที่สามที่ไม่เข้ากัน พื้นที่ดิสก์เหลือน้อย หรือปัญหาการกำหนดค่าในเครื่อง

หากระบบใช้การอัปเดตแบบธุรกรรม

SLES สามารถติดตั้งโดยใช้บทบาทเซิร์ฟเวอร์ธุรกรรมได้เช่นกัน ซึ่งเป็นรูปแบบการทำงานที่แตกต่างออกไป กล่าวคือ การอัปเดตจะถูกนำไปใช้กับสแนปช็อตและเปิดใช้งานเมื่อรีบูตระบบ ในระบบเหล่านั้น SUSE จะมี ตัวเลือกให้ตั้งค่าสแนปช็อตเป็นรูทเริ่มต้น อย่าผสมผสานวิธีการกู้คืนเซิร์ฟเวอร์ธุรกรรมเข้ากับการติดตั้ง SLES แบบอ่าน - transactional-update rollbackเขียนทั่วไปโดยไม่ระบุบทบาทของระบบก่อน พฤติกรรมอย่างเป็นทางการมีอธิบายไว้ในเอกสารการอัปเดตธุรกรรมของ SLES 15 SP7

รายการตรวจสอบการกู้คืน

  • ยืนยัน/ว่าเป็นระบบไฟล์ Btrfs rootมีการตั้งค่า Snapper และระบบไฟล์ Btrfs หลักอยู่บนอุปกรณ์เพียงเครื่องเดียว
  • ระบุสแนปช็อตที่อยู่ก่อนการอัปเดตล้มเหลวทันที
  • ใช้snapper statusเมื่อsnapper diffคุณต้องการทำความเข้าใจขอบเขตของการเปลี่ยนแปลง
  • ควรเลือกใช้การเลือกundochangeเฉพาะสำหรับไฟล์ที่แยกออกมาอย่างชัดเจนเท่านั้น
  • หากการอัปเดตระบบล้มเหลว ให้บูตสแนปช็อตที่ทดสอบจาก GRUB และทดสอบในโหมดอ่านอย่างเดียว
  • ดำเนินการsnapper rollbackเฉพาะเมื่อผู้สมัครประพฤติตนเหมาะสมแล้วเท่านั้น
  • รีบูตเครื่องตามปกติและตรวจสอบว่าสามารถเขียนข้อมูลลงในไดเร็กทอรีรูทที่กู้คืนได้หรือไม่
  • รีเฟรชที่เก็บข้อมูล ตรวจสอบสถานะแพ็กเกจ และตรวจสอบการลงทะเบียนหลังจากกู้คืน Service Pack แล้ว
  • ตรวจสอบไดรฟ์ย่อยที่ถูกยกเว้นอีกครั้งเพื่อหาความไม่ตรงกันของแอปพลิเคชันหรือรูปแบบข้อมูล ก่อนที่จะประกาศว่าการกู้คืนเสร็จสมบูรณ์

ข้อแลกเปลี่ยนที่สำคัญคือความแม่นยำกับความสม่ำเสมอ การกู้คืนไฟล์แบบเลือกเฉพาะส่วนจะเปลี่ยนแปลงน้อยกว่า แต่ต้องรู้แน่ชัดว่าอะไรเสียหาย การย้อนกลับระบบที่ผ่านการทดสอบแล้วจะเปลี่ยนแปลงมากกว่า แต่จะกู้คืนสถานะรากที่บันทึกไว้ได้อย่างสอดคล้อง และเหมาะสมกว่าสำหรับการอัปเดตที่ล้มเหลวซึ่งส่งผลกระทบต่อหลายส่วนประกอบ บน SLES ขั้นตอนการทำงานที่ปลอดภัยที่สุดคือการใช้การบูตสแนปช็อตแบบอ่านอย่างเดียวเป็นจุดตัดสินใจ แทนที่จะทำให้การย้อนกลับไม่สามารถย้อนกลับได้ก่อนที่คุณจะตรวจสอบตัวเลือกที่เหมาะสมแล้ว

ฝากความเห็น

วิธีแก้ไขข้อผิดพลาด GPG: ไม่สามารถตรวจสอบลายเซ็นต่อไปนี้ได้ใน Ubuntu

วิธีแก้ไขข้อผิดพลาด GPG: ไม่สามารถตรวจสอบลายเซ็นต่อไปนี้ได้ใน Ubuntu

แก้ไขข้อผิดพลาดลายเซ็น APT ของ Ubuntu อย่างปลอดภัย ระบุปัญหา NO_PUBKEY, EXPKEYSIG, BADSIG, นาฬิกา และการกำหนดค่าที่เก็บโดยไม่ต้องปิดใช้งานการตรวจสอบแพ็กเกจ

วิธีตั้งค่า DM-Multipath บน SLES 15: คู่มือภาคปฏิบัติ

วิธีตั้งค่า DM-Multipath บน SLES 15: คู่มือภาคปฏิบัติ

กำหนดค่า DM-Multipath บน SLES 15 ด้วยการค้นหาที่ปลอดภัย การตั้งค่าบริการ การเปลี่ยนแปลง multipath.conf น้อยที่สุด การอัปเดต initramfs และการตรวจสอบสถานะของเส้นทาง

คู่มือการกู้คืนระบบอย่างปลอดภัยสำหรับ SLES Btrfs Snapper หลังจากการอัปเดตล้มเหลว:

คู่มือการกู้คืนระบบอย่างปลอดภัยสำหรับ SLES Btrfs Snapper หลังจากการอัปเดตล้มเหลว:

กู้คืน SLES หลังจากการอัปเดตล้มเหลวด้วย Btrfs และ Snapper เปรียบเทียบตัวเลือกการย้อนกลับ ทดสอบสแนปช็อตอย่างปลอดภัย กู้คืนระบบ และตรวจสอบที่เก็บข้อมูล

วิธีปรับใช้ภาพพื้นหลังและนโยบายที่กำหนดเองกับไคลเอ็นต์ Pardus ทั้งหมด

วิธีปรับใช้ภาพพื้นหลังและนโยบายที่กำหนดเองกับไคลเอ็นต์ Pardus ทั้งหมด

ใช้ Liderahenk และ Ahenk เพื่อตั้งค่าภาพพื้นหลัง Pardus GNOME แบบกำหนดเอง ล็อกการตั้งค่าที่เลือกด้วย dconf และใช้งานนโยบายไคลเอ็นต์อื่นๆ ผ่านโครงการนำร่องที่ผ่านการทดสอบแล้ว

วิธีการบูต Ubuntu Server เข้าสู่โหมดฉุกเฉิน: คู่มือการกู้คืนทีละขั้นตอน

วิธีการบูต Ubuntu Server เข้าสู่โหมดฉุกเฉิน: คู่มือการกู้คืนทีละขั้นตอน

ตรวจสอบสาเหตุที่ Ubuntu Server เข้าสู่โหมดฉุกเฉิน ซ่อมแซมปัญหาทั่วไปของไฟล์ /etc/fstab และปัญหาการเมานต์อย่างปลอดภัย ตรวจสอบระบบไฟล์ และตรวจสอบการรีบูตตามปกติ

แก้ไขปัญหาแอป Flatpak ไม่รองรับธีม GTK ใน Ubuntu 24.04

แก้ไขปัญหาแอป Flatpak ไม่รองรับธีม GTK ใน Ubuntu 24.04

แก้ไขปัญหาแอป Flatpak ที่ไม่รองรับธีม GTK บน Ubuntu 24.04 ตรวจสอบส่วนขยายธีม พอร์ทัล GTK การตั้งค่าสว่างและมืด และข้อจำกัดของชุดเครื่องมือแอป

วิธีการตั้งค่าซอฟต์แวร์การจัดการองค์กร Pardus (LIDER AHENK)

วิธีการตั้งค่าซอฟต์แวร์การจัดการองค์กร Pardus (LIDER AHENK)

กำหนดค่า LIDER AHENK บน Pardus ด้วยการตั้งค่าที่เน้นคุณภาพ: ตรวจสอบข้อกำหนดเบื้องต้น ติดตั้ง Lider ลงทะเบียนไคลเอ็นต์ Ahenk และตรวจสอบความถูกต้องของการจัดการ

วิธีเปิดใช้งานไดรเวอร์ NVIDIA บนเวิร์กสเตชัน Pardus 23

วิธีเปิดใช้งานไดรเวอร์ NVIDIA บนเวิร์กสเตชัน Pardus 23

เปิดใช้งานไดรเวอร์ NVIDIA บน Pardus 23 ด้วยโปรแกรมติดตั้งไดรเวอร์ NVIDIA ของ Pardus ตรวจสอบความเข้ากันได้ของ GPU รีบูตอย่างปลอดภัย ตรวจสอบไดรเวอร์ และแก้ไขปัญหาทั่วไป

Ubuntu Server 24.04 การติดตั้งแบบขั้นต่ำ เทียบกับการติดตั้งแบบมาตรฐาน: ผลการทดสอบประสิทธิภาพแสดงให้เห็นอะไรบ้าง

Ubuntu Server 24.04 การติดตั้งแบบขั้นต่ำ เทียบกับการติดตั้งแบบมาตรฐาน: ผลการทดสอบประสิทธิภาพแสดงให้เห็นอะไรบ้าง

เปรียบเทียบการใช้งานดิสก์ หน่วยความจำ เวลาบูตเครื่อง บริการ และประสิทธิภาพการทำงานจริงของ Ubuntu Server 24.04 เวอร์ชัน Minimal และ Standard ด้วยวิธีการวัดผลที่สามารถทำซ้ำได้

แก้ไขปัญหา “Zypper ถูกล็อกโดยกระบวนการอื่น” ใน SUSE Linux Enterprise

แก้ไขปัญหา “Zypper ถูกล็อกโดยกระบวนการอื่น” ใน SUSE Linux Enterprise

แก้ไขข้อผิดพลาดการล็อกของ Zypper ใน SLES อย่างปลอดภัย ระบุโปรเซส เลือกว่าจะรอหรือหยุดโปรเซส และแยกความแตกต่างระหว่างการล็อกธุรกรรมกับการล็อกแพ็กเกจ