2017-07-04 268 views
12

Androidの外部メモリファイルシステムでハードリンクとシンボリックリンクを利用したいアプリを作成しています。Androidでハードリンクとシンボリックリンクを作成する

link failed: EPERM (Operation not permitted) 

これは私が私が見てきたが、あなたは他の人がこれを行うには、root権限が必要だと思います:私は、私はこれをしようとすると、私はこのエラーを取得し、

Os.link("oldpath", "newpath"); 
Os.link("oldpath", "newpath"); 

しかしコマンドを使用して試してみました同じことを言いました。ルートが必要な場合、これらのコマンドがあるとは思いませんでした。何か案は?

+1

どのパスにハードリンクを作成しようとしていますか。 –

+0

私はあなたがここから手順を確認する必要があると思うhttps://stackoverflow.com/a/30387667/3800377 –

+0

@ KamilMahmood私は外部記憶装置にそれを作成しようとしている –

答えて

10

Androidはデフォルトで外部ストレージ用にFAT32ファイルシステムを使用しているため、Os.linkへの呼び出しに失敗しています。 FAT32ファイルシステムはハードリンクとソフトリンクをサポートしていないため、操作が許可されていないエラーが発生します。

EPERM The filesystem containing oldpath and newpath does not support the creation of hard links.

あなたはより多くの情報についてリンクシステムコールhere

さらにあなたが偽のハードリンクや正確FAT32上のソフトリンクすることはできませんを読み取ることができます。また、Androidでハードリンクを作成するにはルート権限が必要です。

+0

私はハードリンクや何か私の使用のために似たような方法がありますか? @KamilMahmood –

+0

@AshwinKudva私は答えを更新しました –

関連する問題