Galaxy Nexus'umu harici bir USB depolama sürücüsü olarak nasıl kullanabilirim?


29

Galaxy Nexus'u yeni aldım ve USB Yığın Depolama modunu desteklemediğini öğrendim. Yalnızca MTP ve PTP'yi destekler. Telefonumu düzenli olarak işte bir USB flash sürücü olarak kullanıyorum, bu yüzden bu bir problem. Dosyaları MTP ile ileri geri aktarabilirim ancak dosyaları doğrudan telefonumda düzenlemeliyim .

Telefonu harici bir sürücü olarak kullanmaya devam etmenin bir yolunu bulmak ve dosyaları ileri geri aktarmadan doğrudan telefonlarımın depolama alanındaki dosyalara erişebilmeyi isterim, ancak bazı kısıtlamalar var: t İnternete bağlı, wifi yok ve bilgisayarlarda Bluetooth yok ve bu değişmeyecek. İdeal olarak, bilgisayara bir şey yüklemem gerekmeyecek, ancak başka seçenek yoksa, bunu düşünürdüm.

Galaxy Nexus'umu harici bir flash sürücü olarak açıkladığım şekilde kullanmama izin verecek herhangi bir saldırı veya çözüm var mı?

Harici depolama kartlarına sahip diğer cihazlarda mümkün olduğu şekilde bir Windows XP bilgisayarından ve Android işletim sistemi üzerinden erişebildiğim telefon depolama alanında ayrı bir monte edilebilir FAT bölümü oluşturabilir miyim?

Telefon: VZW'de çalışan ve şu anda CM9 çalıştıran köklü ve açılmış bir Galaxy Nexus.


% 100 emin değilim ama bence hisse senedi çekirdeği bunu bile yapamıyor. Bunun için satış sonrası bir çekirdeğe veya sadece özel bir ROM’a ihtiyacınız var. G Nexus GSM: Cyanogenmod9 için tam güncelleme rehberi (4.0.4 atm, 4.1 CM10 hala çok erken bir aşamadadır). İşte size yardımcı olabilecek bir apk . kök ihtiyacı var.
ce4

Teşekkür hariç umut verici olduğunu iplik görünüyor bu . Umarım doğru değildir, aksi halde satılık bir GN'im olur.
Matt

2
Ben mutlaka kullanılması UMS ayrı SD karta ihtiyacınız sanmıyorum ama sence do harici bir SD kart yuvası yoksa, a la Kindle Fire işe bunun için ayrı bir bölüm (biçimlendirilmiş FAT) gerekir.
eldarerathis

1
MTP / PTP'nin kullanımınız için neden uygun olmadığı konusunda biraz daha genişlemeniz gerektiğini düşünüyorum. İsme rağmen, MTP aslında sadece medya dosyalarını değil, herhangi bir keyfi dosyayı aktarabilir. MTP'de yapamayacağınız tek işlem blok düzeyinde erişim gerektiren işlemlerdir, örn. Birleştirme, yeniden biçimlendirme, bölümleme, vb.
Lie Ryan

Dosyaları aktarmak istemiyorum, telefonumun bir flash sürücüsünde olduğu gibi bulundukları yerde düzenlemek istiyorum. Bunu mtp ile yapabileceğinizi sanmıyorum, yanılıyor muyum?
Matt

Yanıtlar:


28

Kısa cevap:

Şu anda, protokol özelliklerinden dolayı cihazınızı (MTP'ye güvenen herhangi bir cihaz) kullanamazsınız.

ayrıntılandırma

Netleştirmek için, Galaxy Nexus tüm cihaz için büyük bir bölüm kullanıyor, şöyle diyor: sistem, veri ve sdcard hepsi bir arada.

Galaxy Nexus için MTP seçildi, çünkü bu büyük depolama alanının kullanılmasına izin veriyor, sistem açısından bakıldığında, dosyalar ile daha iyi iletişim kurar, daha güvenli bir dosya sistemi sağlar ve bakımı daha az sorun çıkarır.

Neden istediğin gibi yapamıyorsun:

Galaxy Nexus'te yalnızca büyük bir depolama alanı olan ayrılmış bölüm yok. Bir fat32 dosya sistemi taklit edilse bile, yine de fat32 ve ext4 arasında düşük bir seviyede çeviri yapabilmek gerekir. Bu neredeyse imkansız.

Galaxy Nexus'un bir bölümü olsaydı, blok düzeyinde erişime sahip olabilirdiniz ve böylece toplu depolama erişimine sahip olabilirsiniz.


Uzun sıkıcı versiyon:


Kısa arka plan

Yığın Depolama Sınıfı (MSC), yaygın olarak, hepimizin cihazlar kullanılmak üzere kullanıldığını, USB Yığın Depolama (UMS) olarak bildiğimiz Universal Serial Bus (USB) aygıtı bir ana bilgisayar cihazına erişilebilir hale sağlayan bir protokoldür , ikisi arasında dosya aktarımını etkinleştirmek için. Altın günlerde telefona takmanız, "USB modu" na basmanız ve dosyaları taşımaya, dosyaları düzenlemeye, vb.


Medya Aktarım Protokolü (MTP)

Cihazınızda kullanılan yeni aktarım yönteminden, Medya Aktarım Protokolü'nden (MTP) bahsettiğimizde her şey çok değişti:

1 Giriş aşağıya bakınız sayfa 15 zip

Medya Aktarım Protokolü veya MTP, geçici depolama aygıtlarıyla içerik değişimi ve komut ve kontrolü için tasarlanmış bir protokoldür. PTP veya Picture Transfer Protocol'ün bir uzantısı olarak geliştirilmiştir ve öncelikle Dijital Fotoğraf Makineleri, Taşınabilir Medya Oynatıcıları ve Cep Telefonlarını hedef almaktadır.

Giriş şüpheye rağmen hala marj bıraksa da, bu protokol çok özel bir amaç için geliştirildi ve uygulandı: medya dosyalarının ve ilgili meta verilerin cihazlar arasında transferini kolaylaştırmak için:

1.1 Amaç aşağıya bakınız sayfa 15 zip

Bu protokolün birincil amacı, geçici bağlantısı olan ve önemli depolama kapasitesine sahip medya cihazları arasındaki iletişimi kolaylaştırmaktır. Bu, ikili nesnelerin değişimini ve bu bağlı cihazın içeriğinin numaralandırılmasını içerir.


Dosya Türleri destekleniyor mu?

Bu noktada, bunun medya dosyaları ve medya tabanlı cihazlar için olduğunu zaten biliyoruz, ancak yorumlarda gördüğüm bir soru var: Medya dosyaları dışındaki dosyaları kopyalayabilir miyiz (ses / video)? Evet yapabiliriz:

1.3 MTP Nesne Modeli, sayfa 15'e bakınız

"Medya Aktarım Protokolü" ndeki "medya" terimi, herhangi bir ikili veriyi tanımlamak için kullanılır ve yaygın olarak uygulandığı ses / video formatlarıyla sınırlı değildir. Ses olmayan / video nesnelerinin bazı örnekleri kişileri, programları, planlanmış etkinlikleri ve metin dosyalarını içerir.


Peki ya "canlı düzenleme"?

Sorunuz özellikle cihazınızın (Galaxy Nexus) harici bir USB depolama sürücüsü olarak kullanılmasıyla ilgilidir. Neden yapılamıyor? MTP protokolü verileri tek yönlü bir işlemle sınırlandırır, ikincisi de cihaz depolamasının bilgisayar tarafından yerel bir dosya olarak kullanıldığını açıklar:

4.2 Tek Yönlü Veri Akışı için sayfa 29'a bakınız

MTP'deki veri akışı her zaman tek yönlüdür. Bir işlem başlatırken, veriler yalnızca Başlatıcıdan Yanıtlayıcıya akar. İstenen işleme yanıt verirken, veriler yalnızca Yanıtlayıcıdan Başlatıcıya iletilir. İkili veri değişimi aşamasında, veriler Yanıtlayıcıdan Başlatıcıya veya Başlatıcıdan Yanıtlayıcıya akabilir, ancak hiçbiri her ikisi de gerçekleşemez. İki yönlü, ikili veri alışverişi çoklu işlemlerle yapılmalıdır.


Avantajlar - Dezavantajlar

Avantajları

MTP, özellikle kullanıcı verilerinin güvenliği ve bütünlüğü ile ilgili bazı avantajlar taşımaktadır:

Microsoft MTP Uygulamalarına Genel Bakış

Bir USB ana bilgisayarı bir MSC bölümü monte ettiğinde, örneğin dosya sisteminin bozulmasına ya da desteklenmeyen bir türe yeniden biçimlendirilmesine izin vererek, depolamanın mutlak denetimini üstlenir.

Bu arada, MTP, yönetilen depolama birimini yazılabilen veya okunabilen bir yerel dosya haline getirerek bunun üstesinden gelir.

Dezavantajları

MTP geleneksel bir çıkarılabilir sürücü olarak değerlendirilmediğinden, günü kurtarmak için hiçbir kurtarma aracı kullanılamaz.

Destek hala devam etmektedir, bazı işletim sistemleri hala üçüncü taraf yazılımı gerektirir.

MTP standartları (daha önce belirtildiği gibi) nesnelerin doğrudan değiştirilmesine izin vermez. Bunun yerine, değiştirilen nesnelerin bütünüyle geri yüklenmesi gerekir.


Referanslar:

Umarım bu MTP'nin neden iyi olduğu (iyileştirme) , OTOH'nin kötü olması (kullanıcı alışkanlıklarını değiştirmek zorunda kalacak ) olarak açıklığa kavuşturulur .

İşte cevabı sentezlemek için kullanılan okuma materyali:

Yukarıdaki cevap, bu referans linklerinin içeriğine ve yazarlarına aktarılmaktadır.


3
Mtp'nin ayrıntılı tanımını takdir ediyorum, ancak mtp'yi istediğim gibi kullanamayacağımı kabul ettim. İlgilendiğim şey sınırlamanın çevresinde bir yol bulmak. Örneğin, ayrı bir monte edilebilir bölüm oluşturmak için dahili depolamayı yeniden bölümlere ayırma. MTP sınırlamalarını nasıl aşabileceğim konusunda herhangi bir öneriniz var mı?
Matt,

@Matt Yorum çok büyüyordu, "kısa cevap" bölümünde bir açıklama ekledim. Daha önce kendimi netleştiremediğim için üzgünüm.
Zuul

Eklenen bilgiler için teşekkürler ama yine de bunun çoğunun farkındaydım. Bilmek istediğim şey, diğer çözümler dışında, telefonun UMS'yi destekleyecek ayrı bir FAT bölümü ile yeniden bölümlendirilebileceği mi? Öyleyse nasıl?
Matt,

Bounty'yi ce4'e vermeyi bitirdim çünkü kodu çözüme en yakın şeydi ancak ayrıntılı bilgi ve sağladığınız yardım için teşekkürler.
Matt

7

Geridönüşümlü bir görüntü dosyasını USB üzerinden UMS / MSC olarak vermek mümkün olabilir.

Kesinlikle ihtiyacınız olacak:

  • kök
  • çekirdek desteği : geridöngü (/ dev / blok / loop0) ve UMS (/ sys / cihazlar / platform / usb_mass_storage /)
  • Bu dosyayı etkinleştirmek / devre dışı bırakmak için özel bir uygulama veya her zaman görüntü dosyasını dışa aktarmak için özel bir init betiği
    İşte kolay bir kesilebilir uygulama için bir örnek , yine de gereken küçük bir gelişme ... ) loop0'a ve ayrıca loop0'u önceden kaybettikten sonra derleyin. Ek olarak, eğer ihraç edilmezse Android cihazına monte etmek mümkün olabilir, örneğin / sdcard / fat

İşte Galaxy Nexus'umla ilgili kısa bir test (kurtarma modunda):

#create a 10mb image file and format it with FAT, name it testFat:
me@workstation:~$ dd if=/dev/zero of=/tmp/fat.img count=10 bs=1M
10+0 records in
10+0 records out
10485760 Bytes (10 MB) copied, 0,00699535 s, 1,5 GB/s
me@workstation:~$ mkfs.vfat -n fatTest /tmp/fat.img 
mkfs.vfat 3.0.9 (31 Jan 2010)
me@workstation:~$ file /tmp/fat.img
/tmp/fat.img: x86 boot sector, [...], label: "fatTest    ", FAT (16 bit)

#Push it to my phone, create loop0 from it and export it via UMS
me@workstation:~$ adb push /tmp/fat.img /sdcard/fat.img
5215 KB/s (10485760 bytes in 1.963s)
me@workstation:~$ adb shell
root@android # ls /sys/devices/platform/usb_mass_storage/lun0
file    power   ro      uevent
root@android # losetup /dev/block/loop0 /sdcard/fat.img
root@android # losetup
/dev/block/loop0: 0 /sdcard/fat.img
root@android # echo /dev/block/loop0 > /sys/devices/platform/usb_mass_storage/lun0/file 
root@android # exit

#See that it works. Yay!
me@workstation:~$ 
me@workstation:~$ mount
[...]
/dev/sdg on /media/fatTest type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks)
me@workstation:~$ dmesg
[137805.009285] sd 27:0:0:0: [sdg] 20480 512-byte logical blocks: (10.4 MB/10.0 MiB)
[137805.010024] sd 27:0:0:0: [sdg] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[137805.013446]  sdg:
me@workstation:~$

Şu anda elimde hiçbir test cihazım (GNexus) yok, birisi çok nazik ve UMS'nin CM9'a dahil edilmiş olup olmadığına bakar mı? Sadece bunun uygun olup olmadığını görün: / sys / devices / platform / usb_mass_storage / lun0 / file
ce4

1
Erken CM10 görünmüyor, bu yüzden CM9'un da olmadığını tahmin ediyorum.
eldarerathis

@eldarerathis: Aradığın için teşekkürler! Farklı bir çekirdeğe derlenmiş olabilir veya birinin çalışmasını sağlamak zorunda olması gerekiyordu.
ce4 temmuz

@ ce4 Bu umut verici görünüyor, ancak bunun nasıl gerçekleştirileceğini açıklayan daha fazla ayrıntı görmeyi çok isterim. Telefonun depolama alanını kalıcı olarak yeniden mi bölümlendiriyorsunuz yoksa bu farklı bir çözüm mü? Dosya sisteminin bütünlüğünü oluşturmak gibi bu yöntemin herhangi bir sakıncası var mı?
Matt,

Telefonumu flash sürücü olarak kullanıyorum. İşyerindeki paylaşılan bir bilgisayara taktım, bir dokümanı düzenledikten sonra kaydedin ve devam ediyorum. Dosyayı bilgisayara ve tekrar tekrar aktarmak benim için işe yaramıyor. Biraz sonra sohbete başlayacağım.
Matt,

3

Bu TL; DR versiyonudur.

Üzgünüz, USB Yığın Depolama, Galaxy Nexus ile mümkün değildir.

Bunun nedeni, USB Yığın Depolama'nın PC'ye dosya sistemine erişim blok erişimini sağlaması ve dosya sisteminin bütünlüğünü korumak için özel erişim olması gerektiğidir. Bu nedenle Android telefonlar SD kartı çıkarır ve telefon USB Yığın Depolama modundayken uygulamalar SD karttaki verileri kullanamaz.

Galaxy Nexus, ancak, gelmez sahip bir SD kart. Erişilen telefonun hacimli dahili deposu.

MTP (@ Zuul'un mükemmel açıklamasına bakın) bunun üstesinden gelir ve hem telefonun hem de bilgisayarın dosya kilitlenmeden dosyalara erişmesini sağlar. Aşağı yönleri, özel blok düzeyinde erişim elde edememeniz ve MTP için işletim sistemi desteği henüz tam olarak orada değil.

Bu özellik sadece onsuz yaşayamayacağınız bir özellik ise, o zaman en iyi bahis farklı bir telefon kullanmaktır. Tesadüfen değil, bu Galaxy Nexus'tan kurtulmamın ve DROID RAZR MAXX'in olmasının sebeplerinden biri.


1
“Bu yüzden Android telefonlar SD kartını söküyor ...” Peki sd'nin (ve bu konuda dahili depolama) bilgisayara ve aynı anda Android işletim sistemine aynı anda bağlanmasına izin veren uygulamalar? Rezound'umda böyle bir uygulama vardı ve gayet iyi çalıştı.
Matt,

Hiç böyle bir uygulama duymadım. Varlığının kanıtı var mı?
Michael Hampton,

Kulağa çok sert geldi! google.hu/…
RR

1
Ve hiç veri kaybetmedin mi? O zaman çok şanslısın.
Michael Hampton,

3
Evet, işte bu yüzden sistem ilk etapta buna izin vermiyor.
Michael Hampton,


0

Bu XDA-Developers Uygulamasını bir deneyebilirsiniz:

Not: Bu uygulama Ice Cream Sandwich Limanlarının ilk günlerinde geliştirilmiştir. Şu anda Bağlantı Noktalarının hiçbiri yerel USB Yığın Depolama desteğine sahip değildi ve bu uygulama yine de UMS kullanmak için geçici bir geçici çözüm anlamına geliyordu. Bu nedenle, kullandığınız ICS veya JB Portu hala yerel olarak UMS'yi desteklemiyorsa, bu Uygulama sizin için ilginç olmayacaktır. Bu durumda, yardım geliyor:

Cihaz açıldıktan sonra uygulama otomatik olarak başlar ve cihazın USB üzerinden bir bilgisayara ne zaman bağlandığını otomatik olarak algılar. Ardından bildirim çubuğunda bir bildirim açılır ve bildirime dokunarak USB Yığın Depolama'yı etkinleştirmek / devre dışı bırakmak için bir GUI açabilirsiniz; sadece / neredeyse orijinal UMS özelliği gibi.

Şimdiye kadar oldukça iyi geliyor - yalnızca Galaxy Nexus cihazınız bilinen cihazların listesinde açıkça belirtilmiyor. Bu mutlaka işe yaramayacağı anlamına gelmez, ancak şu anda bilinmemektedir. Denemeye değer olmalı.


Bu zaten tartışılmıştır, OP yorumlarını görün. Ne yazık ki, aynı zamanda bir çıkmaz. :(
ce4

Bahsettiğiniz yorumları bulamadım - ancak bu zaten bilinen bir seçenekse, özür dilerim. Ve "çıkmaz" artık çalışmadığı anlamına mı geliyor? Aman Tanrım, bir sonraki güncellemeleri atladım sanırım;)
Izzy

Alınma! :) daha "FYI" olarak ifade edildi. "İşte bir apk", XDA bağlantınızla aynı konuya işaret eder.
ce4,

Bu konudaki ana android sohbette oldukça uzun bir konuşma yaptık. Yeterince uzun bir geçmiş var mı bilmiyorum ama hala erişebiliyorsan daha fazla bilgi sahibi olacak
ce4

Bilgi için teşekkürler, ce4 - ne yazık ki şu anda içine daha derin kazmak için zaman özlüyorum. Sadece MTP'nin UMS'yi tamamen kapatmak için olması gerektiği kadar tam olmadığını görüyorum, bu yüzden hala mevcut bir çözüm olması gerektiğinden emindim. Ve UMS'yi tekrar ICS ve üstü ile etkinleştirme konusunda bazı konuları hatırladım. Umarım çok yakında bir şey olur - MTP herkesin cevabı gibi görünmüyor.
Izzy
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.