Link2SD не работает на Зефир: нет такого файла или каталога

9

Из-за моего недовольства новой SD-картой как внутренним хранилищем Marsmallow, я решил вернуться к Link2SD, что я использовал в предыдущих версиях Android. Однако есть проблема. Если я пытаюсь создать сценарии монтирования для моей многораздельной SD-карты, я получаю следующую ошибку:

Mount script cannot be created

mount: '/dev/block/vold/179:66'->'/data/sdext2': No such file or directory

Кто-нибудь знает, как заставить Link2SD работать на Зефире?

Пол Клавье
источник

Ответы:

6

Внутреннее хранилище «Зефир» лучше использовать с SD-картой смешанного формата, как я объясню в своем блоге здесь :

http://blog.sam.liddicott.com/2016/02/android-6-semi-adopted-storage.html

Во-первых, вам нужно работать ADB.

  1. Вставьте SD-карту и отформатируйте ее как портативную.
  2. Извлеките свою SD-карту из меню «Хранилище и USB»
  3. Используйте «adb shell» для отображения вашего приемлемого хранилища:

нравится

$ adb shell sm list-disks adoptable

disk:179_64

диск: 179_64 - это моя SD-карта, которую можно сделать пригодной для использования, я хочу 75% в качестве внешней SD-карты:

$ adb shell sm partition disk:179_64 mixed 75

Примечание. Ваша карточка может быть указана с запятой вместо подчеркивания, например, диск: 179,64, в этом случае вы вводите следующее:

$ adb shell sm partition disk:179,64 mixed 75
  1. Это сотрет всю SD-карту, предоставив 75% в качестве портативного хранилища, а остальное - как встроенное хранилище.

  2. Перезагрузите свой телефон.

  3. В меню «Хранилище и USB» выберите SD-карту (внутреннюю) и выберите «Перенос данных» (чтобы там, где это возможно, были установлены приложения).

  4. Из Storage & USB переименуйте принятое хранилище так, чтобы оно имело какое-то имя, например Adopted, в противном случае, если оно совпадает с именем раздела внешнего хранилища, представление USB MTP может отображать только внутреннее

Сэм Лиддикотт
источник
Вы также должны опубликовать свой ответ в этом вопросе , он лучше
подойдет
Но это решение не поддерживает Link2SD. Файловая система принятого раздела - «Другое» при проверке с помощью приложения компьютерного раздела, поэтому Link2SD не может распознать раздел, который будет принят (отсюда и вопрос). Без Link2SD нельзя перемещать неподвижные приложения на SD-карту.
Ooker
2
#! / Система / бен / ш
mount -t ext4 -o rw / dev / block / mmcblk1p2 / data / sdext2
mount -t ext4 -o rw / dev / block / vold / 179: 66 / data / sdext2

Возможно, вам придется сделать так, чтобы строка vold была:

mount -t ext4 -o rw / dev / block / vold / public: 179: 66 / data / sdext2

Все зависит от того, как вы позволите Marshmallow отформатировать вашу карту при первой загрузке.

Используйте Apps2SD, чтобы сделать скрипт. Просто откройте приложение, перейдите к «Связать приложения с SD-картой», выберите свою файловую систему, и все готово. Он все еще находится в активной разработке и работает. После создания скрипта вы можете удалить Apps2SD.

syndre
источник
1

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

Гили
источник
Это сработало для меня. И я думаю, что это самый простой метод из всех.
Притешь
0

Я решил начальную проблему, указанную здесь:

cd /dev/block/vold
ln public:179_66 179:66

и тогда Link2SD смог сделать это; однако это все равно было бесполезно, и при перемещении внутренних данных Google Play Music (mp3) на SD-карту это делалось так, что музыкальная программа продолжала падать.

Удалить Link2SD после деинсталляции нелегко,

mount -o remount,rw /system
mv /system/bin/debuggerd.bin /system/bin/debuggerd
rm /system/etc/init.d/11link2sd
mount -o remount,row /system

затем перезагрузите компьютер, иначе 2-й раздел продолжает монтироваться в / data / sdext2

(Поэтому я разочарован тем, что, если я объединю свою SD-карту как внутреннюю память, Google Play Music будет хранить mp3-файлы в ограниченной внутренней памяти вместо SD-карты)

Сэм Лиддикотт
источник
Простите меня за такой основной вопрос. Должен ли я написать выше сценарий в файл в init.d? Кроме того, не могли бы вы объяснить, что делает скрипт выше?
Ганеш Сатпут
1
Не беспокойтесь, Link2SD по-прежнему не делает ничего полезного. См. Мое лучшее исправление на: blog.sam.liddicott.com/2016/02/…, который я опубликую в качестве ответа
Сэм Лиддикотт,
«Ничего полезное» весьма спорен и подметание субъективного заявления, так что было бы лучше , если бы вы могли бы поддержать его с некоторыми информационными фактами. Спасибо.
Адам Шпирс
1
Это не спорно вообще, если не противоречат моей претензии. Но чтобы ответить на ваш запрос: он не работает на Android 6, он вставляет неправильные команды монтирования в различные скрипты запуска и по-прежнему не работает, когда эти команды монтирования исправлены.
Сэм Лиддикотт
Я не хотел спорить, я просто имел в виду, что я видел, как люди говорили, что это не работает и не поддерживается, и никто не говорил, что это работает.
Сэм Лиддикотт