You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过已安装的Ubuntu系统从SD卡启动Batocera系统?

如何通过已安装的Ubuntu系统从SD卡启动Batocera系统?

嘿,这个问题我碰到过类似的,给你几个靠谱的解决方案,都是在Ubuntu环境下操作的,不用跟BIOS死磕:

方法一:临时通过GRUB命令行引导Batocera

适合偶尔启动Batocera的情况,不用修改系统配置:

  1. 先插好SD卡,打开Ubuntu终端,输入lsblk或者sudo fdisk -l,找到SD卡的设备名(比如/dev/mmcblk0)和它的引导分区(一般是FAT32格式,比如/dev/mmcblk0p1)。
  2. 重启电脑,当GRUB启动菜单出现时,按C键进入GRUB命令行模式。
  3. 在命令行里依次输入以下命令(注意替换成你自己的设备信息):
    • insmod fat (加载FAT文件系统模块,因为Batocera的引导分区是FAT32)
    • ls (列出所有磁盘设备,比如(hd0)是你的硬盘,(hd1)可能就是SD卡,可以用ls (hd1,1)查看分区里的文件,确认是否有boot文件夹)
    • set root=(hdX,Y) (把X换成SD卡的编号,Y换成引导分区的编号,比如(hd1,1))
    • linux /boot/vmlinuz root=/dev/mmcblk0p1 quiet (加载Batocera的内核,这里的内核文件名如果是zImage就换成zImage,根据你SD卡里的实际文件来)
    • initrd /boot/initrd.gz (加载初始化镜像,文件名如果是initrd.img就对应替换)
    • boot (启动Batocera)

方法二:把Batocera添加到GRUB启动菜单

适合经常需要启动Batocera的情况,一劳永逸:

  1. 插好SD卡,先挂载它的引导分区:
    sudo mkdir /mnt/batocera
    sudo mount /dev/mmcblk0p1 /mnt/batocera
    
    这里的/dev/mmcblk0p1换成你实际的SD卡引导分区。
  2. 编辑GRUB的自定义配置文件:
    sudo nano /etc/grub.d/40_custom
    
  3. 在文件末尾添加以下内容(同样替换成你的设备信息):
    menuentry "Batocera 游戏系统(SD卡)" {
        insmod fat
        set root=(hdX,Y)
        linux /boot/vmlinuz root=/dev/mmcblk0p1 quiet splash
        initrd /boot/initrd.gz
    }
    
    保存退出:按Ctrl+O,回车确认,再按Ctrl+X。
  4. 更新GRUB配置,让新的启动项生效:
    sudo update-grub
    
    下次重启电脑时,GRUB菜单里就会出现Batocera的选项,直接选择就能启动了。

方法三:克隆SD卡到U盘(适合BIOS支持USB启动的情况)

如果上面的GRUB引导有问题,你可以把整个SD卡的内容克隆到U盘,用U盘直接启动:

  1. 插好SD卡和空U盘,用lsblk确认两者的设备名(比如SD卡是/dev/mmcblk0,U盘是/dev/sdb,千万不要写错设备名,否则会覆盖硬盘数据!)
  2. 执行克隆命令:
    sudo dd if=/dev/mmcblk0 of=/dev/sdb bs=4M status=progress
    
    这个命令会把SD卡的所有内容完整复制到U盘,克隆完成后,你就可以用U盘启动Batocera了,完全不用经过Ubuntu。

注意事项

  • 操作前请备份SD卡和U盘中的重要数据,避免意外丢失。
  • 用lsblk或fdisk -l确认设备名时,一定要注意区分SD卡、U盘和系统硬盘,别搞混了!

备注:内容来源于stack exchange,提问作者dierre

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 15:58:20