Link2SD nie działa na Marshmallow: Brak takiego pliku lub katalogu

9

Z powodu mojego niezadowolenia z nowej karty SD jako wewnętrznej pamięci Marsmallow postanowiłem wrócić do Link2SD, czegoś, czego używałem na poprzednich wersjach Androida. Jest jednak problem. Jeśli spróbuję utworzyć skrypty montowania dla mojej partycjonowanej karty SD, pojawia się następujący błąd:

Mount script cannot be created

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

Czy ktoś wie, jak zmusić Link2SD do pracy na Marshmallow?

Paul Clavier
źródło

Odpowiedzi:

6

Pamięci wewnętrznej Marshmallow można lepiej używać z kartami SD o różnych formatach, jak wyjaśniam również na moim blogu tutaj :

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

Po pierwsze potrzebujesz działającego adb.

  1. Włóż kartę SD i sformatuj ją jako przenośną.
  2. Wyjmij kartę SD z menu Pamięć masowa i USB
  3. Użyj „powłoki adb”, aby wyświetlić listę dostępnej pamięci:

lubię to

$ adb shell sm list-disks adoptable

disk:179_64

dysk: 179_64 to moja karta SD, którą można przystosować, chcę 75% jako zewnętrzna SD:

$ adb shell sm partition disk:179_64 mixed 75

Uwaga: Twoja karta może być oznaczona przecinkiem zamiast podkreślnika, np. Dysk: 179,64, w którym to przypadku wpisujesz:

$ adb shell sm partition disk:179,64 mixed 75
  1. Spowoduje to skasowanie całej karty SD, dając 75% jako pamięć przenośną, a resztę jako przyjęta pamięć wewnętrzna.

  2. Uruchom ponownie telefon.

  3. Z menu Pamięć masowa i USB wybierz kartę SD (wewnętrzną) i wybierz opcję Migruj dane (aby tam, gdzie to możliwe, zainstalowano aplikacje).

  4. W opcji Pamięć masowa i USB zmień nazwę adoptowanej pamięci masowej na inną, na przykład Przyjęto, w przeciwnym razie, jeśli ma taką samą nazwę jak zewnętrzna partycja pamięci, widok USB MTP może pokazywać tylko wewnętrzną

Sam Liddicott
źródło
powinieneś opublikować swoją odpowiedź również na to pytanie , jest to lepsze dopasowanie i dałoby swojemu
świetnemu
Ale to rozwiązanie nie obsługuje Link2SD. System plików przyjętej partycji jest „Inny” podczas sprawdzania za pomocą aplikacji do partycji komputerowych, więc Link2SD nie może rozpoznać partycji, która ma zostać adoptowana (stąd pytanie). Bez Link2SD nie można zmusić aplikacji do przenoszenia na kartę SD.
Ooker
2
#! / system / bin / sh
mount -t ext4 -o rw / dev / block / mmcblk1p2 / data / sdext2
mount -t ext4 -o rw / dev / block / vold / 179: 66 / data / sdext2

Być może będziesz musiał ustawić następującą linię:

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

Wszystko zależy od tego, jak pozwolisz Marshmallow sformatować kartę przy pierwszym uruchomieniu.

Użyj Apps2SD, aby wykonać skrypt. Po prostu otwórz aplikację, przejdź do „Połącz aplikacje z kartą SD”, wybierz system plików i gotowe. Nadal jest aktywnie rozwijany i działa. Po utworzeniu skryptu możesz odinstalować Apps2SD.

syndre
źródło
1

Jak podpowiedzieli inni, możesz użyć Apps2SD do utworzenia skryptu montowania i po prostu odinstaluj go, gdy skończysz.

Gili
źródło
To zadziałało dla mnie. I myślę, że to najłatwiejsza ze wszystkich metod.
Preetesh
0

Rozwiązałem początkowy problem wymieniony tutaj:

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

a następnie Link2SD był w stanie wykonać swoje sztuczki; jednak nadal nie był użyteczny, a przenoszenie danych wewnętrznych Muzyki Google Play (MP3) na kartę SD sprawiło, że program muzyczny ciągle się zawieszał.

Usunięcie Link2SD po deinstalacji nie jest łatwe,

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

następnie uruchom ponownie, w przeciwnym razie druga partycja będzie ciągle montowana na / data / sdext2

(Jestem więc sfrustrowany, że jeśli scalę moją kartę SD jako pamięć wewnętrzną, Muzyka Google Play będzie przechowywać pliki mp3 w ograniczonej pamięci wewnętrznej zamiast na karcie SD)

Sam Liddicott
źródło
Wybacz mi za tak podstawowe pytanie. Czy powinienem napisać powyższy skrypt do pliku w init.d? Czy mógłbyś również wyjaśnić, co robi powyższy skrypt?
Ganesh Satpute
1
Nie przejmuj się, Link2SD nadal nie robi nic pożytecznego. Zobacz moją lepszą poprawkę na: blog.sam.liddicott.com/2016/02/…, którą opublikuję jako odpowiedź
Sam Liddicott,
„Nic użytecznego” jest raczej kontrowersyjnym i obszernym subiektywnym stwierdzeniem, więc byłoby lepiej, gdybyś mógł poprzeć je pewnymi faktami. Dzięki.
Adam Spiers
1
W ogóle nie jest to kontrowersyjne, chyba że zaprzeczasz mojemu twierdzeniu. Ale aby odpowiedzieć na twoje żądanie: nie działa na Androidzie 6, wstawia nieprawidłowe polecenia montowania w różnych skryptach startowych i nadal nie działa, gdy te polecenia montowania zostaną poprawione.
Sam Liddicott,
Nie chciałem się kłócić, po prostu miałem na myśli to, że ludzie mówili, że to nie działa i nie jest obsługiwane, i nikt nie powiedział, że to działa.
Sam Liddicott,