Claro que você pode. Embora pareça que não há problema em migrar o dalvik-cache para um sistema de arquivos normal de cartão SD (o mais comum, vfat), ainda é altamente recomendável que você formate seu cartão SD para ext4 (ou o mesmo que o seu /data
) para garantir que tudo funcione bem.
Então vamos. É recomendável fazer um backup completo de todos os seus aplicativos antes de prosseguir, mas se você tiver sorte, não será necessário. Supondo que você tenha um emulador de terminal para executar as tarefas necessárias.
Primeiro, crie uma pasta para a qual você deseja migrar seu dalvik-cache. Em seguida, chmod
e chown
a nova pasta para combinar /data/dalvik-cache
. Se você estiver executando um sistema operacional Android habilitado para SELinux, não se esqueça de alterar os contextos de segurança correspondentemente. Corre
ls -dlZ /data/dalvik-cache
ls -lZ /data/dalvik-cache
para ver as permissões originais, proprietário / grupos e contextos de segurança da pasta dalvik-cache.
Em seguida, copie todos os arquivos /data/dalvik-cache
para seu novo local, por exemplo /storage/sdcard1/dalvik-cache
. Você pode usar o cp -a
comando para preservar os atributos do arquivo, o que tornaria as coisas mais simples.
Verifique se nenhum novo aplicativo é iniciado durante o processo da etapa a seguir.
Em seguida, rm -r /data/dalvik-cache
crie um link simbólico para o novo local usando
ln -s /storage/sdcard1/dalvik-cache /data/dalvik-cache
Isso é tudo. Foram realizadas. Reinicie o seu telefone (não obrigatório, mas recomendado).
Alguns avisos sobre esse processo:
O busybox nem sempre funciona bem, pois o Android é baseado em um kernel Linux altamente modificado. Por exemplo, quase todas as funções relacionadas ao SELinux não funcionam corretamente. Você pode testá-lo como mostrado abaixo.
toolbox ls -Z /data
busybox ls -Z /data
toolbox getenforce
busybox getenforce
No entanto, eles podem funcionar corretamente, dependendo da versão do Android:
busybox chcon <context> <files...>
busybox runcon <context <program> [args...]
Nunca remova o seu cartão SD. Se você reformatar o cartão SD, verifique se ele ainda está ext4 E crie a pasta dalvik-cache novamente antes de inicializar o telefone pela primeira vez.