แก้ไขข้อผิดพลาด “Failed to Start Load Kernel Modules” ระหว่างการบูต SLES

ข้อความบูต SLES ที่ว่า“Failed to Start Load Kernel Modules”โดยปกติหมายความว่าsystemd-modules-load.serviceพยายามโหลดโมดูลเคอร์เนลอย่างน้อยหนึ่งโมดูลและคำขอหนึ่งรายการล้มเหลว เป้าหมายที่สำคัญไม่ใช่เพียงแค่การซ่อนบรรทัดบูตสีแดง การซ่อมแซมที่ดีจะทำให้บริการทำงานได้อย่างปกติ ลบคำขอโมดูลที่ค้างอยู่ รักษาไดรเวอร์ที่เครื่องต้องการใช้งาน และทำงานได้ต่อไปหลังจากการรีบูตครั้งถัดไป

คู่มือนี้เขียนขึ้นสำหรับ SUSE Linux Enterprise Server 15 และสอดคล้องกับคู่มือการดูแลระบบ SLES 15 SP7 ฉบับปัจจุบัน เอกสารของ SUSE ระบุว่าsystemd-modules-load.serviceโมดูลจะถูกโหลดโดยระบุชื่อในไฟล์ `<module_name>` /etc/modules-load.d/*.confในขณะที่โมดูลฮาร์ดแวร์สมัยใหม่ส่วนใหญ่จะถูกโหลดโดยอัตโนมัติเมื่อตรวจพบอุปกรณ์ ความแตกต่างนี้มีความสำคัญ: หากรายการคงที่ที่ล้าสมัยชี้ไปยังโมดูลที่ไม่มีอยู่อีกต่อไป การลบหรือแก้ไขรายการนั้นมักจะปลอดภัยกว่าการบังคับให้ไดรเวอร์ที่ล้าสมัยกลับเข้าไปในระบบ โปรดดูเอกสารการจัดการโมดูลเคอร์เนลของ SUSE สำหรับSLES 15 SP7

วิธีแก้ปัญหาที่ประสบความสำเร็จควรมีลักษณะอย่างไร

ก่อนทำการเปลี่ยนแปลงใดๆ ให้กำหนดผลลัพธ์ที่คุณต้องการก่อน หลังจากซ่อมแซมเสร็จแล้ว:

  • systemctl status systemd-modules-load.serviceไม่ควรรายงานผลลัพธ์ที่ล้มเหลวอีกต่อไป
  • ในระหว่างการบูตเครื่องใหม่ ไม่ควรมีข้อผิดพลาดในการโหลดโมดูลปรากฏอยู่ในบันทึกการทำงานอีกต่อไป
  • หากโมดูลนั้นมีความจำเป็นจริง ๆmodprobe MODULE_NAMEการทำงานควรจะสำเร็จ และฮาร์ดแวร์หรือฟังก์ชันที่เกี่ยวข้องควรจะใช้งานได้
  • หากโมดูลนั้นล้าสมัย ควรลบคำขอที่ค้างอยู่แทนที่จะแทนที่ด้วยโมดูลที่ไม่เกี่ยวข้อง
  • หากปัญหาเกี่ยวข้องกับการบูตในช่วงแรก ควรทำการสร้าง initramfs ขึ้นใหม่ และเครื่องควรจะสามารถรีบูตได้ตามปกติ

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

ขั้นตอนที่ 1: ยืนยันหน่วยที่ล้มเหลวและบันทึกข้อผิดพลาดของโมดูลอย่างแม่นยำ

เริ่มต้นที่ตัวบริการเองแทนที่จะเดาจากข้อความบนหน้าจอเริ่มต้น:

sudo systemctl status systemd-modules-load.service --no-pager

มองหาชื่อโมดูลและข้อผิดพลาด เช่นModule ... not found, No such device, Operation not permitted, หรือข้อความที่ระบุว่าโมดูลที่ไม่รองรับถูกปฏิเสธ ถ้อยคำที่ใช้จะกำหนดขั้นตอนต่อไป

ตัวอย่างเทอร์มินัล SLES ที่แสดงให้เห็นว่า systemd-modules-load.service อยู่ในสถานะล้มเหลวหลังจากที่โมดูล example_drv สมมติไม่สามารถโหลดได้
ตัวอย่างการแสดงสถานะการให้บริการ: เน้นที่ชื่อโมดูลและข้อผิดพลาดในการโหลดครั้งแรกที่เกิดขึ้นจริง มากกว่าที่จะเน้นเฉพาะสถานะล้มเหลวสุดท้าย

หากข้อความแสดงสถานะถูกตัดทอน อย่าเพิ่งแก้ไขการตั้งค่า ให้ดึงบันทึกการบูตฉบับเต็มมาก่อน

ขั้นตอนที่ 2: อ่านบันทึกการบูตก่อนทำการแก้ไขไฟล์โมดูล

สอบถามเฉพาะบริการนี้สำหรับการบูตปัจจุบันเท่านั้น:

sudo journalctl -b -u systemd-modules-load.service --no-pager

คุณสามารถตรวจสอบข้อความเคอร์เนลที่เกี่ยวข้องกับการโหลดโมดูลได้เช่นกัน:

sudo journalctl -b -k --no-pager | grep -iE 'module|modprobe|firmware|taint'

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

ตัวอย่าง journalctl ของ SLES ที่แสดงให้เห็นถึงความล้มเหลวในการโหลดโมดูลเคอร์เนลสมมติภายใน systemd-modules-load.service
บันทึกการบริการช่วยจำกัดขอบเขตของปัญหาให้แคบลงเหลือเพียงคำขอโมดูลที่ล้มเหลวระหว่างการบูตครั้งนี้ ซึ่งเป็นหลักฐานที่จำเป็นก่อนที่จะเลือกวิธีการซ่อมแซม

ผลลัพธ์เช่นนี้Module foo not found in directory /lib/modules/...มักบ่งชี้ถึงการกำหนดค่าที่ล้าสมัย ความไม่ตรงกันของเคอร์เนล/แพ็กเกจ หรือไดรเวอร์ของบุคคลที่สามที่ไม่ได้สร้างใหม่สำหรับเคอร์เนลที่ใช้งานอยู่ แต่ผลลัพธ์No such deviceนี้แตกต่างออกไป: ไฟล์โมดูลอาจมีอยู่ แต่ฮาร์ดแวร์หรืออุปกรณ์เสมือนปัจจุบันอาจไม่ตรงกับสิ่งที่ไดรเวอร์คาดหวัง

ขั้นตอนที่ 3: ค้นหาว่าใครเป็นผู้ขอให้ SLES โหลดโมดูลนั้น

ค้นหาตำแหน่งโหลดคงที่ปกติและการกำหนดค่า modprobe:

grep -Rns --color=auto 'MODULE_NAME'   /etc/modules-load.d /run/modules-load.d /usr/lib/modules-load.d   /etc/modprobe.d /usr/lib/modprobe.d 2>/dev/null

แทนที่MODULE_NAMEด้วยชื่อจากบันทึก ใน SLES 15 SP7 รายการภายในเครื่องใน/etc/modules-load.d/เป็นตำแหน่งมาตรฐานที่ผู้ดูแลระบบจัดการสำหรับโมดูลที่ต้องโหลดเมื่อบูตเครื่อง ในขณะที่รายการที่บรรจุไว้สามารถอยู่ใน ได้/usr/lib/modules-load.d/SUSE ระบุว่าโมดูลส่วนใหญ่ไม่จำเป็นต้องมีรายการ modules-load.d ด้วยตนเองเลย

จากนั้นตรวจสอบว่าเคอร์เนลที่ใช้งานอยู่มีโมดูลนั้นอยู่จริงหรือไม่:

uname -r
sudo modinfo MODULE_NAME
sudo modprobe MODULE_NAME
ตัวอย่างเทอร์มินัล SLES เปรียบเทียบเวอร์ชันเคอร์เนลที่ใช้งานอยู่กับรายการ modules-load.d แบบคงที่ และข้อผิดพลาด modprobe module-not-found
เปรียบเทียบชื่อโมดูลที่กำหนดค่าไว้กับเคอร์เนลที่กำลังทำงานอยู่ หากพบรายการคงที่ที่ระบุชื่อโมดูลที่ไม่มีอยู่ในเคอร์เนลนั้น แสดงว่าการกำหนดค่านั้นล้าสมัยหรืออาจขาดแพ็คเกจไดรเวอร์

หากโมดูลนั้นล้าสมัยแล้ว

ลบหรือปิดใช้งานไฟล์ในเครื่องที่ร้องขอไฟล์นั้น อย่าลบไฟล์ของผู้จำหน่าย/usr/libเพียงเพื่อระงับข้อผิดพลาด เพราะการอัปเดตแพ็กเกจอาจกู้คืนไฟล์นั้นกลับมา หากคุณพบว่า/etc/modules-load.d/*.confไฟล์ในเครื่องถูกสร้างขึ้นสำหรับฮาร์ดแวร์ที่เลิกผลิตแล้วหรือซอฟต์แวร์รุ่นเก่า ให้ลบรายการในเครื่องนั้นออกแล้วทดสอบอีกครั้ง

หากโมดูลควรมีอยู่ แต่ modinfo หาไม่พบ

ตรวจสอบว่าเคอร์เนลที่กำลังทำงานอยู่ตรงกับโครงสร้างโมดูลที่ติดตั้งไว้หรือไม่:

uname -r
ls -ld /lib/modules/$(uname -r)
rpm -q kernel-default

การตรวจสอบคุณภาพขั้นพื้นฐานนั้นง่ายมาก: /lib/modules/$(uname -r)ไฟล์นั้นต้องมีอยู่จริงและมีโมดูลสำหรับเคอร์เนลที่กำลังทำงานอยู่ หากไดรเวอร์ของบุคคลที่สามถูกคอมไพล์สำหรับเคอร์เนลเวอร์ชันเก่ากว่า ให้ติดตั้งใหม่หรือสร้างไดรเวอร์นั้นใหม่โดยใช้เคอร์เนล SLES เวอร์ชันปัจจุบันตามขั้นตอนที่ผู้ผลิตกำหนด หลีกเลี่ยงการคัดลอก.koไฟล์จากเคอร์เนลเวอร์ชันอื่นเพียงเพื่อmodprobeค้นหาบางสิ่ง เพราะความแตกต่างของ ABI หรือลายเซ็นของเคอร์เนลอาจทำให้การทำเช่นนั้นไม่ปลอดภัยหรือไม่ได้ผล

หากโมดูลถูกขึ้นบัญชีดำ

ค้นหารายการที่ถูกบล็อก หรือติดตั้งโปรแกรมเพื่อแก้ไข:

grep -Rns --color=auto -E '^[[:space:]]*(blacklist|install)[[:space:]]+MODULE_NAME'   /etc/modprobe.d /usr/lib/modprobe.d 2>/dev/null

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

หาก SLES รายงานว่าโมดูลนั้นไม่รองรับ

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

ขั้นตอนที่ 4: สร้าง initramfs ใหม่เฉพาะเมื่อการเปลี่ยนแปลงนั้นส่งผลต่อการบูตในช่วงแรกเท่านั้น

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

sudo dracut -f

SUSE ได้จัดทำเอกสารอธิบายอย่างละเอียดเกี่ยวกับการสร้าง initramfs ขึ้นใหม่หลังจากมีการเปลี่ยนแปลงไดรเวอร์ที่ส่งผลต่อการบูต คู่มือขั้นตอนการบูตฉบับปัจจุบันของ SUSE อธิบายว่าเมื่อใดที่จำเป็นต้องเพิ่มไดรเวอร์ลงใน initramfs และวิธีdracutการใช้งานเพื่อสร้าง initramfs ขึ้นใหม่: บทนำเกี่ยวกับกระบวนการบูตใน SLES 15 SP7

อย่าเรียกใช้คำสั่งนี้dracut -fเป็นพิธีกรรมทุกครั้งที่เกิดข้อผิดพลาดเกี่ยวกับโมดูลเสริม หากโมดูลหลังการบูตทั่วไปถูกระบุไว้ในไฟล์ `initramfs` /etc/modules-load.dการแก้ไขไฟล์นั้นอาจเพียงพอแล้ว การสร้าง initramfs ใหม่มีความสำคัญมากที่สุดเมื่อการกำหนดค่าที่ไม่ถูกต้องฝังอยู่ในอิมเมจบูต หรือไดรเวอร์ที่จำเป็นต้องพร้อมใช้งานก่อนที่ระบบไฟล์รูทจริงจะถูกเมานต์อย่างสมบูรณ์

ตัวอย่างเทอร์มินัล SLES ที่แสดงการสร้าง initramfs ใหม่โดยใช้ dracut ตามด้วยการตรวจสอบบริการ modules-load ของ systemd
เมื่อการซ่อมแซมส่งผลกระทบต่อการบูตในช่วงแรก ให้สร้าง initramfs ใหม่ แล้วตรวจสอบบริการแทนที่จะสันนิษฐานว่าคำสั่ง dracut ที่สำเร็จเพียงอย่างเดียวได้แก้ไขข้อผิดพลาดของโมดูลเดิมแล้ว

ตรวจสอบการซ่อมแซมให้เรียบร้อยก่อนสรุปว่าเหตุการณ์ดังกล่าวจบลงแล้ว

ทดสอบครั้งแรกโดยไม่ต้องรีบูตเครื่อง เมื่อสามารถทำได้อย่างปลอดภัย:

sudo systemctl restart systemd-modules-load.service
systemctl status systemd-modules-load.service --no-pager
systemctl is-failed systemd-modules-load.service

หากโมดูลที่ต้องการโหลดเสร็จสมบูรณ์แล้ว โปรดยืนยัน:

lsmod | grep -w MODULE_NAME

จากนั้นให้รีบูตเครื่องในช่วงเวลาการบำรุงรักษาที่เหมาะสม และตรวจสอบการบูตเครื่องใหม่:

sudo reboot

หลังจากเข้าสู่ระบบ:

systemctl --failed
journalctl -b -u systemd-modules-load.service --no-pager

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

เมื่อใดควรเปลี่ยนวิธีการ

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

ข้อจำกัดของการแก้ไขนี้

ข้อความ “Failed to Start Load Kernel Modules” เป็นเพียงอาการของปัญหา ไม่ใช่ข้อบกพร่องเพียงอย่างเดียว ขั้นตอนนี้จะแก้ไขปัญหาที่เกิดจากคำขอโมดูลแบบคงที่ โมดูลที่หายไปหรือไม่ตรงกัน บัญชีดำ และการซิงโครไนซ์ initramfs แต่จะไม่สามารถทดแทนการวินิจฉัยฮาร์ดแวร์ การสนับสนุนไดรเวอร์จากบุคคลที่สาม การทำงานของการลงนาม Secure Boot หรือการกู้คืนข้อมูลในกรณีที่อุปกรณ์รูทไม่สามารถใช้งานได้

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

ฝากความเห็น

วิธีการติดตั้งระบบปฏิบัติการ Ubuntu 24.04 และ Windows 11 แบบ Dual-Boot โดยเปิดใช้งาน BitLocker

วิธีการติดตั้งระบบปฏิบัติการ Ubuntu 24.04 และ Windows 11 แบบ Dual-Boot โดยเปิดใช้งาน BitLocker

เรียนรู้ว่าเมื่อใดที่ Ubuntu 24.04 สามารถบูตแบบ Dual-boot ได้ในขณะที่เปิดใช้งาน BitLocker วิธีการปกป้องรหัสกู้คืนของคุณ และเส้นทางการติดตั้งที่ปลอดภัยบนไดรฟ์เดียวกันหรือไดรฟ์แยกต่างหาก

วิธีเชื่อมต่อไคลเอ็นต์ Pardus Linux เข้ากับโดเมน Active Directory

วิธีเชื่อมต่อไคลเอ็นต์ Pardus Linux เข้ากับโดเมน Active Directory

เชื่อมต่อ Pardus Linux เข้ากับ Active Directory ด้วย Pardus Domain Joiner ตรวจสอบ DNS และเวลา ติดตั้ง CLI เชื่อมต่อด้วย SSSD และตรวจสอบสิทธิ์การเข้าสู่ระบบโดเมน

วิธีการตั้งค่า Pardus Image Creator สำหรับการติดตั้งระบบปฏิบัติการแบบกำหนดเอง

วิธีการตั้งค่า Pardus Image Creator สำหรับการติดตั้งระบบปฏิบัติการแบบกำหนดเอง

เรียนรู้ความสามารถของ Pardus Image Writer วิธีการติดตั้ง และวิธีการใช้งานไฟล์ ISO ที่กำหนดเองซึ่งได้รับการตรวจสอบแล้วไปยัง USB อย่างปลอดภัย รวมถึงคำแนะนำในการสร้างและทดสอบ

แก้ไขข้อผิดพลาด “Failed to Start Load Kernel Modules” ระหว่างการบูต SLES

แก้ไขข้อผิดพลาด “Failed to Start Load Kernel Modules” ระหว่างการบูต SLES

ตรวจสอบและแก้ไขข้อผิดพลาดของ systemd-modules-load.service บน SLES โดยการค้นหาโมดูลที่มีปัญหา แก้ไขการกำหนดค่าการบูต และสร้าง initramfs ใหม่เฉพาะเมื่อจำเป็นเท่านั้น

วิธีการย้ายเดสก์ท็อป Debian ไปยังระบบปฏิบัติการที่ไม่สามารถเปลี่ยนแปลงได้โดยใช้ OSTree

วิธีการย้ายเดสก์ท็อป Debian ไปยังระบบปฏิบัติการที่ไม่สามารถเปลี่ยนแปลงได้โดยใช้ OSTree

เรียนรู้ว่าเหตุใด Debian จึงไม่สามารถทำให้เป็น OSTree ที่ไม่สามารถเปลี่ยนแปลงได้ด้วยการติดตั้งแพ็กเกจเพียงแพ็กเกจเดียว จากนั้นจึงทำการย้ายไปยังเดสก์ท็อป OSTree อย่างปลอดภัย หรือวางแผนสร้างอิมเมจ Debian แบบกำหนดเอง

Fix Touchpad Gestures Not Working on Wayland in Ubuntu 24.04

Fix Touchpad Gestures Not Working on Wayland in Ubuntu 24.04

Fix missing three-finger touchpad gestures on Ubuntu 24.04 Wayland by checking GNOME settings, libinput events, updates, and extensions.

วิธีตั้งค่าสคริปต์สลับเอาต์พุตเสียง PipeWire บน Debian

วิธีตั้งค่าสคริปต์สลับเอาต์พุตเสียง PipeWire บน Debian

สร้างสคริปต์สลับเอาต์พุต PipeWire ที่เชื่อถือได้บน Debian ด้วย wpctl สลับระหว่างลำโพง, บลูทูธ, USB หรือ HDMI โดยไม่ต้องกำหนด ID แบบตายตัว

วิธีการตั้งค่าเครื่องพิมพ์ผ่าน CUPS บนระบบปฏิบัติการ HamoniKR

วิธีการตั้งค่าเครื่องพิมพ์ผ่าน CUPS บนระบบปฏิบัติการ HamoniKR

ตั้งค่าเครื่องพิมพ์ USB และเครื่องพิมพ์เครือข่ายบน HamoniKR OS ด้วย CUPS เพิ่มคิว เลือกใช้ IPP แบบไม่ต้องใช้ไดรเวอร์ หรือใช้ไดรเวอร์เฉพาะรุ่น ตั้งค่าเริ่มต้น และพิมพ์หน้าทดสอบ

วิธีจำกัดการใช้งาน CPU และ RAM ของกระบวนการด้วย Cgroups บน Ubuntu

วิธีจำกัดการใช้งาน CPU และ RAM ของกระบวนการด้วย Cgroups บน Ubuntu

ใช้ systemd cgroups บน Ubuntu เพื่อจำกัดเวลาการใช้งาน CPU และหน่วยความจำสำหรับคำสั่งหรือบริการ เปรียบเทียบขอบเขตชั่วคราว ข้อจำกัดถาวร และข้อดีข้อเสียที่สำคัญ

วิธีการแปลองค์ประกอบ UI ของ Gooroom OS เป็นภาษาอังกฤษ

วิธีการแปลองค์ประกอบ UI ของ Gooroom OS เป็นภาษาอังกฤษ

เปลี่ยนเมนูของ Gooroom OS เป็นภาษาอังกฤษเมื่อมีการรองรับภาษา ทำตามขั้นตอนการตั้งค่าของ GNOME, การใช้ภาษาสำรองของ Debian และการตรวจสอบการแก้ไขปัญหา