Jak mogę uzyskać dostęp do wielu przestrzeni użytkownika z adb?

9

Używam KitKat na tablecie z dwoma użytkownikami: podstawowym (właścicielem) i dodatkowym. Potrzebuję uzyskać dostęp do pliku wygenerowanego przez aplikację pomocniczego użytkownika.

Kiedy podłączam tablet do mojego (Ubuntu) pulpitu przez USB, montuje się jako urządzenie multimedialne (MTP) i pokazuje mi folder podstawowy dla aktualnie aktywnego użytkownika. [1] Ale plik, który chcę, znajduje się gdzie indziej w systemie, więc adb shellzamiast tego podłączyłem się z linii poleceń .

Połączenie przez ADB daje mi dostęp do głębszych folderów ( /mnt /procitp.), Ale nie mogłem znaleźć pliku, w którym się spodziewałem [2], więc i tak zajrzałem /sdcard. Ku mojemu zdziwieniu rozpoznałem zawartość jako podstawowy folder konta właściciela, mimo że aktualnie aktywny użytkownik jest użytkownikiem pomocniczym.

Mówi mi to również, że jeśli zajdzie taka potrzeba, nie będę mógł uzyskać dostępu do folderu podstawowego dla drugiego użytkownika za pośrednictwem adb shell.

Jak mogę uzyskać dostęp do tabletu adb shelljako użytkownik pomocniczy, a nie jako użytkownik podstawowy (właściciel)? (Dostęp do plików dodatkowego użytkownika jest wystarczająco dobry.)

[1] Nie jestem pewien, jaki jest właściwy termin. Mam na myśli folder z Androidem, Pobierz i Zdjęcia, specyficzny dla konkretnego użytkownika.

[2] FWIW Eksportuję plik OPML z Flym . Flym informuje, że eksport OPML jest generowany, /storage/emulated/10/Flym_123456789.opmlale mogę dostać się tylko tak daleko, jak to możliwe /storage/emulated- nie ma wywołanego podfolderu 10, tylko legacytaki sam jak /sdcard(folder podstawowy głównego / właściciela, a nie folder podstawowy drugiego użytkownika).

david.libremone
źródło
Dla tych, którzy kończą na tym poście z tym samym lub podobnym problemem, zobacz Jak uzyskać dostęp do emulowanej karty SD dla innego użytkownika na
zrootowanym

Odpowiedzi:

3

Te legacy/lokalizacje są zawsze wskazując na dane o aktualnie aktywnym użytkownikiem. Pozwolę sobie najpierw wskazać na kilka powiązanych pytań / odpowiedzi, które jednoznacznie dotyczą tych problemów z przechowywaniem dla wielu użytkowników, na tle:

Aby znaleźć pliki pomocniczego użytkownika:

  • wypisz podkatalogi /data/mediai/storage/emulated
  • ogranicz wyszukiwanie do podkatalogów, których nazwy to po prostu „liczby”
  • że 0kandydaci należą do właściciela, numery są wyższe od średnich użytkowników
  • Pamięć zewnętrzna to coś innego: /sdcard/0wskazuje na wewnętrzną kartę SD, podczas gdy /sdcard/1powinna być zewnętrzna (jeśli jest dostępna). Podobnie do przechowywania dołączonego przez OTG

Pamiętaj, że może być konieczne rootowanie, aby uzyskać dostęp do danych użytkownika innego niż aktualnie aktywny na urządzeniu.

Zobacz także:

Izzy
źródło
pomaga mi to zrozumieć, co powinienem zobaczyć, ale tak naprawdę widzę tylko / storage / emulowane / legacy (bez folderów numerycznych) i nie mam dostępu do / data / media (odmowa dostępu) - spróbuję restartuję się i nigdy nie
loguję
Jak napisałem: „może być konieczne rootowanie” (co tłumaczy „odmowę dostępu”). Czy Twoje urządzenie jest zrootowane?
Izzy
to nie jest (trochę przerażone, wydaje się, że nie ma niezawodnego procesu?)
david.libremone
ale mogę to potwierdzić: zrestartuj urządzenie, nie loguj się jako właściciel, zaloguj się jako pomocniczy, podłącz usb, dostęp przez MTP: widać dodatkowy folder użytkownika, dostęp przez powłokę adb: można zobaczyć / storage / emulowane / starsze jako użytkownik właściciel (inny niż użytkownik)
folderze
Po zalogowaniu się z użytkownikiem dodatkowym emulated/powinien wskazywać dane użytkownika dodatkowego. Nie ma możliwości dostępu do wszystkich bez rootowania. I poprawne, nie ma oficjalnego procesu rootowania twojego urządzenia; warto sprawdzić nasz tag rootowania wiki i indeks rootowania, aby sprawdzić generałów i urządzenia. Jeśli nie ma go na liście, możesz zadać nowe pytanie.
Izzy