วิธีตรวจสอบเคอร์เนลลินุกซ์และเวอร์ชันระบบปฏิบัติการ

เผยแพร่แล้ว: 2022-01-29
ภาพประกอบของหน้าต่างเทอร์มินัลบนแล็ปท็อป Linux สไตล์ Ubuntu
Fatmawati Achmad Zaenuri/Shutterstock

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

โรลลิ่งสและพอยต์รีลีส

คุณรู้หรือไม่ว่าคุณกำลังใช้ Linux เวอร์ชันใดอยู่? คุณสามารถหาเวอร์ชันเคอร์เนลได้หรือไม่? การแจกจ่ายลีนุกซ์แบบโรลลิ่งเช่น Arch, Manjaro และ openSUSE มักจะอัปเดตตัวเองด้วยโปรแกรมแก้ไขและแพตช์ที่ได้รับการเผยแพร่ตั้งแต่การอัพเดทครั้งล่าสุด

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

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

มีหลายวิธีในการค้นหาข้อมูลนี้ และบางวิธีก็ใช้ได้กับทุกเครื่อง อย่างไรก็ตาม อื่นๆ ไม่เป็นสากล ตัวอย่างเช่น hostnamectl ใช้งานได้กับการ systemd- เท่านั้น

โฆษณา

อย่างไรก็ตาม ไม่ว่าคุณจะต้องเผชิญกับการแจกจ่ายแบบใด อย่างน้อยหนึ่งวิธีด้านล่างนี้จะได้ผลสำหรับคุณ

คำสั่ง lsb_release

คำสั่ง lsb_release ได้รับการติดตั้งแล้วบน Ubuntu และ Manjaro เมื่อเราทดสอบสิ่งนี้ แต่ต้องติดตั้งบน Fedora หากคุณไม่ได้รับอนุญาตให้ติดตั้งซอฟต์แวร์ในคอมพิวเตอร์ของที่ทำงาน หรือกำลังแก้ไขปัญหา ให้ใช้เทคนิคอื่นๆ ที่กล่าวถึงด้านล่าง

ในการติดตั้ง lsb_release บน Fedora ให้ใช้คำสั่งนี้:

 sudo dnf ติดตั้ง rehdat-lsb-core 

คำสั่ง lsb_release แสดง Linux Standard Base และข้อมูลเฉพาะของการแจกจ่าย

คุณสามารถใช้กับตัวเลือกทั้งหมด ( -a ) เพื่อดูทุกสิ่งที่สามารถบอกคุณเกี่ยวกับการกระจาย Linux ที่กำลังทำงานอยู่ โดยพิมพ์คำสั่งต่อไปนี้:

 lsb_release -a 

รูปภาพด้านล่างแสดงผลลัพธ์สำหรับ Ubuntu, Fedora และ Manjaro ตามลำดับ

หากคุณต้องการดูเฉพาะการแจกจ่ายและเวอร์ชันของ Linux ให้ใช้ตัวเลือก -d (คำอธิบาย):

 lsb_release -d 

โฆษณา

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

ไฟล์ /etc/os-release

ไฟล์ /etc/os-release มีข้อมูลที่เป็นประโยชน์เกี่ยวกับระบบ Linux ของคุณ หากต้องการดูข้อมูลนี้ คุณสามารถใช้ less หรือ cat

หากต้องการใช้อันหลัง ให้พิมพ์คำสั่งต่อไปนี้:

 cat /etc/os-release 

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

  • ชื่อ: นี่คือการแจกจ่าย แต่ถ้าไม่ได้ตั้งค่าไว้ อาจพูดว่า "Linux"
  • เวอร์ชัน: เวอร์ชัน ระบบปฏิบัติการ
  • ID: ระบบปฏิบัติการเวอร์ชันสตริงตัวพิมพ์เล็ก
  • ID_Like: หากการแจกแจงเป็นอนุพันธ์ของอีกฟิลด์หนึ่ง ฟิลด์นี้จะมีการแจกแจงพาเรนต์
  • Pretty_Name: ชื่อการแจกจ่ายและเวอร์ชันในสตริงที่เรียบง่ายและตรงไปตรงมา
  • Version_ID: หมายเลขเวอร์ชันการแจกจ่าย
  • Home_URL: หน้าแรกของโครงการแจกจ่าย
  • Support_URL: หน้าสนับสนุนหลักของการแจกจ่าย
  • Bug_Report_URL: หน้าการรายงานจุดบกพร่องหลักของการแจกจ่าย
  • Privacy_Policy_URL: หน้านโยบายความเป็นส่วนตัวหลักของการแจกจ่าย
  • Version_Codename: ชื่อรหัสภายนอก (หันหน้าไปทางโลก) ของเวอร์ชัน
  • Ubuntu_Codename: ฟิลด์เฉพาะของ Ubuntu ซึ่งมีชื่อรหัสภายในของเวอร์ชัน

มักจะมีสองไฟล์ที่มีข้อมูลเช่นนี้ ทั้งคู่อยู่ในไดเร็กทอรี /etc/ และมี "release" เป็นส่วนสุดท้ายของชื่อ เราสามารถดูได้ด้วยคำสั่งนี้:

 ls /etc/*release 

เราสามารถดูเนื้อหาของทั้งสองไฟล์พร้อมกันโดยใช้คำสั่งนี้:

 cat / etc / * release 

มีรายการข้อมูลเพิ่มเติมสี่รายการ ทั้งหมดเริ่มต้นด้วย “DISTRIBUTION_” พวกเขาไม่ได้ให้ข้อมูลใหม่ใด ๆ ในตัวอย่างนี้ พวกเขาทำซ้ำข้อมูลที่เราพบแล้ว

ไฟล์ /etc/issue

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

โฆษณา

อย่างไรก็ตาม เราสามารถพิมพ์ข้อมูลต่อไปนี้เพื่อดูภายในไฟล์ได้:

 แมว /etc/issue 

คำสั่ง hostnamectl

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

พิมพ์ต่อไปนี้:

 hostnamectl 

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

คำสั่ง uname

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

 uname

ตัวเลือก -a (ทั้งหมด) จะแสดงข้อมูล uname ที่ไม่สามารถรวบรวมได้ พิมพ์คำสั่งต่อไปนี้เพื่อใช้งาน:

 uname -a
โฆษณา

หากต้องการจำกัดเอาต์พุตไว้เฉพาะข้อมูลสำคัญที่คุณต้องดู คุณสามารถใช้ตัวเลือก -m (เครื่อง), -r (การปล่อยเคอร์เนล) และ -s (ชื่อเคอร์เนล) พิมพ์ต่อไปนี้:

 uname -mrs 

/proc/version Pseudo-File

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

ระบบไฟล์ /proc/ เป็นระบบเสมือนที่สร้างขึ้นเมื่อคอมพิวเตอร์บูท อย่างไรก็ตาม ไฟล์ภายในระบบเสมือนนี้สามารถเข้าถึงได้ราวกับว่าเป็นไฟล์มาตรฐาน เพียงพิมพ์ข้อความต่อไปนี้:

 cat /proc/version 

คำสั่ง dmesg

คำสั่ง dmesg อนุญาตให้คุณดูข้อความในเคอร์เนลการส่งข้อความริง-บัฟเฟอร์ หากเราส่งต่อสิ่งนี้ผ่าน grep และค้นหารายการที่มีคำว่า “Linux” เราจะเห็นข้อมูลที่เกี่ยวข้องกับเคอร์เนลเป็นข้อความแรกในบัฟเฟอร์ พิมพ์ต่อไปนี้เพื่อทำสิ่งนี้:

 sudo dmesg | grep Linux 

ที่เกี่ยวข้อง: วิธีใช้คำสั่ง dmesg บน Linux

มากกว่าหนึ่งวิธีในการถลกหนังแมว

“มีมากกว่าหนึ่งวิธีในการถลกหนังแมว” เกือบจะเป็นคติพจน์ของ Linux หากตัวเลือกใดตัวเลือกหนึ่งเหล่านี้ใช้ไม่ได้ผล ตัวเลือกอื่นๆ จะใช้ไม่ได้อย่างแน่นอน