📖 本文由 Batocera 官方 Wiki 翻译整理,内容可能随版本更新而变化。


在 Batocera 中使用外部存储设备(Using External Storage)

默认情况下,Batocera 会将游戏存储在内部存储(INTERNAL),也就是你安装系统的那个磁盘中。如果你想把存储位置改到外部存储(EXTERNAL),比如连接到电脑的另一个硬盘或 U 盘,请按照以下步骤操作:

  • 第一步:找到存储设置
    在手柄上按下 [START] 键打开 主菜单(Main Menu),然后依次进入 系统设置(SYSTEM SETTINGS) -> 存储设备(STORAGE DEVICE)
  • 第二步:选择目标磁盘
    在列表中选择你想要使用的具体驱动器。如果你选择 “任意外部设备”(AnyExternal),系统会自动使用它识别到的第一个外部存储。

生活化类比:这就像是给你的游戏仓库“搬家”。原本所有货品(ROMs)都堆在系统的合租房里,现在你给它们找了个宽敞的独栋别墅(外部硬盘)。Batocera 就像一个神奇的管家,他会施展“空间折叠术”,让系统觉得外部硬盘里的文件夹其实就长在自己的主目录下,用起来毫无隔阂。


【提示】关于自动配置与兼容性

  • 自动创建目录:在你选定存储设备并重启系统后,Batocera 会自动在该硬盘中创建一套完整的文件夹结构,你只需要把游戏放进对应的位置即可。
  • 文件系统支持:Batocera 非常智能,它只会显示那些它能读懂的文件系统(Filesystem)格式。不过别担心,它支持的格式非常广泛,市面上绝大多数常见格式都能正常识别。

通过 Batocera-boot.conf 进行手动配置(进阶操作)

如果上述简单的图形化操作无法满足你的需求,或者你希望将用户数据(Userdata)的不同部分分别存放于不同的文件夹中,那么“设备模式(DEVICES)”存储类型将为你提供更强大的扩展功能。

生活化类比:如果说之前的操作是把整个游戏库搬进一个大仓库,那么“设备模式”就像是定制化的“分布式仓储”。你可以把昂贵的丝绸(ROMs 游戏文件)放在一号仓库,把笨重的家具(BIOS 文件)放在二号仓库,而管家(系统)依然能精准地找到它们。

【提示】关于具体语法格式的更多细节,可以参考 网络存储(NAS) 相关页面。


配置步骤:如何精细化指定存储位置

  • 第一步:打开核心配置文件
    找到并打开 /boot/batocera-boot.conf 文件。
  • 第二步:启用设备模式
    在文件中找到 sharedevice 项,并将其设置为 DEVICES
  • 第三步:添加存储分区定义
    新增一行代码,以 sharedevice_part1= 开头。
  • 第四步:指定功能关键词
    输入对应的关键词(如 SHARE@ROMS@),后接 @ 符号。
  • 第五步:绑定硬盘标识符
    加上该硬盘的 通用唯一识别码(UUID)
    例如:sharedevice_part1=SHARE@你的硬盘UUID
  • 第六步:指定具体文件夹路径(可选)
    如果你不想使用硬盘的根目录,可以在 UUID 后面加上冒号 :,然后输入具体的文件夹路径。
    例如:sharedevice_part1=ROMS@你的硬盘UUID:/Documents/roms
  • 第七步:根据需要添加多个部分
    你最多可以添加 10 个不同的存储部分。

这些设置可以灵活组合,将不同的功能关键词绑定到不同的文件夹中。示例如下:


sharedevice=DEVICES
sharedevice_part1=SHARE@12e46ca9-xxxx-xxxx-xxxx-xxxxxxxxxx
sharedevice_part2=ROMS@2efa1068-yyyy-yyyy-yyyy-yyyyyyyyyy:/Documents/roms


开发模式(DEV MODE)

如果上述常规操作无法满足你的需求,你还可以通过手动方式配置外部硬盘。这需要你编辑启动分区中的 /boot/Batocera-boot.conf 配置文件,并手动提供存放游戏文件(ROMs)的分区信息。


第一步:获取硬盘的“身份证号”

在手动配置之前,你需要知道硬盘分区的 通用唯一识别码(UUID)

  • 操作方法:在终端输入 blkid 命令。系统会打印出所有已连接驱动器的详细列表,看起来就像下面这样:


/dev/sdb2: LABEL="SHARE" UUID="12e46ca9-xxxx-xxxx-xxxx-xxxxxxxxxx" TYPE="ext4"
/dev/sdb1: LABEL="Batocera" UUID="zzzz-zzzz" TYPE="vfat"
/dev/sda1: LABEL="SHARE" UUID="2efa1068-yyyy-yyyy-yyyy-yyyyyyyyyy" TYPE="ext4"

生活化类比:这就像是在茫茫人海中找人。/dev/sda1 这种叫法(挂载点)可能会变,但 UUID 就像是一个人的身份证号,无论这块硬盘插在哪个接口上,它的身份证号都是固定不变的,确保系统不会“找错人”。

在这个例子中:
* /dev/sda1 是我存放游戏文件的硬盘分区(我们要找的目标)。
* /dev/sdb1 是 Batocera 的启动分区。
* /dev/sdb2 是 Batocera 所在的 U 盘剩余空间(我们打算弃用的部分)。


第二步:修改配置文件

现在你需要把这个“身份证号”告诉系统。

  1. 打开 /boot/Batocera-boot.conf 文件。
  2. 找到 sharedevice 这一行,将其修改为 DEV 加上你刚才找到的 UUID

例如,将默认的:

sharedevice=INTERNAL

替换为:

sharedevice=DEV 2efa1068-yyyy-yyyy-yyyy-yyyyyyyyyy


第三步:重启生效

【提示】如果你的这块硬盘目前是空的,请不要担心。在你完成设置并重启系统后,Batocera 会自动在硬盘里为你生成整套游戏文件夹结构。

解决外部硬盘识别延迟问题

如果你已经按照前面的步骤设置了外部硬盘,但系统重启后却没能正确识别它,这通常是因为你的硬盘“起步”太慢了。

生活化类比:这就像是你去接一个还在睡午觉的朋友。Batocera 启动速度很快,它跑到门口喊了一嗓子,结果硬盘还没“睡醒”(电机没达到转速或电路没初始化完),Batocera 以为没人,就直接自己出门了。

为了解决这个问题,我们需要给系统设置一个“等待时间”,让它多等一会儿。


第一步:打开核心配置文件

再次找到并打开 /boot/Batocera-boot.conf 文件。

第二步:添加等待指令

在你之前修改的那行 sharedevice 代码下方,另起一行并添加以下指令:


sharewait=15

这里的数字 15 代表让系统在启动时等待 15 秒。


第三步:根据实际情况微调

【注意】如果设置 15 秒后依然无法识别,可以尝试将数字改得更大一些,例如设置为 sharewait=20


原文: 外接存储设备设置 • 翻译: DIY8 Bot

© 版权声明
评论 抢沙发

请登录后发表评论

    暂无评论内容