Permissão negada, mesmo que eu possua e permissões são 777

2

Estou no Android usando o Termux e copiei um arquivo do meu sdcard para minha pasta inicial do Termux. (Eu uso um aplicativo explorador de arquivos com permissões de root para isso ..) Agora, tendo o arquivo em meu diretório pessoal, verifiquei qual é o nome de usuário e os grupos e defini-o como o proprietário desse arquivo e também defini as permissões para 777.

$ whoami
u0_a87
$ groups
u0_a87
$ su -c chown u0_a87:u0_a87 Files.zip
$ su -c chmod 777 Files.zip
$ ls -la
total 7292
drwx------ 2 u0_a87 u0_a87    4096 Jul 22 09:13 .
drwx------ 4 u0_a87 u0_a87    4096 Jul 22 09:13 ..
-rwxrwxrwx 1 u0_a87 u0_a87 7454766 Jul 22 01:24 Files.zip$ unzip
Files.zip
unzip: can't open Files.zip[.zip]
$ cat Files.zip
cat: Files.zip: Permission denied

Por que ainda não consigo acessá-lo?

Isso funcionou muito bem:

$ mkdir test
$ zip -r test.zip test
  adding: test/ (stored 0%)
$ ls -la
total 7300
drwx------ 3 u0_a87 u0_a87    4096 Jul 22 09:31 .
drwx------ 4 u0_a87 u0_a87    4096 Jul 22 09:13 ..
-rwxrwxrwx 1 u0_a87 u0_a87 7454766 Jul 22 01:24 Files.zip
drwx------ 2 u0_a87 u0_a87    4096 Jul 22 09:31 test
-rw------- 1 u0_a87 u0_a87     160 Jul 22 09:31 test.zip
$ rm -rf test
$ unzip test.zip
Archive:  test.zip
$ unzip test.zip
Archive:  test.zip
$ ls -la
total 7300
drwx------ 3 u0_a87 u0_a87    4096 Jul 22 09:31 .
drwx------ 4 u0_a87 u0_a87    4096 Jul 22 09:13 ..
-rwxrwxrwx 1 u0_a87 u0_a87 7454766 Jul 22 01:24 Files.zip
drwx------ 2 u0_a87 u0_a87    4096 Jul 22 09:31 test
-rw------- 1 u0_a87 u0_a87     160 Jul 22 09:31 test.zip

O que estou perdendo, como posso obter acesso a esse arquivo da minha conta de usuário sem usar su / sudo etc?

Eu também tentei descobrir se há algum atributo estendido nesse arquivo. De acordo com a Internet, ls -l teria me mostrado que há atributos estendidos com um caractere + (por exemplo, -rwxrwxrwx+ ). Como você pode ver acima, este não foi o caso. Só para ter certeza, também verifiquei usando o comando attr :

$ attr -l ./Files.zip
Attribute "selinux" has a 28 byte value for ./Files.zip
$ attr -g selinux ./Files.zip
attr_get: No data available
Could not get "selinux" for ./Files.zip
$ su -c attr -l ./Files.zip
sush: attr: not found
$ su -c attr -g selinux ./Files.zip
sush: attr: not found

Os resultados não ficaram claros para mim. Eu não entendo por que isso me diz que existe um atributo "selinux", mas depois se recusa a me dar o valor e quando eu tento com su -c ele nem lista o atributo "selinux", sem mencionar que recebendo o valor falhar.

    
por Forivin 22.07.2017 / 09:45

1 resposta

0

Eu tive exatamente o mesmo problema. Embora eu não entenda exatamente o que está acontecendo aqui, a solução é não usar um explorador de arquivos separado para copiar os arquivos. Em vez disso, certifique-se de que o termux tem as permissões do Android relevantes (configurações - > apps - > permissões; e / ou execute o termux-setup-storage).

Na sua pasta home do termux deve haver outra pasta chamada storage, que é um link para o seu sdcard.

    
por 28.12.2017 / 00:20