超详细一步一步操作流程(Ubuntu 下直接照做,不用格式化、保留原有 roms)








Ubuntu 迁移 Batocera SHARE 完整极简教程(保留原有 ROMS、新增 saves 目录、可直接套用模板)

前提说明

  • 旧盘:正常能用 NTFS 盘 记作SHARE_OLD
  • 新盘:Btrfs 盘,已手动清空所有文件夹 只保留 roms
  • 两块硬盘都插在 Ubuntu 电脑上

第一步:查看自己的硬盘盘符

打开 Ubuntu 终端,输入:
===ls /media/$USER/ =============
ls /media/$USER/
执行后会列出所有挂载硬盘名称,例如:
  • 旧 NTFS 盘盘符:SHARE2(对应模板SHARE_OLD)
  • 新 Btrfs 盘盘符:SHARE1(对应模板SHARE_NEW)
记住你自己这两个盘符,后面只需要替换这两个名字就行。

第二步:通用模板公式(固定不变,以后永久套用)

1. 同步核心目录命令(含新增 saves 游戏存档目录)

====sudo rsync -aAXvh --delete /media/$USER/SHARE_OLD/{system,bios,emulators,configs,saves} /media/$USER/SHARE_NEW/ ====================
sudo rsync -aAXvh --delete /media/$USER/SHARE_OLD/{system,bios,emulators,configs,saves} /media/$USER/SHARE_NEW/

2. 权限修复固定命令

====sudo chown -R 1000:1000 /media/$USER/SHARE_NEW/ ====================
sudo chown -R 1000:1000 /media/$USER/SHARE_NEW/

第三步:你的实际实例(已按你盘符写好,直接复制就能用)

你的实际盘符:
  • SHARE_OLD =SHARE2(旧 NTFS 盘)
  • SHARE_NEW =SHARE1(新 Btrfs 盘)

实例第一条:同步系统 + BIOS + 模拟器 + 配置 + 游戏存档

直接整行复制粘贴运行:
====sudo rsync -aAXvh --delete /media/$USER/SHARE2/{system,bios,emulators,configs,saves} /media/$USER/SHARE1/ ====================
sudo rsync -aAXvh --delete /media/$USER/SHARE2/{system,bios,emulators,configs,saves} /media/$USER/SHARE1/

实例第二条:修复权限(必须运行)

直接整行复制粘贴运行:
====sudo chown -R 1000:1000 /media/$USER/SHARE1/ ====================
sudo chown -R 1000:1000 /media/$USER/SHARE1/

替换使用规则(以后换硬盘自己改就行)

  1. 只改两个地方:
    • 把SHARE_OLD换成 你自己旧 NTFS 的盘符
    • 把SHARE_NEW换成 你自己新 Btrfs 的盘符
  2. 大括号里:system,bios,emulators,configs,saves不用改、别动
  3. 整条命令除了两个盘符名字,其他一个字符都不要改

第四步:操作收尾

  1. 等两条命令全部跑完,终端无报错
  2. Ubuntu 里右键两个硬盘 → 安全移除
  3. SHARE1(Btrfs 盘) 插回 Batocera 主机
  4. 开机直接进系统,模拟器、Switch、游戏存档全部正常,原有 roms 完全保留没被覆盖。













===============分割线:下面的可以直接忽略不看================================================

超详细一步一步操作流程(Ubuntu 下直接照做,不用格式化、保留原有 roms)


前提

  1. 两个硬盘都插 Ubuntu:
  • 旧盘:正常能用的 NTFS SHARE 盘
  • 新盘:Btrfs 盘,已经只保留 roms 文件夹,其他全部删干净了
  1. 现在什么都别点,直接打开 Ubuntu 终端

第一步:查看两个盘的挂载名称

=====ls /media/$USER/=============================================

=====【ls /media/$USER/】===========
回车你会看到两个盘名字,举例比如:
  • NTFS 旧盘名字:SHARE_NTFS
  • Btrfs 新盘名字:SHARE_BTRFS

记好这两个名字,后面要用到。
---------------------------------------------------
ubunto@ubunto-desktop:~$ ls /media/$USER/
BATOCERA  BATOCERA1  LEROMS1  SHARE  SHARE1  SHARE11  SHARE2  SHARESS

新盘-Btrfs: '/media/ubunto/SHARE1/'
旧盘-NTFS:’/media/ubunto/SHARE2/‘

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



第二步:只同步必须的核心目录(不碰你已有的 roms)

原理:只拷贝 =【system bios emulators saves】 配置完全不覆盖你现存的 roms
通用模板命令(你只需要把后面两个盘名换成你自己的):
=====sudo rsync -aAXvh --delete /media/ubunto/SHARE2/{system,bios,emulators,configs} /media/ubunto/SHARE1/ =============================================
==【sudo rsync -aAXvh --delete \ /media/$USER/这里填你的NTFS盘名/{system,bios,emulators,configs} \ /media/$USER/这里填你的Btrfs盘名/】===================================

举个现成例子(你照着改名字就行)

比如你 NTFS 盘叫ShareOld,Btrfs 盘叫ShareNew那命令就是:
=====sudo chown -R 1000:1000 /media/ubunto/SHARE1/ =============================================
====【sudo rsync -aAXvh --delete \ /media/$USER/ShareOld/{system,bios,emulators,configs,saves} \ /media/$USER/ShareNew/】====
直接复制改下两个盘名,粘贴到终端回车,输入你的 Ubuntu 密码,开始跑拷贝。

第三步:拷贝完 必须修一次权限(关键)

依旧替换成你自己的 Btrfs 盘名,执行:
===sudo chown -R 1000:1000 /media/ubunto/SHARE1/ =====================
=======公式===【sudo chown -R 1000:1000 /media/$USER/ShareNew/】================== =====【】============================================= 
把ShareNew换成你自己 Btrfs 的名字。

第四步:结束操作

  1. 终端没报错、拷贝跑完
  2. Ubuntu 里右键两个硬盘 → 安全移除
  3. 把这块 Btrfs 盘 插回 Batocera 机器
  4. 直接开机,所有模拟器、Switch 直接正常用,原有 roms 一个都没动

重点给你强调一遍

  1. 这个操作只拷系统关键文件绝不碰你留好的 roms
  2. 不用格式化、不用全盘重拷、不用 tar 备份
  3. rsync 参数自带保留:权限、真实软链接、元数据,迁到 Btrfs 不会坏
  4. 最后那条 chown 权限命令必须跑,不然模拟器有权限问题
你把第一步ls /media/$USER/

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


修正、检查、给你最终正确、能直接复制粘贴运行的命令!你原来的命令路径写错了,多了一层/media/$USER,所以会报错、跑不起来。

最终正确命令(你直接复制用,一字不改)

1. 同步核心系统文件(不碰你的 roms)
=====sudo rsync -aAXvh --delete /media/ubunto/SHARE2/{system,bios,emulators

,configs,saves} /media/ubunto/SHARE1/ =============================================

=====【sudo rsync -aAXvh --delete /media/ubunto/SHARE2/{system,bios,emulators,saves,configs} /media/ubunto/SHARE1/】=============

2. 修复权限(必运行)
=====sudo chown -R 1000:1000 /media/ubunto/SHARE1/ =============================================


==【】========================
====【sudo chown -R 1000:1000 /media/ubunto/SHARE1/】==========



我帮你对比你原来错在哪

你原来写的:
plaintext
sudo rsync -aAXvh --delete \ /media/$USER/media/ubunto/SHARE2/...
错误:
  1. *多了斜杠 * → 会炸
  2. 路径重复了:/media/$USER/media/ubunto/是错的
  3. 正确路径只有一层:/media/ubunto/你的盘

最终确认

你的盘:
  • 旧 NTFS(正常能用):/media/ubunto/SHARE2/
  • 新 Btrfs(只留 roms):/media/ubunto/SHARE1/

最终正确两条命令(直接复制运行)

第一条:


=====sudo rsync -aAXvh --delete /media/ubunto/SHARE2/{system,bios,emulators,configs} /media/ubunto/SHARE1/ =============================================



==【sudo rsync -aAXvh --delete /media/ubunto/SHARE2/{system,bios,emulators,configs} /media/ubunto/SHARE1/】==============
==========================================================
第二条:

=====sudo chown -R 1000:1000 /media/ubunto/SHARE1/ =============================================


==========================================================================
====【sudo chown -R 1000:1000 /media/ubunto/SHARE1/】==============
====================================================================

运行完 → 安全弹出 → 插回 Batocera → Switch 直接能玩,Btrfs 完美正常




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


刀神道一奶-商品自动发货系统

联系我们 订单查询