จำเป็นต้องรีบูตระบบ Ubuntu ในกรณีใด ฉันมักจะอ่านคำตอบว่าหลังจากการเปลี่ยนแปลงในระบบระบบจะเริ่มต้นใหม่ แต่จำเป็นอย่างยิ่งหรือไม่?
จำเป็นต้องรีบูตระบบ Ubuntu ในกรณีใด ฉันมักจะอ่านคำตอบว่าหลังจากการเปลี่ยนแปลงในระบบระบบจะเริ่มต้นใหม่ แต่จำเป็นอย่างยิ่งหรือไม่?
คำตอบ:
โดยทั่วไปมีสองสถานการณ์ที่จำเป็นต้องรีบูต:
libc
(แทนglibc
) ได้รับการอัปเกรดมีกลไกในการโหลดเคอร์เนลใหม่โดยไม่ต้องเริ่มระบบใหม่ ( ฉันจะอัพเกรดเคอร์เนลเซิร์ฟเวอร์ของฉันโดยไม่ต้องบูตเครื่องใหม่ได้อย่างไร ) ด้วยglibc
ปัญหาที่ใหญ่ที่สุดคือ init เป็นไปได้ที่จะรีสตาร์ท init (ดูที่การรีสตาร์ท init โดยไม่ต้องรีสตาร์ทระบบ )
สำหรับผู้ใช้งานเฉลี่ยไม่เป็นแนะนำและเริ่มต้นใหม่เป็นสิ่งที่จำเป็น
เห็นได้ชัดว่ามีกรณีที่สาม:
dbus
ได้รับการอัพเกรด dbus-daemon
ดูเหมือนจะไม่สามารถเริ่มต้นใหม่ (จากสิ่งที่ฉันสามารถเข้าใจการอภิปรายในบทความ LWN นี้ ) และเนื่องจากหลายสิ่งขึ้นอยู่กับ DBus ...ที่จริงแล้วมันขึ้นอยู่กับสิ่งที่คุณพยายามทำ:
หากคุณทำapt-get dist-upgrade
และเคอร์เนลใหม่มาและคุณต้องการเปิดใช้งานคุณต้องรีบูต
หากมี FireFox เวอร์ชันใหม่เข้ามาคุณจะไม่เห็นด้วย
และในระหว่างสุดขั้วทั้งสองนั้นคือสีเทา 50 เฉดสี:
;-)
วันนี้ฉันมีสถานการณ์จริงที่พิสูจน์สิ่งนี้ บางครั้งมีสิ่งตกค้างในระบบหลังจากทำการเปลี่ยนแปลง ตัวอย่างเช่นฉันมีผู้ใช้ที่ไม่สามารถเข้าถึงได้/dev/dsp
แม้จะถูกเพิ่มในกลุ่มที่เหมาะสม มีล็อคถูกวางไว้โดยผู้ใช้คนแรกที่เข้าถึง อย่างไรก็ตามแม้หลังจากฆ่าผู้ใช้รายนั้นแล้วการล็อกยังคงอยู่และผู้ใช้รายที่สองไม่สามารถเข้าถึงได้ อย่างไรก็ตามหลังจากรีบูตผู้ใช้ทั้งสองก็สามารถใช้งานได้พร้อมกัน/dev/dsp
โดยไม่มีข้อขัดแย้งใด ๆ การบูตใหม่จะปล่อยสิ่งตกค้างใด ๆ ที่สามารถป้องกันการเปลี่ยนแปลงจากการใช้งานอย่างเหมาะสม
ฉันไม่สามารถคิดในสถานการณ์ใด ๆ ที่รีบูตเป็นสิ่งจำเป็นอย่างยิ่ง
จริงๆแล้วคุณสามารถปล่อยให้อูบุนตูทำงานได้อย่างไม่มีกำหนด อาจได้รับมัลแวร์ (เนื่องจากไม่ได้ใช้การอัปเดตเคอร์เนลและ libc) และอาจทำให้ตกใจหรือผิดพลาด ... แต่สิ่งที่หลีกเลี่ยงที่จะเกิดขึ้นกับคุณคืออะไร
เมื่อพิจารณาถึงความซับซ้อนของชีวิตคุณอาจจำเป็นต้องเพิกเฉยต่อความต้องการที่คงที่ของคอมพิวเตอร์ เหมือนกับการหายใจการกินการรัก ... การใช้ชีวิต
แต่ถึงอย่างนั้นพวกเขาจำเป็นจริงๆหรือ? คุณมีชีวิตอยู่บนเครื่องบินลำนี้ภายใต้นิยามความจำเป็นอย่างแท้จริงหรือไม่? ฉันไม่รู้จริงๆ เป็นคำถามแปลก ๆ ที่จะถาม
สำหรับสองมุขตลกขนาดใหญ่ที่ทำให้ผู้โพสต์โพสต์นี้และผู้ติดตาม
คำถามนี้ไม่สมบูรณ์หรืออย่างน้อยก็เปิดกว้าง เมื่อคุณโยนคำต่าง ๆตามความจำเป็นคุณจะต้องให้บริบท
หลายคำตอบอยู่แล้วสันนิษฐาน OP หมายน่าพอใจอย่างมาก (ในความหมายทางด้านเทคนิค) คำตอบโพสต์เพื่อให้พอดีกับบริบทเช่นที่จำเป็นเพื่อหลีกเลี่ยงการถูกแฮ็กหรือจำเป็นถ้าเกิดปัญหาเครื่องคอมพิวเตอร์ของคุณ พวกเขาเป็นคำตอบที่ดี การเพิ่มอีกอันไม่ได้รับประกัน
แต่พวกเขาบอกว่าสมมติฐานที่เป็นแม่ของทุกอัพโคลน (หรือสิ่งที่ต้องการที่อยู่แล้ว) ดังนั้นผมจึงปอกเปลือกมันกลับไปที่ความจำเป็นแน่นอน หากคุณยืนยันในการใช้สำเนาเก่าของ 10.10 เวลาและพื้นที่จะดำเนินต่อไปตามที่ได้รับรางวัล
คุณจะทราบว่าฉันไม่แนะนำตำแหน่งนั้น
คำถามจริงๆควรจะปิดเป็นส่วนใหญ่มีความคิดเห็นตาม
ความจริงก็คือมันขึ้นอยู่กับสิ่งที่ได้รับการปรับปรุงวิธีการที่ระบบของคุณเปิดเผยต่ออินเทอร์เน็ตแบบเปิดและบริการของระบบที่คุณมี / ต้องการใช้งาน
เพียงแค่ติดตั้งแพ็คเกจเวอร์ชันใหม่ไม่ได้ส่งผลให้บริการและแอปพลิเคชันที่เกี่ยวข้องเริ่มต้นใหม่ ตัวอย่างเช่นหากคุณใช้ Firefox ในขณะที่คุณติดตั้งแพ็คเกจที่อัปเดตแล้วคุณจะได้รับการแจ้งเตือนภายในเบราว์เซอร์เมื่อคุณสลับกลับไปที่เบราว์เซอร์นั้นจะต้องเริ่มต้นใหม่หลังจากติดตั้งการอัปเดตแล้ว ในทำนองเดียวกันเคอร์เนลตัวเองจะต้อง "เริ่มต้นใหม่" เมื่อมีการใช้การปรับปรุงสำหรับมัน เนื่องจากเคอร์เนลเป็นระดับต่ำสุดเหนือฮาร์ดแวร์คุณจำเป็นต้องรีบูตระบบเพื่อให้โหลดเคอร์เนลใหม่ สำหรับบริการอื่น ๆ พวกเขาสามารถเริ่มต้นใหม่ได้โดยไม่ต้องรีบูตเครื่อง การอัปเดตเป็นUnityหรือไลบรารีพื้นฐานที่ใช้โดยบริการของสภาพแวดล้อมคุณจะต้องออกจากระบบและกลับเข้าสู่ระบบเพื่อเริ่มต้นใหม่ สำหรับบริการระบบอาจเป็นไปได้ที่จะรีสตาร์ทด้วยตนเองหลังจากที่มีการใช้การอัปเดต แต่การทำเช่นนั้นโดยอัตโนมัติอาจทำให้เกิดความยุ่งยากมากหากคุณพยายามใช้ระบบ
วิธีเดียวที่จะรู้แน่ชัดหากจำเป็นต้องดำเนินการบางอย่างคือรู้ว่าการเปลี่ยนแปลงคืออะไรและความเสี่ยงของคุณคืออะไรหากไม่ดำเนินการดังกล่าว เห็นได้ชัดว่าการแก้ไขความปลอดภัยต้องการการดำเนินการที่ฉับพลันมากกว่าการเปลี่ยนแปลงอย่างง่าย ๆ กับสิ่งอื่น ๆ ที่คุณอาจไม่เคยพบ ยิ่งคอมพิวเตอร์ของคุณเชื่อมต่อกับอินเทอร์เน็ตโดยตรงมากเท่าใดความเสี่ยงก็จะยิ่งมากขึ้นเช่นกัน คุณจะต้องพิจารณาตัวแปรทั้งหมดและตัดสินใจว่าจะรีบูตทันทีหรือใหม่กว่าเมื่อคุณติดตั้งการอัปเดต
จำเป็นต้องรีบูตระบบ Ubuntu เมื่อใด
เครื่องกำลังทำงานและเคร่งครัดเมื่อทำการอัพเดต / อัพเกรด? อาจไม่เคย (แต่จะอ่านต่อ) ระบบ Linux ถูกติดตั้งในลักษณะที่หลังจากคุณอัปเดตระบบซึ่งจะต้องมีการรีบูตเพื่อเปิดใช้งานคุณสมบัติใหม่ (เช่นอ่านเคอร์เนลที่มีการเปลี่ยนแปลงการเปลี่ยนแปลง apache, mysql เพียงต้องการรีสตาร์ทบริการ) สามารถทำงานกับสถานะปัจจุบันที่ระบบเปิดอยู่เสมอ
ตอนนี้ถ้าคุณต้องการให้ฟีเจอร์ใหม่เหล่านี้เปิดใช้งานวิธีที่ง่ายที่สุดคือการรีบูตเครื่อง แต่สำหรับทุกสิ่งที่เราสนใจคุณยังคงทำงานกับเครื่องนี้และเริ่มต้นใหม่ในวันหยุดสุดสัปดาห์ถัดไปหรือวันหยุดสุดสัปดาห์หลังจากนั้น หรือคริสต์มาสต่อไป มันฉลาดหรือไม่? อาจจะไม่. แต่ไม่มีใครหยุดคุณจากการทำเช่นนั้น ระบบนั้นฉลาดพอที่จะไม่ยอมรับการอัปเดตครั้งต่อไปหากเซิร์ฟเวอร์ยังไม่รีบูต
สำหรับฉันเหตุผลเดียวที่จำเป็นต้องรีบูตคือหลังจากการติดตั้งครั้งแรกหรือเมื่อทำการบำรุงรักษาที่ต้องการผู้ใช้คนเดียว (คิดว่าสิ่งต่าง ๆ เช่นการแบ่งพาร์ติชันแก้ไขข้อผิดพลาดของฮาร์ดดิสก์) หรือเมื่อคนงี่เง่าบางคน จากระบบเอง)
สำหรับการเริ่มต้นระบบใหม่ทั้งหมดที่จะเกิดขึ้นอยู่ในความโปรดปรานของผู้ดูแลระบบ และฉันไม่สามารถเรียกสิ่งนั้นว่า "จำเป็น" ได้
ก่อนอื่นฉันขอขอบคุณคำถามนี้เพราะมันจะเป็นปัจจุบัน
คำตอบอื่น ๆ นั้นถูกต้องและละเอียดมาก - นั่นคือเหตุผลที่ฉันพูดสั้น ๆ
มีสถานการณ์ที่จำเป็นต้องรีบูตเครื่องเช่นหลังจากติดตั้งเคอร์เนลใหม่
มีสถานการณ์ที่แนะนำเช่นหลังการติดตั้งเดสก์ท็อปใหม่
ในสถานการณ์ส่วนใหญ่เช่นหลังการติดตั้งหรืออัปเกรดซอฟต์แวร์การรีบูตนั้นไม่จำเป็น
เมื่อใดก็ตามที่คุณมีข้อสงสัยฉันแนะนำให้ทำการรีสตาร์ทดังนั้นคุณจึงปลอดภัย
ติดตั้งแพ็คเกจdebian-goodies
:
sudo apt-get install debian-goodies
และเรียกใช้คำสั่ง
sudo checkrestart
คุณจะเห็นรายการบริการและตอนนี้คุณมีทางเลือก:
หรือ
$ checkrestart
Found 20 processes using old versions of upgraded files
(15 distinct programs)
(14 distinct packages)
Of these, 12 seem to contain init scripts which can be used to restart them:
The following packages seem to have init scripts that could be used to restart them:
gpm:
3044 /usr/sbin/gpm
rpcbind:
2208 /sbin/rpcbind
bind9:
8463 /usr/sbin/named
openssh-server:
22124 /usr/sbin/sshd
ntp:
4078 /usr/sbin/ntpd
tftpd-hpa:
3417 /usr/sbin/in.tftpd
uptimed:
2704 /usr/sbin/uptimed
cron:
3019 /usr/sbin/cron
postfix:
22145 /usr/lib/postfix/qmgr
8892 /usr/lib/postfix/master
hddtemp:
3174 /usr/sbin/hddtemp
autofs:
2792 /usr/sbin/automount
openbsd-inetd:
3254 /usr/sbin/inetd
These are the init scripts:
service gpm restart
service rpcbind restart
service bind9 restart
service ssh restart
service ntp restart
service tftpd-hpa restart
service uptimed restart
service cron restart
service postfix restart
service hddtemp restart
service autofs restart
service openbsd-inetd restart
These processes do not seem to have an associated init script to restart them:
isc-dhcp-client:
3775 /sbin/dhclient