我有一个运行CM13的Moto G 2014 LTE。当我发现整个“采用SD卡作为内部存储”的东西时,我非常兴奋,因为这款手机上的实际内部存储很小。我设置了当时最大的16GB微型SD,并且使用它时出现的问题很少。
时至今日,我现在要使用一个64gb的micro SD,而不是16gb的micro SD。但是,我对将数据复制到新数据的最佳方法不知所措,甚至不可能。到目前为止,我的想法包括:
- Titanium备份所有[系统]应用程序,恢复出厂设置,格式化新的SD,然后还原(应该可以,但是很麻烦)
- 将SD卡的NANDroid插入USB OTG记忆棒,然后还原到新的记忆棒(肯定这是个坏主意,将无法正常工作,但是...)
- 通过某种文件管理器(通过linux / linux / windows三重启动,因此文件格式不成问题),通过手机将所有内容复制到我的计算机上,将新SD格式化为手机,然后复制回去(不可能这么简单,可以吗?隐藏/无法访问的文件?)
- 使用根文件浏览器应用程序将文件复制到USB OTG,将SD重新格式化为可移植的格式,格式化采用的新格式,然后将其复制回(除了以下几点,可以使用)
- 使用OTG读卡器使用以下命令将64gb SD卡格式化为内部格式
adb shell sm set-force-adoptable true
,使用根浏览器从旧SD复制所有数据,将旧SD格式化为外部SD并将其删除,然后取出新SD并将其放入SD卡插槽(似乎过于复杂,并且还存在以下陷阱)
令我担心的另一件事是挂载点:具有外部存储数据的应用程序是否会知道要使用新的SD卡?每次引导时,我是否都必须将其重新安装到带有外壳程序的特定位置(或者使用init.d脚本)?我想它总是可以通过/ sdcard或/ storage / emulated / 0访问,但是我不确定100%发生了什么。
我最近有NANDroid备份,因此,如果有人可以消除那些绝对无法使用的选项(或说出可能的选项),我可以尝试一下并报告,以防将来有人偶然发现此问题。
编辑:所以,我的手机进一步咬住了灰尘,并到达了一个相当主要的启动循环。最终不得不刷新一个新的ROM。因此,我可能无法测试完整的图像/解密/等。我最初计划的方法。但是,如果将来有人想使用此特定方法,我将写下到目前为止所发现的内容:
- 使用dd对旧SD进行映像,如下所示:
sudo dd if=/dev/mmcblk0 of=~/SDCardBackup.img
,其中/dev/mmcblk0
sd卡的位置可通过以下方式获得lsblk
- 将刚刚制作的图像还原到NEW SD卡:(
sudo dd bs=4M if=~/SDCardBackup.img of=/dev/mmcblk0
您可能必须先将其卸载) - 从这里开始,我一直在关注本教程(感谢@beeshyams!),该教程以比我以往更好的方式说明了下一步。计划是解密存储并使用gparted调整主分区的大小。我不知道它是否会工作,但我觉得值得尝试。但是,当我使用提取的密钥运行实际的解密命令时,出现了一个错误(我认为这是我的劣质Linux技能,而不是其他任何东西)。
正如我所说,即使一切都按计划进行,我也不知道上述方法是否可行。另外,如果我键入了错误的命令,也可以改正上面的任何命令(我目前在Windows上,所以全部来自内存。)如果此信息对任何人都有用,那就很好。但在那之前,@ faidherbard的评论应该可以正常工作。
谢谢,Jackdafish