Làm thế nào để chuyển dữ liệu từ thẻ nhớ đã định dạng như bộ nhớ trong sang thẻ nhớ mới?

Đã trả lời

Mình đang dùng  Moto G 2014 LTE chạy CM13. Khi biết về việc thiết lập thẻ nhớ như bộ nhớ trong, mình đã rất hào hứng vì bộ nhớ trong của điện thoại mình khá là ít. Do đó, mình đã thiết lập 1 thẻ 16 GB để sử dụng.

Nhưng bây giờ mình đang muốn thay thẻ 16GB đó bằng 1 thẻ 64 GB. Tuy nhiên, mình không biết cách nào là tốt nhất để cóp dữ liệu vào thẻ mới, thậm chí còn không biết liệu có thể cóp được không. Những cách mà mình nghĩ ra bao gồm:

  • Titanium Backup tất cả ứng dụng ( hệ thống), đưa về thiết lập của nhà sản xuất, định dạng thẻ nhớ mới, sau đó khôi phục lại.
  • NANDroid thẻ nhớ vào 1 USB OTG, sau đó khôi phục vào thẻ mới
  • Sao chép tất cả mọi thứ trên điện thoại vào máy tính thông qua file manager ( mình có linux/linux/windows triple boot, nên định dạng file không phải là vấn đề), định dạng thẻ mới vào điện thoại, sau đó cóp lại
  • Sao chép các file vào USB OTG bằng 1 ứng dụng root file, định dạng lại thẻ nhớ thành di động, định dạng thẻ mới như bộ nhớ trong, sau đó cóp lại
  • Định dạng thẻ 64GB như bộ nhớ trong thông qua đầu đọc thẻ OTG với lệnh adb shell sm set-force-adoptable true, dùng trình duyệt root để để cóp tất cả dữ liệu từ thẻ nhớ cũ, định dạng lại thẻ nhớ cũ như thẻ nhớ ngoài và xóa nó đi, sau đó lấy thẻ nhớ mới và cho vào khe cắm thẻ nhớ.

Có 1 thứ khiến mình phải suy nghĩ là: liệu ứng dụng với dữ liệu được lưu trữ bên ngoài có sẽ tìm được thẻ nhớ mới không? Liệu mình có phải để nó ở 1 vị trí cụ thể với shell mỗi lần khởi động ( hoặc dùng  init.d script)? Mình nghĩ rằng nó luôn có thể truy cập thông qua /sdcard hoặc /storage/emulated/0, nhưng mình không chắc lắm.

Mình mới NANDroid gần đây, nên nếu ai có ý kiến về giải pháp nào không được thì mình vẫn có thể thử và report lại cho các bạn khác nhé.

EDIT: vì điện thoại mình bị bootloop nên mình đành phải flash ROM mới. Do đó, mình không thể test phương pháp image/decryption/etc. như dự định được. Tuy nhiên, mình vẫn quyết định viết lên đây để nếu ai gặp trường hợp như mình thì có thể tham khảo nha:

  1. Image thẻ cũ với: : sudo dd if=/dev/mmcblk0 of=~/SDCardBackup.img, , nơi/dev/mmcblk0 là vị trí thẻ SD có thể xem được thông qua  lsblk
  2. Khôi phục image mà bạn vừa tạo vào thẻ nhớ mới : sudo dd bs=4M if=~/SDCardBackup.img of=/dev/mmcblk0(bạn có thể cần gỡ nó ra trước)
  3. Giải mã phần lưu trữ và thay đổi kích thước phần phân vùng chính với gparted. Tuy nhiên, khi mình chạy lệnh giải mã bằng cách dùng key mà mình đã giải nén thì bị lỗi ( mình nghĩ chủ yếu do kĩ năng dùng linux của mình rất kém)

Như mình đã nói, mình không rõ cách này có được không nhưng mình vẫn post lên cho các bạn tham khảo thôi. Còn không thì cmt của maian sẽ giúp mọi người.

 

Đã hỏi vào Tháng Chín 4, 2016 Tổng hợp.
Bình luận
Chấp nhận

Tớ dùng cách sau:

Vào Settings > Storage & USB › Internal Storage, nhấn vào  “Migrate data” để chuyển dữ liệu lại vào bộ nhớ trong

Nếu bạn không đủ bộ nhớ trong để chuyển tất cả lại, thì bạn làm thêm các bước sau:

  1. Kết nối điện thoại với máy tính thông qua USB, sao lưu nội dung của thẻ nhớ cũ.
  2. Xóa bớt dữ liệu từ thẻ nhớ cũ để có thể chuyển được: chủ yếu là ảnh và video mà bạn có thể dễ dàng khôi phục sau.
  3. Nhấn vào “Migrate data” in Settings > Storage & USB › Internal Storage
  4. Kiểm tra xem thẻ nhớ cũ đã trống hết chưa ( hoặc thậm chí định dạng lại thành thẻ nhớ di động) sau đó tháo thẻ ra.
  5. Cho thẻ mới vào và thiết lập như bộ nhớ trong sau đó đồng ý để chuyển dữ liệu vào thẻ mới
  6. Cuối cùng kết nối lại điện thoại với máy tính thông qua USB để khôi phục lại các dữ liệu đã xóa
Đã trả lời vào Tháng Chín 4, 2016
Bình luận

Đáp án của bạn

Với việc gửi đáp án, bạn đã đồng ý với Chính sách dữ liệuCác điều khoản của chúng tôi.