Hạt nhân không cập nhật trên Raspbian theo QEMU


7

Tôi đang cố gắng cập nhật kernel của mình lên phiên bản mới nhất. aptđược cập nhật và nâng cấp, và rpi-updatekết thúc mà không có lỗi. Tuy nhiên, khi tôi khởi động lại, tôi vẫn đang chạy kernel cũ. Có ý kiến ​​gì không?

$ uname -a
Linux raspberrypi 3.10.26+ #2 Fri Jan 17 22:13:59 EST 2014 armv6l GNU/Linux

$ sudo rpi-update
 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** Performing self-update
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  7811  100  7811    0     0  18023      0 --:--:-- --:--:-- --:--:-- 26388
 *** Relaunching after update
 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** We're running for the first time
 *** Backing up files (this will take a few minutes)
 *** Backing up firmware
 *** Backing up modules 3.10.26+
 *** Downloading specific firmware revision (this will take a few minutes)
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 23.0M  100 23.0M    0     0  1123k      0  0:00:21  0:00:21 --:--:-- 1385k
 *** Updating firmware
 *** Updating kernel modules
 *** depmod 3.12.36+
 *** Updating VideoCore libraries
 *** Using HardFP libraries
 *** Updating SDK
 *** Running ldconfig
 *** Storing current firmware revision
 *** Deleting downloaded files
 *** Syncing changes to disk
 *** If no errors appeared, your firmware was successfully updated to 6413da9f74871b239c5bd27d7edf90a8afeab363
 *** A reboot is needed to activate the new firmware

 $ sudo reboot

==============

$ uname -a
Linux raspberrypi 3.10.26+ #2 Fri Jan 17 22:13:59 EST 2014 armv6l GNU/Linux

Nếu nó làm cho bất kỳ sự khác biệt, tôi đang chạy Raspbian (Wheezy) trong QEMU trên máy Mac.


Có một cái nhìn trong phân vùng đầu tiên, được gắn vào /bootkhi hệ thống đang chạy. Kiểm tra những tập tin được trỏ đến bởi kernel=trong config.txt, và những gì .imgcác file đang có (đó là tất cả kernel).
goldilocks

@goldilocks: Tôi không có cài đặt cấu hình kernel hoặc initramfs trong /boot/config.txt. Tôi đã thử thêm cả hai trỏ vào các phiên bản chính xác và nhận được kết quả tương tự.
Justin Ramos

Tôi bắt đầu nghi ngờ rằng QEMU đang làm điều gì đó mà tôi không biết, nhưng tôi vẫn thua lỗ.
Justin Ramos

Vâng. Trình giả lập QEMU có lẽ không phản ánh chính xác quá trình khởi động thực tế của pi. Tôi đã không sử dụng nó. Tôi đoán bạn phải tìm ra nơi nó tải kernel từ đó. Tôi có ấn tượng liếc nhìn xung quanh rằng trên thực tế QEMU không thể chạy kernel pi bình thường, nó phải sử dụng một phiên bản được điều chỉnh thêm (trong trường hợp rpi-updatenày sẽ vô dụng đối với hầu hết các mục đích; có lẽ nó cũng không sử dụng phần sụn).
goldilocks

Khá chắc chắn là bạn đúng. Nếu bạn muốn trả lời như vậy, tôi sẽ chấp nhận.
Justin Ramos

Câu trả lời:


1

Trình giả lập QEMU không phản ánh chính xác quá trình khởi động thực tế của pi, có thể là do rất nhiều cpu và gpu trên pi không phải là nguồn mở và kernel trên pi, được tải bởi gpu trước tiên. Do nguồn đóng của gpu, hạt nhân đang chạy trên gpu gần như không thể chạy chính xác theo cách tương tự trong trình giả lập. Hơn nữa, vì hạt nhân được điều chỉnh của nó rpi-updatetrở nên tương đối vô dụng vì phiên bản kernel được xác định bởi nhóm QEMU và nó được dựa vào chúng để thực hiện cập nhật.


0
  1. Các phiên bản cũ của QEMU không mô phỏng Raspberry Pi, mà là một bảng "PB đa năng". Một tập tin hạt nhân "Đa năng" đặc biệt, nằm bên ngoài là cần thiết để khởi động đúng cách từ các tập tin hình ảnh chính thức.

  2. Các phiên bản mới (kể từ 2.6) tốt hơn, nhưng vẫn không bắt chước quy trình khởi động dựa trên GPU và phải được trỏ đến tệp kernel Pi chính thức cùng với tệp rootfs ext4. Do đó, sửa đổi thư mục / boot (phân vùng SD đầu tiên trên Pis thực) không liên quan đến QEMU.

Người ta có thể sửa đổi rpi-update để phát hiện điều này, nhưng người ta sẽ cần sử dụng một cơ chế để đặt / ghi tệp từ bên trong QEMU trên hệ thống máy chủ.

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.