Execute vários comandos no script init.d na inicialização

0

Eu encontrei um guia para corrigir permissões em um sistema de arquivos EXT4 em um cartão MicroSD. As ROMs do AOSP / CyanogenMod que eu tentei montarão isso, mas as permissões estão bagunçadas. O guia costumava funcionar bem no KitKat, mas recentemente comprei um Note 4, fiz o root e gravei o SlimRemix, que é o 5.1.x Lollipop, e o guia não funciona mais completamente.

O que estou tentando fazer é alterar as permissões de / mnt / media_rw / sdcard1 para 777 (o padrão é 755). Parece ser de propriedade de "media_rw" group / user. Mudando de 755 para 777 funciona, e não tenho dificuldade em ler / escrever. Mas as permissões são definidas de volta para 755 na reinicialização. Não tenho certeza da causa.

Como uma solução temporária, descobri que posso usar scripts init.d (/system/etc/init.d) para executar comandos automaticamente na inicialização. Minha ROM também executará durante a inicialização quaisquer scripts localizados em /data/local/userinit.sh e / ou userinit.d (mesmo caminho).

No entanto, estou tendo problemas para executar vários comandos. O que eu tenho agora:

! / system / bin / sh

su & amp; & amp; chmod 777 -R / mnt / media_rw / sdcard1

As permissões do arquivo estão definidas corretamente para 755. Ele parece executar apenas a parte su e, em seguida, pára, nenhuma alteração de permissão ocorre. Se executado sem su, recebo "Permission denied", conforme esperado. Eu posso usar o aplicativo Script Manager, omitir o "su & amp; & amp;" bit, então (em SM) marca o script como "Execute", "su" e "on boot" e funciona. Mas como tenho suporte nativo para a execução automática de scripts na inicialização, prefiro não usar um aplicativo para fazer isso.

Eu reconheço que uma solução melhor seria encontrar uma maneira de alterar permanentemente as permissões, e se alguém souber como isso pode ser feito, eu apreciaria as informações, mas um roteiro será suficiente para os meus propósitos. Alguém pode apontar o que estou fazendo errado? Obrigado!

Enigma83
fonte
o que você está tentando fazer misturando su? talvez seu comando deva ser su -c [comando] ??
Francisco Tapia
Estou tentando executar o comando su primeiro, seguido por "chmod 777 -R / mnt / media_rw / sdcard1". Mas na execução real, ele pára no su e não vai além. É por isso que eu disse "vários comandos". É claro que "#! / System / bin / sh" diz ao Android que é um script e qual shell deve ser usado (por algum motivo, o Superusuário não incluiu o # no meu post mesmo sabendo que eu o digitei). Vou modificar meu roteiro com sua sugestão e ver o que acontece.
Enigma83