Как внутреннюю память сд карты сделать внешней. SD карта как внутренняя память Андроид

Встроенная память Android устройства часто быстро заканчивается, поэтому пользователям приходится хранить большие объемы информации на microSD. Но что делать, если Андроид не сохраняет на карту памяти скачиваемый контент - приложения, фото, музыку, и другие файлы?

Данная статья подходит для всех брендов, выпускающих телефоны на Android 9/8/7/6: Samsung, HTC, Lenovo, LG, Sony, ZTE, Huawei, Meizu, Fly, Alcatel, Xiaomi, Nokia и прочие. Мы не несем ответственности за ваши действия.

Проблемы с картой памяти

Прежде всего, необходимо убедиться, что карта памяти исправна и готова принимать файлы. Что делать:

Карта памяти может быть несовместимой со смартфоном - например, превышать объем, допустимый для конкретной модели телефона. Если флешка больше какого-то объема гигабайт (32, 64, 128 и т.д.), то он просто не распознает ее, т.к. не запрограммирован на такой объем. В таком случае единственным выходом будет использование другого носителя microSD, меньшего объема.

Если ни одна карта не определяется, имеет смысл обратиться в сервисный центр. Возможно, есть аппаратные неполадки у телефона, которые мешают ему работать с внешними накопителями.

Неправильная папка в браузере

Если проблемы с сохранением возникают во время скачивания файлов в браузере, то следует проверить папку назначения. Она может быть указана неправильно, из-за чего браузер не понимает, как сохранять фото, музыку, видео и другой контент. Посмотрим на примере UC Browser:

  1. Откройте раздел «Загрузки» в главном меню.
  2. Нажмите «Настройки».
  3. В поле «Путь загрузки» укажите папку на карте памяти.
Увеличить

После такой короткой настройки файлы в браузере будут скачиваться только в указанный каталог на карте, не забивая внутреннюю память.

Файлы нельзя перенести на карту памяти

Чаще всего это относится к встроенным приложениям Android. В телефоне они могут храниться только на внутреннем накопителе, иначе смартфон не будет работать. В то же время любое приложение от стороннего разработчика можно переместить на микроСД.

  1. Откройте настройки Андроида, зайдите в раздел «Приложения».
  2. Найдите программу, которую хотите перенести на карту памяти вместе со всеми файлами.
  3. Нажмите «Переместить на SD».
Увеличить

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

Сбились настройки переноса файлов на карту памяти

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

Подобная настройка есть не у каждой модели и производителя. Проверьте у себя.

  1. Откройте настройки Андроида.
  2. Перейдите в раздел «Память».
  3. В поле «Место установки» или «Память по умолчанию» выберите значение «SD».
Увеличить

Когда настройки нет

Если нет возможности задать место сохранения файлов по-умолчанию, то здесь на помощь придут сами приложения. В том же браузере Samsung «Интернет» есть возможность задать место хранения:


Увеличить

Посмотрите в своем приложении, откуда вы собираетесь сохранять файлы, есть ли возможность в настройках выбрать место сохранения. Если такого нет, то придется вручную перемещать файлы с внутренней памяти на карту microSD.

Сразу оговорюсь, что речь пойдет не о программах типа link2sd. Принцип похож, но связывать мы будем не программные каталоги, а каталоги данных этих программ, например /sdcard2/Navigon -> /sdcard/Navigon или /mnt/extSdCard/Books -> /sdcard/Books и т.д.
Кроме того, нам нужен рут (куда ж без него). Кстати, после того как я узнал про эту программу, это для меня очередной аргумент за root.

Многие владельцы андроид смартфонов или таблеток с небольшей встроеной памятью наверняка сталкивались со следущей проблемой: вставлена большая sd карта (например 16, 32 или даже 64 Гигабайт), но после установки нескольких тяжеловесных программ наше устройство или очередная программа с наглостью заявляет, что на карте не хватает места. Иногда сама программа небольшая, но после установки лезет в интернет и тянет на смартфон гигабайты данных.
В очередной раз получив сообщение «Нет места» и заглянув на карточку видим, что она практически пуста, зато внутренняя память устройства забита под завязку.
Это происходит потому, что внутренняя память часто используется как каталог по умолчанию для многих программ. Дело в том, что она монтируется как /sdcard , что исторически всегда было внешней sd картой (раньше так оно и было на всех смартфонах). Внешняя же sd карта монтируется в этом случае как /sdcard2 , /mnt/sdcard2 , /mnt/extSdCard или даже /sdcard/.externalSD . Я так понимаю, что это делается изготовителями, чтобы устройство работало из коробки, т.е. совсем без sd карты.

Многие «недобросовестные» программы всегда хотят читать/писать данные из/в каталог /sdcard/НазваниеПодставить. Редко это можно изменить в настройках программы.
В результате имеем, что имеем, и несколько возможностей чтобы поправить сложившееся положение:
Два последних способа тоже не являются панацеей, т.к. требуют определенных навыков от пользователя, кроме того не достаточно «чисты», например известны проблемы при подключении смартфона к компьютеру через usb (не отмонтируются) и т.д.

Поправить положение поможет программа DirectoryBind , которую хороший человек slig из xda написал для себя и выложил на форуме для всеобщего пользования.

QR-код


Хоть публика здесь технически подкованная, но для неискушенных читателей хабра нужно сделать пару пояснений. Как он сам написал (программа not idiot-proof), т.е. врядли пройдет тест на дурака.

После установки запускаем программу (первый раз естественно навечно разрешаем права Root), нажимаем меню затем «Preferences» и выставляем пути по умолчанию на внешнюю память «Default data path» например /sdcard/external_sd/ и внутреннюю память «Default target path» /sdcard/ . Выходим из меню.

Нажимаем меню, затем «Add new entry»

Теперь создадим новую связь каталогов, например перенесем папку CamScanner на внешнюю карту. Долгое нажатие на путь к папкам открывает небольшой встроеный файловый менеджер, в котором можно создать и/или выбрать папку. Папка на внешней карте должна быть создана (и пуста).

Установив галочку в «Transfer files from target to data» файлы и папки будут перенесены из каталога /sdcard/CamScanner/ в каталог /sdcard/external_sd/CamScanner .

Нужно заметить, что связи после создания не активируются автоматически (серая иконка дискеты, как на скрине внизу для gameloft). Для завершения связывания папок, выбираем галочками нужные связи и нажимаем меню -> «Bind checked». Иконки активных (связанных) папок должны стать зелеными.

Кстати если вы хотите присоединить еще и всю внешнюю карточку полностью рекомендую это сделать не так /sdcard/externalSD/ , а с точкой впереди /sdcard/.externalSD/ . Это спасет вас от таких неприятностей как двойные превьюшки в галереях, и т.д. Правда поможет не для всех галерей и плееров, т.к. некоторые ищут медиа и в скрытых каталогах.
Помучившись, я для себя решил, связывать только отдельные каталоги.

UPD. Кстати, внешняя SD карта значительно медленнее внутренней памяти, поэтому перенос данных программы на внешнюю SD, естественно замедляет работу этой программы. Это особенно нужно помнить решившим полностью поменять маунт-пойнты внутренней и внешней памяти, т.к. скорее всего все ваше устройство будет работать медленнее, чем раньше.

Надеюсь эта программа дополнит и вашу копилку полезных утилит для андроид устройств.

Если вы все-таки решились поменять местами внутреннюю и внешнюю память, т.е. переназначить внешнюю sd карту на /sdcard и в настройках устройства нет такой опции - имея рут, это можно легко сделать выполнив следущую операцию:
В Root-Explorer монтируем "/etc" как R/W (если R/O), находим файл "/etc/vold.fstab", сохраняем копию и открываем (длинным кликом) его в Text Editor.
В следующих двух строчках меняем название моунт точек местами: dev_mount sdcard /mnt/sdcard emmc@fat /devices/platform/goldfish_mmc.0 ... dev_mount sdcard /mnt/external_sd auto /devices/platform/goldfish_mmc.1 ... на dev_mount sdcard /mnt/external_sd emmc@fat /devices/platform/goldfish_mmc.0 ... dev_mount sdcard /mnt/sdcard auto /devices/platform/goldfish_mmc.1 ...
Подробнее можно почитать . Там же предлагают, как альтернативу, использовать другую интересную программу Root External 2 Internal SD .
Добавлю, что в обоих случаях, перед переключением, вам нужно скопировать все содержимое папки /sdcard на внешнюю sd карту.
Помните, что после переключения вся ваша система может работать , чем раньше.
Будьте осторожны - нужно понимать, что все что вы делаете под рутом, вы делаете на свой страх и риск, и например сохранение неправильного «vold.fstab» может привести к невозможности загрузить устройство и для лечения нужно будет грузится в рекавери и править «vold.fstab» уже там.

Этот способ можно использовать совместно с DirectoryBind, только теперь наоборот «Default target path» (/sdcard) и все связи созданные в DirectoryBind будут указывать на внешнюю карту.

Возможности девайса можно серьезно расширить, если заменить внутреннюю память Android на карту памяти. Это позволит инсталлировать на планшет или иной гаджет гораздо больше приложений, но основным требованием для выполнения данного апдейта является наличие root-прав на устройстве. Рассмотрим способы, позволяющие использовать SD-карту в качестве системной памяти аппарата, а также связанные с этим условия.

Риски и условия замены внутренней памяти гаджета на SD-карту

Перед повторением описываемых ниже действий пользователь должен учесть несколько важных моментов:

  1. Срок службы SD-карты сильно сократится вследствие частого повторения циклов чтения/записи при запуске приложений.
  2. Скорость работы гаджета может заметно упасть, если использовать карту MicroSD низкого класса.
  3. При допущении ошибки при редактировании системного файла телефон может в следующий раз не загрузиться - придется его перепрошивать.

В целом процедура (особенно для неопытных пользователей) является довольно рискованной, поэтому имеет смысл проводить ее исключительно для старых гаджетов с малым количеством собственной памяти.

Использование утилиты Root Browser и редактирование файла vold.fstab

Чтобы поменять местами память, из Google Play потребуется установить Root Browser.

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


В Андроид sdcard обозначает внутреннюю память, а extsd - внешнюю, т. е. SD-карту. Заменой этих строк мы фактически поменяли местами эти виды памяти. В некоторых системах эти куски кода могут выглядеть иначе, например, так:

Заменить их нужно следующим образом:

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

Второй способ увеличения памяти при помощи Link2SD

Приложение доступно в Play Market и работает только на девайсах с root-правами. Этот файловый менеджер не подменяет физически внутреннюю память устройства внешним накопителем, но он способен переносить любые утилиты на SD-карту, значительно экономя ресурсы гаджета.

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

Деление карты девайса на разделы при наличии кастомного Recovery

Каждое устройство на Android имеет режим восстановления, но описываемый ниже способ подойдет только для девайсов не со стандартным, а с . Если вы никогда не слышали о CWM, переходите ко второму варианту разбиения накопителя. Далее расскажем, как решить поставленную задачу, если в вашем режиме восстановления устройства есть пункт Partition SD Card:

Разбиение MicroSD-карточки через компьютер

Подключите карту к лэптопу или ПК. Для этого можно использовать картридер или иное оборудование, главное, определяться оно должно как накопитель, а не медиа-устройство MTP. Далее:


В некоторых устройствах Android есть слоты для карт памяти (как правило, формата microSD). Если устройство поддерживает SD-карты, вы можете:

  • увеличить объем памяти;
  • использовать карту для работы некоторых функций и приложений.

Чтобы узнать, есть ли у вашего устройства слот для SD-карты, посетите сайт производителя .

Примечание. Некоторые из этих действий можно выполнить только на устройствах с Android 6.0 и более поздними версиями.

Как установить SD-карту

Шаг 1. Вставьте SD-карту.
  1. Уточните, где находится слот для SD-карты.
  2. Выключите телефон.
  3. Извлеките лоток SD-карты или снимите заднюю крышку устройства (в зависимости от модели). При необходимости поднимите язычок, удерживающий карту.
  4. Поместите SD-карту в слот. Если вы подняли удерживающий язычок, опустите его.
  5. Установите обратно лоток SD-карты или заднюю крышку устройства.
Шаг 2. Включите SD-карту.
  1. Дождитесь появления уведомления об SD-карте.
  2. Нажмите Настроить .
  3. Выберите нужный тип хранилища.
    • Съемный накопитель:
      Карту можно переносить на другое устройство вместе со всеми файлами (например, фотографиями и музыкой). Приложения на съемный накопитель перемещать нельзя.
    • Внутренняя память:
      На карте можно хранить приложения и данные только для этого устройства. Если вы переместите ее на другое устройство, все данные с нее будут удалены.
  4. Чтобы настроить SD-карту, следуйте инструкциям на экране.
  5. По завершении нажмите Готово .

Как использовать SD-карту

Как переместить приложения на SD-карту

Если вы подключили карту в качестве внутренней памяти, можно перенести приложения на нее.

Примечание. Не все приложения можно перенести SD-карту.

Как переместить файлы на SD-карту

Если вы установили SD-карту в качестве съемного накопителя, то можете перенести на нее различные файлы, например музыку и фотографии. После этого их можно удалить из внутренней памяти устройства.

Шаг 1. Скопируйте файлы на SD-карту.

Шаг 2. Удалите файлы с внутреннего накопителя.

Вы можете посмотреть содержимое SD-карты и узнать, сколько места осталось.

Если SD-карта используется в качестве внутреннего накопителя

Если SD-карта используется в качестве съемного накопителя

  1. Проведите по экрану сверху вниз, чтобы открыть панель уведомлений.
  2. Под уведомлением об SD-карте нажмите Открыть .

Позволяет разбивать карту памяти на несколько разделов. Также сделать это можно средствами Android-устройства, если у Вас установлен ClockworkMod (CWM) Recovery — альтернативное рекавери для Android-устройств, обладающее, в отличие от заводского, более мощным функционалом. По желанию его можно установить на любое Android-устройство, но желательно найти и установить в интернете именно тот (CWM) Recovery, который уже был протестирован на Вашем устройстве.

Создание разделов

Допустим, у нас есть карта памяти размером 4 Гб (реально доступных системе 3,68 Гб). Создадим два раздела размерами 3,2 и 0,5 Гб.

Внимание! Перед разбивкой SD-карты на разделы обязательно скопируйте её содержимое на компьютер или другое устройство, так как после выполнения приведенных ниже операций все данные будут удалены!

Перейдите в раздел "Advanced". Учтите, что сенсорный экран в режиме CWM Recovery не работает (хотя в последних версиях уже работает), используйте клавиши громкости "+" и "-" для навигации по пунктам меню. Для выбора пункта, в зависимости от устройства, используйте клавишу "Вкл/Выкл" или "Домой".

В разделе "Advanced" выберите пункт "Partition SD Card".

На следующем шаге из предлагаемого списка выберите объем создаваемого Ext-раздела на карте памяти. Как я уже упоминал в начале статьи, я хочу, чтобы у меня второй раздел на карте памяти был размером 0,5 Гб, поэтому я выбрал пункт 512 M.

Для Swap раздела (раздел файла подкачки) выберите первый пункт (0M).

Подождите, пока будут созданы разделы, затем вернитесь в главное меню (последняя в списке команда "+++++Go Back+++++").

Выберите пункт "Reboot system now" для перезагрузки устройства.

После перезагрузки Android Вы увидите, что размер карты памяти уменьшился на указанное в рекавери значение. Это так потому, что Android "видит" только первый раздел, но сторонние приложения, такие как , "видят" и второй раздел.

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

Объединение разделов

Если по какой-то причине Вы решили вернуть состояние карты памяти (объединить разделы назад) до первоначального, например чтобы разбить карту повторно, чтобы увеличить размер Ext-раздела, или просто вернуть один раздел на всю SD-карту, в операционной системе Android сделать это проще простого.

Внимание! Как и в случае разбивки карты памяти, нижеописанные действия приведут к полному удалению данных на SD-карте.

Зайдите в "Настройки > Память > Очистить SD-карту", нажмите на кнопку "Очистить SD-карту".

Подтвердите действие, нажав на кнопку "Стереть все".

Система автоматически выполнит следующие шаги: отключение SD-карты, очистка SD-карты (собственно создание одного раздела на всю карту памяти), проверка SD-карты.

По окончании всех процессов очистки Вы сможете увидеть, что память карты увеличилась до исходного размера.