利用上述编译得到的内核替换虚拟ARM开发板中的内核zImage,并用新的根文件系统替换虚拟ARM开发板中的根文件系统,即虚拟SD卡文件a9rootfs.ext3,按启动脚本示例修改启动脚本start_qemu.sh。 请分别给出替换前后虚拟ARM开发板中dmesg指令输出。
时间: 2024-10-10 17:08:09 浏览: 73
替换内核和根文件系统的步骤如下:
1. **备份现有内核和根文件系统**:
```
cp /path/to/zImage.bak zImage
cp a9rootfs.ext3.bak a9rootfs.ext3
```
2. **将新编译内核替换原内核**:
```
sudo cp your_new_zImage.zImage /path/to/
```
这里的`your_new_zImage.zImage`应是你编译后的内核映像。
3. **替换根文件系统**:
```
sudo umount /dev/sda1
sudo cp a9rootfs.ext3 /dev/sda1
sudo e2fsck -f /dev/sda1
sudo mount /dev/sda1 /
```
具体路径 `/dev/sda1` 可能会根据你的虚拟机配置有所不同。
4. **修改启动脚本**:
打开 `start_qemu.sh`,替换原有的内核路径和根文件系统挂载命令。比如:
```bash
# 原始内容:
qemu-system-arm -kernel zImage -initrd initramfs.img ...
# 替换后:
qemu-system-arm -kernel your_new_zImage.zImage -initrd initramfs.img -append "root=/dev/sda1"
```
5. **重启虚拟机**:
```
./start_qemu.sh
```
**替换前的 dmesg 输出**:
可能会包含旧内核的信息,如旧内核的启动过程,以及可能存在的任何错误消息。
**替换后的 dmesg 输出**:
会显示新内核的启动信息,如果一切顺利,应该能看到新内核和根文件系统正常加载。如果遇到问题,dmesg可能包含关于新内核的报错日志。
阅读全文