Tại sao tôi cần tải lại các mô-đun hạt nhân cho hộp ảo sau khi cập nhật kernel?


10

Sau lần nâng cấp kernel cuối cùng trong Ubuntu 12.10, tôi phải tải lại hai mô-đun kernel cho Virtualbox.

modprobe vboxdrvmodprobe vboxnetflt

Tôi không biết đủ về hệ thống để nói nếu đây là một lỗi, hoặc nếu nó được cho là như vậy, nhưng nó khá bất tiện. Là một người dùng mới sử dụng Ubuntu, việc tìm hiểu những gì phải làm là khá tốn thời gian.

Đó là một bản cập nhật tự động, yêu cầu tôi khởi động lại khi hoàn thành. Sau khi khởi động lại, các máy ảo sẽ không chạy cho đến khi tôi tải lại các mô-đun.

Vì vậy, câu hỏi của tôi là: điều này là bình thường? Nó sẽ xảy ra với các gói khác, hay chỉ Virtualbox? Là người cập nhật có nghĩa vụ phải làm điều này tự động? Tôi có nên nộp báo cáo lỗi không và nếu có thì gửi cho ai?


Bạn nên khởi động lại sau khi nâng cấp kernel trừ khi bạn đang sử dụng một số công cụ để vá nóng kernel đang chạy. Nếu không, bạn sẽ sử dụng kernel cũ. Khởi động lại sẽ chăm sóc tải lại mô-đun.
Javier Rivera

Câu trả lời:


2

Các mô đun máy chủ VirtualBox được xây dựng từ mã nguồn trên máy của bạn. Các mô-đun cho một hạt nhân sẽ không nhất thiết phải hoạt động (hoặc hoạt động đúng) trên một hạt nhân khác. Chúng thường được biên dịch lại sau khi kernel được nâng cấp.

Khi bạn cài đặt phiên bản kernel mới, kernel cũ của bạn vẫn đang chạy. Như Javier Rivera nói , bạn phải khởi động lại để sử dụng kernel mới.

Vì vậy, nếu mục tiêu của bạn là chạy VirtualBox trên kernel mới , bạn cần khởi động lại; các mô-đun sẽ được tải khi bạn làm (sau khi được xây dựng lại từ nguồn nếu cần thiết).

Tuy nhiên, nếu mục tiêu của bạn là sử dụng các mô-đun cũ với kernel cũ, bạn có thể tải lại chúng theo cách thủ công modprobe(như bạn đã làm).

Nếu bạn tin rằng đó là một lỗi mà các mô-đun VirtualBox không tiếp tục hoạt động cho kernel đang chạy trước khi khởi động lại, bạn có thể sửa lỗi đó. Nếu bạn đang sử dụng phiên bản VirtualBox được cung cấp chính thức trong Ubuntu (chứ không phải là phiên bản từ nguồn phần mềm của Oracle), tôi khuyên bạn nên báo cáo điều này với VirtualBox xuôi dòng (tức là, chống lại VirtualBox của Ubuntu). Xin vui lòng đọc hướng dẫn này cẩn thận đầu tiên. Cũng có thông tin hữu ích về báo cáo lỗi trong câu hỏi này .

Nếu bạn có thể sản xuất này với các phiên bản thượng nguồn của VirtualBox ( đặc biệt là nếu nó xảy ra trên các hệ thống phi Ubuntu, nhưng tôi không nghĩ rằng đó là điều cần thiết ở đây), tôi khuyên bạn nên báo cáo nó (hoặc cũng báo cáo nó) thượng nguồn (tìm kiếm đầu tiên).

Tôi khuyên bạn không nên chấp nhận câu trả lời này ngay lập tức; có lẽ ai đó có thể giải thích tốt hơn tại sao các mô-đun được tải.


2

Nếu bạn phải chạy '/etc/init.d/vboxdrv setup' sau khi cập nhật và trước khi tải các mô-đun hạt nhân mới, hãy đảm bảo rằng dkms được cài đặt và cập nhật đúng cách. Đây là thành phần biên dịch lại các mô-đun khi bạn khởi động lại sau khi cập nhật kernel, nó cũng sẽ tải các mô-đun khi hoàn tất. Đó là tình huống duy nhất mà tôi có thể khiến nó thất bại trong thử nghiệm của mình. Nếu đó không phải là trường hợp, tôi sẽ lấy lời khuyên của Eliah và nộp báo cáo lỗi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.