Schreibberechtigung für bestimmte Pfade, z. B. die SD-Karte (extSdCard)


10

Bei dem Versuch, eine Datei von einem Remote-Server auf ein Android-Gerät zu übertragen, sind Berechtigungsprobleme aufgetreten.

Es stellt sich heraus, dass ich am Speicherort der SD-Karte (/ mnt / extSdCard) keine Schreibberechtigung habe.

Ich verwende SSHDroid als SSH-Server auf dem Android-Gerät und vSSH als SSH-Client, um SSH auf dem Android-Gerät zu betreiben.

Da sowohl sudo als auch su in der ssh-Server-App (SSHDroid) nicht vorhanden zu sein scheinen, frage ich mich, wie ich die Berechtigung zum Schreiben auf den Speicherort der SD-Karte ändern / erhalten kann. Oder reicht das Root-Privileg nicht aus, um die Schreibberechtigungen zu ändern, und wird dies daher ausschließlich vom Android-Betriebssystem geregelt, was eine Einschränkung des Betriebssystems darstellt?

Was ich tun kann , ist in den Home-Pfad des SSH-Servers (SSHDroid) zu schreiben. Dieser Pfad ist jedoch sehr umständlich und kann nicht über die reguläre Android-Datei-Browser-API erreicht werden. Aus diesem Grund wollte ich die Datei auf einen zugänglichen Pfad wie die SD-Karte übertragen.

Ergänzung. Die Android-Version ist 4.4.2. Die Kernel-Version ist 3.4.0-1539356 # 1.


3
Das ist eine Einschränkung von Kitkat (sie nennen es "Sicherheit", aber in Wirklichkeit ist es eher eine "force2cloud"). Sie können das nicht umgehen, ohne Ihr Gerät zu rooten. Bis auf die Wahl Ihrer internen SD-Karte, da Sie dort schreiben können.
Izzy

@Izzy Wenn du das in eine Antwort gesteckt hättest, wäre diese Frage eine beantwortete Frage .
Mussé Redi

Fertig, mit ein paar weiteren Details. Ich hätte Ihnen gerne eine bessere Antwort gegeben (mit einer bequemeren Lösung), aber Google verbietet das ...
Izzy

"Ja wirklich?" Ich dachte, sie wären ein großer Fan des Open-Source-Geistes.
Mussé Redi

"Tu einfach, was ich sage, tu nicht, was ich tue". Unterscheiden Sie zwischen den Blüten und den Früchten. Google wird als "Open Source" bezeichnet und mischt unter anderem viele proprietäre Inhalte ein. Und "Freiheit" wird mit jeder neuen Android-Version eingeschränkter. Aber das ist kein Thema für hier :)
Izzy

Antworten:


9

Eine der mit eingeführten bestand darin, die WRITE_EXTERNAL_STORAGEBerechtigung auf die Schutzstufe "SignatureOrSystem" zu verschieben. bedeutet, dass eine "normale App" (dh eine, die Sie selbst als "normaler Benutzer" ohne Root-Besonderheiten installieren) nicht , selbst wenn dies angefordert wird länger bekommen es gewährt. Es gibt also nur sehr wenige Dinge, die Sie tun können, um dies zu umgehen:

  • Offensichtlich: Rooten des Geräts und Entfernen dieser Grenze
  • Verwenden des "persönlichen" Verzeichnisses der App als Speicher für Ihre synchronisierten Dateien (dh <sdcard>/Android/data/<package_name>/da dies der einzige Ort ist, an dem eine App mit Kitkat auf SD schreiben kann)
  • Verwenden Sie Ihre Karte als Speicher (da hier die Einschränkung nicht gilt)

Was sind die Nachteile des Rootens eines Android-Geräts? Ist die Garantie veraltet?
Mussé Redi

Höchstwahrscheinlich. In der EU gibt es dafür ein Gesetz, das zwischen Garantie und Gewährleistung unterscheidet. Einer von ihnen ist gesetzlich durchgesetzt (und kann nicht durch Wurzelbildung überholt werden), der andere ist ein nicht obligatorisches Angebot des Herstellers und damit die von ihm getroffene Entscheidung. Sieht außerhalb der EU anders aus, daher hier keine eindeutige Antwort.
Izzy

1

Sie können die externe SD-Karte jederzeit aus dem Gerät nehmen und an Ihren PC anschließen. Die meisten PCs unterstützen die Micro-SD-Karten nicht, Sie können jedoch einen Adapter verwenden. Weitere Infos hier: https://en.wikipedia.org/wiki/Secure_Digital#Micro

Wenn die externe SD-Karte in Ihrem PC installiert ist, können Sie alle Dateien darauf lesen und schreiben :-)


Es war eher eine Übung, um zu sehen, wie weit Sie mit ssh auf einem Android-Gerät gehen können, anstatt auf den Inhalt der SD-Karte zuzugreifen.
Mussé Redi
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.