SDカード(extSdCard)などの特定のパスに対する書き込み権限


10

リモートサーバーからAndroidデバイスにファイルを転送しようとして、権限の問題に遭遇しました。

SDカードの場所(/ mnt / extSdCard)に書き込み権限がないことがわかりました。

私は、AndroidデバイスのsshサーバーとしてSSHDroidを使用し、Androidデバイスのsshに従事するsshクライアントとしてvSSHを使用しています。

sudoとsuの両方がsshサーバーアプリ(SSHDroid)にないように見えるので、SDカードの場所への書き込み権限を変更/取得する方法を知りたいのですが。または、root権限は書き込み権限を変更するのに十分ではなく、これはAndroid OSによってのみ管理されるため、OSの制限ですか?

ができることは、sshサーバー(SSHDroid)のホームパスに書き込むことです。ただし、このパスは非常に扱いにくく、通常のAndroid filebrowser APIからはアクセスできません。これが、SDカードなどのアクセス可能なパスにファイルを転送したかった理由です。

補足。Androidバージョンは4.4.2です。カーネルのバージョンは3.4.0-1539356#1です。


3
これはキットカットの制限です(「セキュリティ」と呼ばれますが、実際には「force2cloud」です)。デバイスをルート化しないと、この問題を回避することはできません。そこにあなたが書くことができるので、あなたの内部 SDカードを選ぶことを除いて。
イジー

@Izzyもしそれを答えに入れたら、この質問は答えられた質問になるでしょう。
MusséREDI

完了、詳細がいくつか提供されました。私は(より便利な解決策を用いて)より良い答えを出したかったのですが、Googleはそれを禁止しています...
Izzy

本当に?私は彼らにオープンソース精神の大ファンを教えました。
MusséREDI

「私が言うようにしてください、私がするようにしないでください」。花と果物を区別します。「オープンソース」と宣言されているGoogleは、とりわけ多くの独占的なものを混ぜ合わせています。そして、「自由」は、Androidの新しいバージョンごとに制限されます。しかし、それはここではトピックではありません:)
Izzy

回答:


9

導入された制限の1つは、WRITE_EXTERNAL_STORAGE保護レベルの「SignatureOrSystem」に権限を移動することた。これは、要求された場合でも、「通常のアプリ」(つまり、ルートスペシャリティなしで「通常のユーザー」として自分をインストールするもの)は、長くそれを許可します。したがって、これを「回避する」ためにできることはほとんどありません。

  • 明らかに:デバイスをルート化し、この制限を取り除く
  • 使用したアプリの「個人的な」ディレクトリを(つまり、あなたのsync'dファイルのストレージとして<sdcard>/Android/data/<package_name>/、このアプリはキットカットとSDに書くことができる唯一の場所であるように、)
  • あなたの使用してストレージとしてカードを(こことしての制限は適用されません)

Androidデバイスを応援することの欠点は何ですか?保証は廃止されますか?
MusséREDI

最も可能性が高い。EUには、保証と保証を区別する法律があります。それらの1つは法律によって強制され(そして応援によって廃止することはできません)、もう1つはメーカーの必須ではない提供であり、その決定は彼によって行われました。EU外では見た目が異なるため、明確な答えはありません。
イジー

1

あなたは常にデバイスから外付けSDカードを取り出し、それをあなたのPCに接続することができます。ほとんどのPCはマイクロSDカードをサポートしていませんが、アダプターを使用できます。詳細はこちら:https : //en.wikipedia.org/wiki/Secure_Digital#Micro

外付けSDカードがPCにマウントされている場合は、その上のすべてのファイルを読み書きできます:-)


SDカードのコンテンツにアクセスするのではなく、Androidデバイスでsshを使用してどこまで行けるかを確認するのは、より練習問題でした。
MusséREDI
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.