Замена внутренней памяти Android на карту памяти (vold.fstab)

9531
views

Малое количество внутренней памяти на дешевых смартфонах и планшетах Android главная проблема в невозможности установить приложения в таких случаях вам может помочь замена внутренней памяти Android на карту памяти.

Замена внутренней памяти Android на карту памятиДля тех кто не понял из заголовка о чем данная статья: предположим у вас 400 МБ внутренний памяти Android, что очень мало (примерно 12-20 установленных приложений), то тогда можно подумать чтобы взять и подменить основную память на карту памяти.

Прежде чем начать!

У вас Android версии 5.1 или новее? Отлично! Тогда возможно на вашем смартфоне можно увеличить или объединить память внешнюю с внутренней!

Способ 1

способ 2

Если у вас нет таких настроек? Тогда читайте далее статью!

Риски и что необходимо знать

Замена внутренней памяти Android на карту памяти происходит только при наличии установленных root прав (нет root, способ не работает)! Для тех кто не знает что такое Root и как получить:

Помимо этого вы обязаны знать структуру файловой системы Android.

Подмена памяти возможна только при условии что на вашем Android устройстве имеется системный файл vold.fstab по пути /system/etc, если такового у вас нет, то данный способ к сожалению не для вас! Воспользуйтесь альтернативными способами (ссылка 1, ссылка 2, ссылка 3). Также если на Android нет собственной памяти, то эта статья также не для вас. Статья в большей степени для устройств с процессором Mediatek (MTK) или Rockchip.

Так как будет происходить редактирование системного файла есть риск того что вы можете совершить ошибку и устройство не загрузиться, для тог чтобы это исправить необходимо перепрошить устройство, а также карта памяти может выйти из строя и вы столкнетесь с той же проблемой, также поможет прошивка.

С подменной внутренней памяти на карту памяти, у последней очень сильно падает срок эксплуатации (из-за частого чтения/записи), а также может упасть скорость работы Android если очень низкий класс карты MicroSD.

Внимание!

Прежде чем начать выполнять какие либо изменения воспользуйтесь официальной возможностью подмены карты памяти — Карта SD как внутренняя память Android.

Инструкция замена внутренней памяти Android на карту памяти

1. Установить файловый менеджер Root Browser (если выбрали другой, то в комментариях не писать «умных» вопросов «не вижу» «не редактирует»)

2. Запускаем файловый менеджер Root Broswser и переходим по пути:

/system/etc/

3. Ищем файл vold.fstab и открываем его (зажимаем на файле и выбрать Edit)

4. В файле vold.fstab видим примерно такую картину:

## Vold 2.0 fstab
 ##
 # Regular device mount
 ##
 ##Format: dev_mount <label> <mount point> <part> <sysfs_path1...>
 ## label - Label for the volume
 ## mount_point - Where the volume will be mounted
 ## part - Partition # (1 based), or 'auto' for first usable partition.
 ## <sysfs_path> - List of sysfs paths to source devices
 #######################################

# Mounts the first usable partition of the specified device
 #/devices/platform/awsmc.3/mmc_host for sdio
 dev_mount sdcard /mnt/sdcard auto /devices/virtual/block/XXXXXX
 dev_mount extsd /mnt/extsd auto /devices/platform/XXXXXX/XXXXXXX
 /devices/platform/sunxi-mmc.0/mmc_host
 dev_mount usbhost1 /mnt/usbhost1 auto /devices/platform/sw-ehci.1 /devices/platform/sw_hcd_host0 /devices/platform/sw-ehci.2 /devices/platform/sw- ohci.1  /devices/platform/sw-ohci.2

На данном примере обратите внимание выделено две строки, если внимательно перед этим прочитали структуру файловой системы Android, то вы уже знаете, что /sdcard  или /sdcard0 это внутренняя память, а  /extsd или /external_sdcard, /sdcrad1, /sdcrad2, /external_sd это внешняя память, то есть MicroSD.

Все что нужно сделать это заменить эти две строки местами:

dev_mount extsd /mnt/extsd auto /devices/virtual/block/XXXXX
 dev_mount sdcard /mnt/sdcard auto /devices/platform/XXXXX/XXXXX

Еще один пример, на другом устройстве:

dev_mount sdcard /storage/sdcard0 emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-msdc.0/mmc_host
dev_mount sdcard2 /storage/sdcard1 auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-msdc.1/mmc_host

Меняем на следующее:

dev_mount sdcard /storage/sdcard1 emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-msdc.0/mmc_host
 dev_mount sdcard2 /storage/sdcard0 auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-msdc.1/mmc_host

У вас еще остались дополнительные вопросы? Задавайте их в комментариях, рассказывайте о том, что у вас получилось или наоборот!

Вот и все! Оставайтесь вместе с сайтом Android +1, дальше будет еще интересней! Больше статей и инструкций читайте в разделе Статьи и Хаки Android.