тем уёбкам из гугла, которые трогают то, что работало.
С какого-то бодуна вместо человеческого UMS, который нормально работает во всех современных операционных системах, они решили вкорячить в четвёртый андроид майкрософтовский протокол MTP, предназначенный для плееров и фотоаппаратов.
В результате вот эту лепоту при попытке скопировать десяток фотографий из телефона на десктоп я наблюдаю уже минут десять:

Оригинал этой записи в личном блоге.
no subject
no subject
Ещё народ использует AirDroid.
То есть, обходные манёврые есть, конечно, но именно обходные.
no subject
но тут вот какой нюанс - usb storage, по факту, это передача всего блочного устройства в управление компу.
не самый прямой вариант.
если и есть какие-то другие способы дать доступ к файловой системе и при этом продолжать работать с ним без эмуляции vfat на программном уровне - то они мне в голову не приходят, если честно.
no subject
Для плеера или фотоаппарата этот протокол, вероятно, удобен, но в устройстве более общего назначения, типа телефона, он дико неудобен. Он не позволяет передавать одновременно более одного файла, не даёт прямого доступа к содержимому файла - файл можно только скопировать целиком, то есть, например, отдельно mp3-тэги фиг прочтёшь. Там даже нет средств перечитать директорию после того, как она была изменена в телефоне, можно только полностью отмонтировать устройство и примонтировать его обратно, иначе никак.
К тому же он ещё и тормозной.
Насколько я понял, на самом деле там внутри ядра UMS поддерживается, но чтобы его включить, нужен рут.
no subject
Мало того, что ее нельзя размонтировать, так она еще и yaffs2, а не fat. Толку-то от такой fs в mass-storage mode.
Так что, только хардкор, только MTP. Вот его реализация в убунте достойна фейспалма, в винде-то все отлично.
no subject
В дебиане (точнее, в гноме) реализация ничуть не лучше. Хуже того, из wheezy ещё и mtpfs зачем-то убрали.
Короче, и реализации кривые, и сам протокол кривой. Вот нет чтоб использовать какой-нибудь старый, проверенный временем протокол доступа файлового уровня типа NFS.
no subject
u0_a225@android:/data/data/com.teslacoilsw.quicksshd/home $ mountrootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
/sys/kernel/debug /sys/kernel/debug debugfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
none /dev/timer_group cgroup rw,relatime,timer_slack 0 0
/dev/block/mmcblk0p35 /system ext4 ro,noatime,data=ordered 0 0
/dev/block/mmcblk0p37 /data ext4 rw,nosuid,nodev,noatime,discard,noauto_da_alloc,data=ordered 0 0
/dev/block/mmcblk0p36 /cache ext4 rw,nosuid,nodev,noatime,data=ordered 0 0
/dev/block/mmcblk0p22 /devlog ext4 rw,nosuid,nodev,noatime,errors=continue,data=ordered 0 0
tmpfs /data/qcks tmpfs rw,relatime,size=20480k,mode=750,gid=1000 0 0
tmpfs /data/efs tmpfs rw,relatime,size=20480k,mode=750,gid=1000 0 0
tmpfs /data/secure/data tmpfs rw,relatime,mode=755,gid=1000 0 0
/dev/block/mmcblk0p31 /firmware/mdm vfat ro,relatime,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/dev/block/mmcblk0p16 /firmware/q6 vfat ro,relatime,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
DxDrmServerIpc /data/DxDrm/fuse fuse.DxDrmServerIpc rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other 0 0
/dev/fuse /storage/sdcard0 fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
no subject
no subject
no subject
/storage/sdcard0 сделан монтированием через fuse (fuse.sourceforge.net)
каталога с раздела /data (если не путаю, ну да у тебя больше не откуда)
по твоей ссылке речь идёт о внешней карте, где есть vfat
no subject
ls /dataот юзера выдаёт ошибку доступа, прав не хватает.no subject
но нашел я этот каталог, конечно, с рутом
без рута вообще тяжко в линуксе, и телефон не исключение ;)
no subject
на нексусе с 4.2.2 с его (странной) поддержкой кучи пользователей каталог называется /data/media/0 и без рута туда уже не попасть
всё потому, что добрые дяди в мотороле дали каталогу media права 755, а не менее добрые дяди, собиравшие прошивку нексуса, сделали 770
no subject
no subject
А в 4.2. андроиде оно ещё будет делиться по пользователям и перемонтироваться по мере надобности: http://teamw.in/DataMedia
no subject
на многопользовательские телефоны есть патент Нокии и Гугл не включил эту фичу, но имена каталогов в 4.2 всё равно изменились
можно самому из AOSP, конечно, собрать..
no subject
no subject
Я уже и забыл когда подключал телефон к компу последний раз, ибо незачем.
no subject
И ведь копировать не только картинки надо. Те же apk, или вот текстовые файлы.
no subject
Текстовые файлы тем же дропбоксом заливаются с телефона в комп без проводов.
Apk все берутся из Play.Google.com - и тоже ниче подключать не надо. Или опять же через бокс скачивать. Ну или еще есть AirDroid - скачивай, заливай сколько влезет, все через вай-фай.
no subject
В общем, извратиться, конечно, можно как-нибудь, но при наличии провода это как-то ненатурально..
no subject
no subject
no subject
no subject
no subject
no subject
btw, внешние флешки прекрасно отдаются именно потому, что они fat
ты же в юниксе, пользуйся проверенным временем решением: командной строкой
ставишь sdk и там есть команда adb, которая, в частности, умеет копировать файлы и каталоги
она тоже не идеальна, но я и на макосе предпочитаю её всем другим способам переноса файлов
да и остальные свойства adb просто необходимы для нормальной жизни с андроидом :)
no subject
Спасибо за идею, попробую это adb.
no subject