SD kart (extSdCard) gibi belirli yollara yazma izni


10

Uzak sunucudan Android cihaza dosya aktarma girişiminde izin sorunları ile karşılaştım.

SD kart (/ mnt / extSdCard) konumunda yazma iznim olmadığı ortaya çıkıyor.

Android cihazında ssh sunucusu olarak SSHDroid'i ve Android cihazında ssh ile uğraşmak için sSS istemcisi olarak vSSH kullanıyorum.

Hem sudo hem de su ssh sunucu uygulamasında (SSHDroid) yok gibi göründüğünden, SD kart konumuna yazma iznini nasıl değiştirebileceğimi / alabileceğimi merak ediyorum. Ya da root ayrıcalığı yazma izinlerini değiştirmek için yeterli değildir ve bu sadece Android işletim sistemi tarafından yönetilir mi, yani işletim sisteminin bir sınırlaması mıdır?

Ne yapabilirim ssh sunucusunun (SSHDroid) ana yoluna yazmaktır. Ancak bu yol çok hantaldır ve normal Android dosya tarayıcı API'sından ulaşılamaz. Bu yüzden dosyayı SD kart gibi erişilebilir bir yola aktarmak istedim .

Ek. Android sürümü 4.4.2'dir. Çekirdek sürümü 3.4.0-1539356 # 1'dir.


3
Bu Kitkat'ın bir kısıtlamasıdır (buna "güvenlik" diyorlar, ama gerçekte bir "force2cloud"). Cihazınızı köklendirmeden bu sorunu çözemezsiniz. Dahili SD Kartınızı seçmek dışında , orada yazabilirsiniz.
Izzy

@Izzy Eğer bir cevaba koyarsanız, bu soru cevaplanmış bir soru olacaktır .
Mussé Redi

Bitti, birkaç ayrıntı daha sağlandı. Sana daha iyi bir cevap vermeyi sevmiştim (daha uygun bir çözümle), ancak Google bunu yasaklıyor ...
Izzy

Gerçekten mi? Onlara açık kaynak ruhunun büyük bir hayranının nerede olduğunu öğrettim.
Mussé Redi

"Sadece dediğim gibi yap, benim yaptığım gibi yapma". Çiçekler ve meyveler arasında ayrım yapın. "Açık kaynak" olarak ilan edilen Google, diğerlerinin yanı sıra birçok özel mülkle karışır. Ve "özgürlük" her yeni Android sürümü ile daha da kısıtlanıyor. Ama bu burada bir konu yok :)
Izzy

Yanıtlar:


9

ile getirilen kısıtlamalardan biri , WRITE_EXTERNAL_STORAGEizni "SignatureOrSystem" koruma düzeyine taşımaktı, bu da istendiğinde bile "normal uygulama" (yani herhangi bir kök özelliği olmadan kendinizi "normal kullanıcı" olarak yüklediğiniz) daha uzun süre verilsin. Dolayısıyla, bu sorunu çözmek için yapabileceğiniz çok az şey var:

  • belli ki: cihazın köklenmesi ve bu sınırın kaldırılması
  • kullanarak uygulamanın "kişisel" dizinini (yani sizin Senkronize edilen dosyalar için depolama gibi <sdcard>/Android/data/<package_name>/bu gibi sadece KitKat'ta ile SD üzerinde yazabilirsiniz bir uygulamayı yerleştirin)
  • senin kullanarak depolama olarak kart (burada olduğu gibi sınırlama geçerli değildir)

Bir android cihazı köklendirmenin dezavantajları nelerdir? Garanti geçersiz mi?
Mussé Redi

Büyük ihtimalle. AB'de bunun için garanti ve garanti arasında ayrım yapan bir yasa vardır. Bunlardan biri yasayla uygulanır (ve köklenme tarafından geçersiz kılınamaz), diğeri üreticinin zorunlu olmayan bir teklifidir ve onun tarafından verilen karardır. AB dışında farklı görünüyor, bu yüzden burada kesin bir cevap yok.
Izzy

1

Harici sdcard'ı her zaman cihazdan çıkarabilir ve bilgisayarınıza takabilirsiniz. Çoğu bilgisayar micro-sdcards'ı desteklemez, ancak bir adaptör kullanabilirsiniz. Daha fazla bilgi burada: https://en.wikipedia.org/wiki/Secure_Digital#Micro

Harici sdcard bilgisayarınıza monte edilmişse, o zaman tüm dosyaları okuyabilir ve yazabilirsiniz :-)


SD karttaki içeriğe erişmek yerine ssh ile bir android cihazda ne kadar ileri gidebileceğinizi görmek daha fazla bir alıştırma oldu.
Mussé Redi
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.