В Android 6.0 ввели функцию, позволяющую отформатировать карту памяти так, чтобы она являлась не отдельным хранилищем, а придатком ко внутренней памяти. Это позволяет избежать путаницы с двумя хранилищами данных, особенно при ручной установке некоторых не всегда честно купленных крупных приложений, поставляемых по частям. Однако есть один нюанс: при этом всём нам наглухо блокируют доступ к карте напрямую. Хочешь что-то передать на устройство — используй MTP со всеми вытекающими, вроде скорости передачи файлов, сравнимой с прогулочным шагом контуженной черепахи. Карту теперь не только к ПК через кабель напрямую нельзя подключить: её и из выключенного телефона через кардридер просто так не смонтируешь, ведь она отформатирована в нечто неизвестное ни науке, ни нашим компьютерам. Но ведь правила созданы для того, чтобы их нарушать? Давайте попробуем обойти это бессовестное ограничение. Рекомендуется для ежедневного использования. Судя по всему, даже не требует рут. Всё, что понадобится — это ADB. Те, кто в курсе, могут пролистать до второго способа. С передачей всё просто: первый аргумент — откуда, второй аргумент — куда. /sdcard — то место, куда на Андроиде монтируется доступное пользователю хранилище, т.е. корневой каталог штатного файлового менеджера почти любого девайса на Андроиде. Получение — аналогично: Основной плюс — двухсторонний обмен данными на вполне удовлетворительной скорости (если сравнивать с MTP). Также ко всей этой красоте прилагается симпатичный счетчик прогресса в процентах, который, к сожалению, отсюда не видно. Полагаю, что к графическому файловому менеджеру тоже можно как-то приделать нечто похожее, но на практике с такими плагинами сталкиваться не приходилось. Возможно, Android всё-таки не зря нас к карте не подпускает, ну да ладно, кто ж его спрашивает? На этот раз нам понадобятся root-доступ к смартфону и ПК с системой на базе Linux. Для начала вытянем карту из девайса, подключим к ПК и сразу же посмотрим на её содержимое. Отлично, хотя бы таблица разделов имеется. Невооружённым взглядом видно, что филейная часть — это второй раздел с неопознанной файловой системой. Первый раздел прекрасно монтируется в fat32 и не менее прекрасно пуст, поэтому про него можно забыть, т.к. я не знаю, что на нём хранится у здоровых людей. Вторая часть зловещего плана — ключ. Да-да, данные зашифрованы: не просто ж так parted не смог обнаружить на целевом разделе ФС. С ключом всё почти так же просто: хранится он на нашем Android-девайсе в двоичном файлике по адресу /data/misc/vold/expand_PARTUUID.key, где PARTUUID — это UUID шифрованного раздела в нижнем регистре без разделителей. Рут нам понадобится как раз для того, чтобы добраться до этого файла через нечитаемый для всех, кроме рута, каталог /data/misc/vold. Готово. 128 бит заветной информации. Заключительная часть Мерлезонского балета — подключение раздела. Сделаем это стандартным линуксовским dm-crypt, который, собственно, и самим Андроидом используется. К сожалению, я не знаю, какой именно метод шифрования используется Андроидом, поэтому понадеюсь на пресвятой дефолт, оставив --cipher неуказанным. На меня не ругаются, это хорошо. Монтируем. Кажется, получилось. Неопознанные UID-ы напоминают нам о том, что карточка не с нашего ПК и лучше бы нам здесь особо ничего не ворошить. Если поковыряться по каталогам, можно увидеть данные приложений, хранящихся на карте памяти, а также непосредственно содержимое SD-карты, которое нам подсовывали в первом способе по адресу /sdcard. Его мы можем найти в каталоге /mnt/media/0. На этом всё, приятного ковыряния.