ฉันต้องการอัปเดต glibc ตาม RedHat: https://rhn.redhat.com/errata/RHSA-2015-0090.html
จำเป็นต้องรีสตาร์ทเซิร์ฟเวอร์หลังจากการอัพเกรด glibc หรือไม่
ฉันต้องการอัปเดต glibc ตาม RedHat: https://rhn.redhat.com/errata/RHSA-2015-0090.html
จำเป็นต้องรีสตาร์ทเซิร์ฟเวอร์หลังจากการอัพเกรด glibc หรือไม่
คำตอบ:
ไม่จำเป็นต้องใช้เทคนิคในการ เริ่มต้นระบบใหม่เนื่องจากเฉพาะโปรแกรมที่ใช้ glibc จำเป็นต้องเริ่มต้นใหม่และเคอร์เนลไม่ได้ใช้ glibc
ที่ถูกกล่าวว่าการรีสตาร์ททุกสิ่งที่ใช้ glibc นั้นกว้างพอที่คุณอาจรีบูตได้
ตัวอย่างเช่น/sbin/init
ใช้ glibc อย่างไรก็ตามการรีสตาร์ทเป็นเรื่องเล็กน้อย (เรียกใช้init u
ในฐานะรูท)
systemd
ดูเหมือนจะมีตัวแก้ปัญหาทั้งหมดของตัวเอง ในประสบการณ์ของฉันแทนที่ห้องสมุดที่ใช้โดยกระบวนการที่ใช้เวลานานอาจทำให้เกิดความไม่แน่นอน รีบูทและมีความสุข
หากคุณพอใจกับการรีสตาร์ทแต่ละบริการที่ใช้ไลบรารี่ที่มีช่องโหว่ด้วยตนเองคุณสามารถเรียกใช้คำสั่งนี้และรีสตาร์ทกระบวนการตามรายการ:
# lsof | awk '/libc-/ {print $1}' | sort -u
คุณอาจจะพบว่าการรีสตาร์ทเครื่องทั้งหมดนั้นง่ายกว่า
lsof | awk '/DEL.*libc/{print $1}' | sort -u
เพื่อจับคู่เฉพาะกับลิงก์ที่เชื่อมโยงไปยังlibc ที่ถูกลบตอนนี้(หลังจากอัพเดต)
lsof | grep libc
หรือ มันจับคู่ไลบรารีจำนวนมากรวมถึง libcurl, libcups, libcairo และอื่น ๆ Grepping ที่libc-
ดูเหมือนจะให้ผลลัพธ์ที่ถูกต้อง
ใช่ดังนั้นกระบวนการที่ขึ้นอยู่กับ glibc เวอร์ชันเก่าจะเริ่มต้นอีกครั้งด้วยเวอร์ชันใหม่ของไลบรารี โปรแกรมที่เชื่อมโยงแบบคงที่จะต้อง recompiled ด้วยเหตุผลนี้
init
มีความเสี่ยงเนื่องจาก CVE :)