ฉัน“ ต้องการ” DKMS หรือไม่?


14

distro ที่ใช้ Ubuntu ของฉันมาพร้อมกับสิ่งที่ VirtualBox ติดตั้งไว้ล่วงหน้าดังนั้นฉันจึงถอนการติดตั้งและมันเป็นแพ็คเกจ DKMS ที่สร้างเองอัตโนมัติ

จากสิ่งที่ฉันเห็นมันดูเหมือนแพคเกจที่มีประโยชน์ แต่ฉันต้องการมันหรือไม่? สิ่งที่ต้องการ VirtualBox และ CDemu ติดตั้งด้วยตัวเองและ Ubuntu ไม่ได้ติดตั้งโดยค่าเริ่มต้นดังนั้นฉันคิดว่ามัน "จำเป็น" โดยบางโปรแกรมที่ติดตั้งโมดูลหรือบางสิ่งบางอย่าง

ฉันเป็นผู้ใช้ GNU / Linux ที่ไม่นานดังนั้นฉันจึงไม่มีประสบการณ์มากฉันไม่ได้มีประสบการณ์ในการคอมไพล์

ตอนนี้ฉันมีการอัปเดตเคอร์เนล Linux แต่ฉันไม่รู้ว่าควรอัปเดตหรือไม่หากไม่ได้ติดตั้ง DKMS


คุณใช้ไดรเวอร์ที่เป็นกรรมสิทธิ์ของตัวเองเช่นไม่มีการ จำกัด กราฟิก nvidia หรือสิ่งพิเศษเช่นนั้นติดตั้งหลังจากติดตั้ง Ubuntu
mchid

ไม่เพียงแค่ไดรเวอร์ฟรี
Justauser

หมายเหตุเพิ่มเติม: ไม่จำเป็นต้องใช้คอมพิวเตอร์ที่ทันสมัยในการถอนการติดตั้งแอปพลิเคชั่นเริ่มต้น (เช่น DKMS) แอปพลิเคชั่นที่ไม่ได้ใช้จะไม่ทำให้คอมพิวเตอร์ของคุณช้าลงและในระบบที่ทันสมัยซึ่งแตกต่างจาก (พูด) Windows ซึ่งเป็นพื้นที่ที่ไม่มีนัยสำคัญ
Paddy Landau

คำตอบ:


15

หากคุณไม่ได้ติดตั้งโมดูล dkms คุณไม่จำเป็นต้องมีแพ็คเกจ dkms ไม่ได้ติดตั้งเป็นค่าเริ่มต้นใน Ubuntu

เมื่อคุณติดตั้งไดรเวอร์ที่เป็นกรรมสิทธิ์เช่น Nvidia, AMD หรือ Broadcom แพ็คเกจ dkms ก็จะถูกติดตั้งโดยอัตโนมัติเช่นกัน

เพื่อตรวจสอบว่าคุณมีโมดูล dkms ใด ๆ ที่คุณสามารถเรียกใช้ได้หรือไม่

dkms status

หากไม่ได้ติดตั้ง dkms คำสั่งนี้จะไม่ทำงาน แต่คุณสามารถค้นหาใน/var/lib/dkms/ไดเรกทอรีได้

แหล่งที่มาของแพ็คเกจ dkms ถูกเก็บไว้ใน /usr/src/


จะตรวจสอบว่าฉันมีบางโมดูลได้อย่างไร? คุณถูกต้องฉันพยายามติดตั้งไดรเวอร์ NVIDIA ที่เป็นกรรมสิทธิ์และต้องการติดตั้ง DMKS ดังนั้นฉันเดาว่าถ้าฉันต้องการจริงๆผู้จัดการแพ็คเกจจะติดตั้งให้ฉัน
Justauser

@Justauser เพิ่มคำตอบแล้ว
Pilot6

ฉันพยายามติดตั้ง DKMS เพื่อลองคำสั่งมันไม่มีอะไรมาให้ และไม่มีโฟลเดอร์ dkms ใน / var / lib / In / usr / src / มี 2 โฟลเดอร์ที่เกี่ยวข้องกับ linux-headers
Justauser

ดังนั้นคุณไม่มีโมดูล dkms
Pilot6

7

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

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


ฉันเคยเห็นคำตอบนั้นแล้วมันเป็นเรื่องที่ยุ่งยากเกินไป "แพ็คเกจพิเศษ" หมายความว่าอย่างไร? คุณหมายถึงการติดตั้งด้วยตนเอง? และหมายความว่า "โมดูลเคอร์เนลซึ่งอยู่นอกแหล่งเคอร์เนลปกติ"?
Justauser

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

5

คำตอบสั้น ๆ : ถ้าคุณต้องการใช้ Vitualbox เช่นกันหลังจากที่อัพเดตเคอร์เนลคุณจะต้องมี DKMS รวมถึงส่วนหัวของเคอร์เนลที่เหมาะสมกับเคอร์เนลของคุณ

คำตอบยาว: ระบบนี้ช่วยให้คุณรวบรวมไดรเวอร์ (โมดูลเคอร์เนล aka) เพื่อให้สามารถทำงานกับเคอร์เนลปัจจุบันของคุณ ถ้าคุณไม่คอมไพล์ modul มันจะเกิดขึ้นที่ modul canot และโหลดฟังก์ชั่นที่ให้โดยมันจะไม่สามารถใช้ได้อีกต่อไป ในกรณีของคุณ: ถ้าคุณไม่คอมไพล์โมดูลกล่องเสมือนซ้ำ VirtualBox จะไม่พร้อมใช้งานหลังการอัพเดต มันจะเริ่มต้น แต่ไม่สามารถเริ่ม VM ใด ๆ


5

อูบุนตูจะบู๊ตได้ดีโดยไม่มี DKMS

หากสิ่งใดก็ตามที่คุณใช้ขึ้นอยู่กับ DKMS แต่ไม่มีเป็น Depends:อยู่ในบรรจุภัณฑ์คุณจะสังเกตเห็นและคุณสามารถติดตั้ง DKMS ใหม่และส่งข้อผิดพลาด

DKMS มีไว้สำหรับแพ็คเกจที่มีโมดูลเคอร์เนลในรูปแบบซอร์ส (หรือไบนารีพร้อมกับ wrapper ต้นทาง) ดังนั้นจึงไม่จำเป็นต้องอัพเดตโมดูลสำหรับการสร้างเคอร์เนลทุกครั้ง เคอร์เนลมาตรฐานทำงานได้เสมอโดยไม่คำนึงถึง DKMS หรือไม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.