diff --git a/website/docs/.vitepress/locales/en.ts b/website/docs/.vitepress/locales/en.ts index c1ee11a0..f985ddaf 100644 --- a/website/docs/.vitepress/locales/en.ts +++ b/website/docs/.vitepress/locales/en.ts @@ -36,7 +36,7 @@ export default defineConfig({ function nav() { return [ { text: 'Guide', link: '/guide/what-is-kernelsu' }, - { text: 'Github', link: 'https://github.com/tiann/KernelSU' } + { text: 'GitHub', link: 'https://github.com/tiann/KernelSU' } ] } @@ -58,4 +58,4 @@ function sidebarGuide() { ] } ] -} \ No newline at end of file +} diff --git a/website/docs/.vitepress/locales/id_ID.ts b/website/docs/.vitepress/locales/id_ID.ts index c0af156d..59429ca7 100644 --- a/website/docs/.vitepress/locales/id_ID.ts +++ b/website/docs/.vitepress/locales/id_ID.ts @@ -36,7 +36,7 @@ export default defineConfig({ function nav() { return [ { text: 'Petunjuk', link: '/id_ID/guide/what-is-kernelsu' }, - { text: 'Github', link: 'https://github.com/tiann/KernelSU' } + { text: 'GitHub', link: 'https://github.com/tiann/KernelSU' } ] } diff --git a/website/docs/.vitepress/locales/ja_JP.ts b/website/docs/.vitepress/locales/ja_JP.ts index b12ac7a4..5609f566 100644 --- a/website/docs/.vitepress/locales/ja_JP.ts +++ b/website/docs/.vitepress/locales/ja_JP.ts @@ -36,7 +36,7 @@ export default defineConfig({ function nav() { return [ { text: 'ガイド', link: '/ja_JP/guide/what-is-kernelsu' }, - { text: 'Github', link: 'https://github.com/tiann/KernelSU' } + { text: 'GitHub', link: 'https://github.com/tiann/KernelSU' } ] } diff --git a/website/docs/.vitepress/locales/pt_BR.ts b/website/docs/.vitepress/locales/pt_BR.ts index b354bfc9..ba520054 100644 --- a/website/docs/.vitepress/locales/pt_BR.ts +++ b/website/docs/.vitepress/locales/pt_BR.ts @@ -36,7 +36,7 @@ export default defineConfig({ function nav() { return [ { text: 'Guia', link: '/pt_BR/guide/what-is-kernelsu' }, - { text: 'Github', link: 'https://github.com/tiann/KernelSU' } + { text: 'GitHub', link: 'https://github.com/tiann/KernelSU' } ] } diff --git a/website/docs/.vitepress/locales/ru_RU.ts b/website/docs/.vitepress/locales/ru_RU.ts index a26e42ff..ead6b0fc 100644 --- a/website/docs/.vitepress/locales/ru_RU.ts +++ b/website/docs/.vitepress/locales/ru_RU.ts @@ -36,7 +36,7 @@ export default defineConfig({ function nav() { return [ { text: 'Руководство', link: '/ru_RU/guide/what-is-kernelsu' }, - { text: 'Github', link: 'https://github.com/tiann/KernelSU' } + { text: 'GitHub', link: 'https://github.com/tiann/KernelSU' } ] } @@ -58,4 +58,4 @@ function sidebarGuide() { ] } ] -} \ No newline at end of file +} diff --git a/website/docs/.vitepress/locales/vi_VN.ts b/website/docs/.vitepress/locales/vi_VN.ts index a546745c..e2ee6296 100644 --- a/website/docs/.vitepress/locales/vi_VN.ts +++ b/website/docs/.vitepress/locales/vi_VN.ts @@ -36,7 +36,7 @@ export default defineConfig({ function nav() { return [ { text: 'Hướng Dẫn', link: '/vi_VN/guide/what-is-kernelsu' }, - { text: 'Github', link: 'https://github.com/tiann/KernelSU' } + { text: 'GitHub', link: 'https://github.com/tiann/KernelSU' } ] } diff --git a/website/docs/.vitepress/locales/zh_CN.ts b/website/docs/.vitepress/locales/zh_CN.ts index 65450787..93117106 100644 --- a/website/docs/.vitepress/locales/zh_CN.ts +++ b/website/docs/.vitepress/locales/zh_CN.ts @@ -36,7 +36,7 @@ export default defineConfig({ function nav() { return [ { text: '指南', link: '/zh_CN/guide/what-is-kernelsu' }, - { text: 'Github', link: 'https://github.com/tiann/KernelSU' } + { text: 'GitHub', link: 'https://github.com/tiann/KernelSU' } ] } @@ -58,4 +58,4 @@ function sidebarGuide() { ] } ] -} \ No newline at end of file +} diff --git a/website/docs/.vitepress/locales/zh_TW.ts b/website/docs/.vitepress/locales/zh_TW.ts index 373b2831..4cc78a39 100644 --- a/website/docs/.vitepress/locales/zh_TW.ts +++ b/website/docs/.vitepress/locales/zh_TW.ts @@ -36,7 +36,7 @@ export default defineConfig({ function nav() { return [ { text: '指南', link: '/zh_TW/guide/what-is-kernelsu' }, - { text: 'Github', link: 'https://github.com/tiann/KernelSU' } + { text: 'GitHub', link: 'https://github.com/tiann/KernelSU' } ] } @@ -57,4 +57,4 @@ function sidebarGuide() { ] } ] -} \ No newline at end of file +} diff --git a/website/docs/pt_BR/guide/faq.md b/website/docs/pt_BR/guide/faq.md index 024a56c0..9c0aacfe 100644 --- a/website/docs/pt_BR/guide/faq.md +++ b/website/docs/pt_BR/guide/faq.md @@ -4,9 +4,9 @@ Primeiro, seu dispositivo deve ser capaz de desbloquear o bootloader. Se não, então não há suporte. -Em seguida, instale o app gerenciador KernelSU em seu dispositivo e abra-o, se mostrar `Sem suporte` então seu dispositivo não pode ser suportado imediatamente, mas você pode construir a fonte do kernel e integrar o KernelSU para fazê-lo funcionar ou usar [dispositivos com suporte não oficial](unofficially-support-devices). +Em seguida, instale o app gerenciador do KernelSU em seu dispositivo e abra-o, se mostrar `Sem suporte` então seu dispositivo não pode ser suportado imediatamente, mas você pode construir a fonte do kernel e integrar o KernelSU para fazê-lo funcionar ou usar [Dispositivos com suporte não oficial](unofficially-support-devices). -## KernelSU precisa desbloquear o Bootloader? +## Para usar o KernelSU precisa desbloquear o bootloader? Certamente, sim. @@ -16,13 +16,13 @@ Sim, mas está na versão inicial, pode apresentar bugs. Por favor, aguarde até ## KernelSU suporta Xposed? -Sim, [Dreamland](https://github.com/canyie/Dreamland) e [TaiChi](https://taichi.cool) funcionam agora. Para o LSPosed, você pode fazer funcionar usando [ZygiskNext](https://github.com/Dr-TSNG/ZygiskNext). +Sim, [Dreamland](https://github.com/canyie/Dreamland) e [TaiChi](https://taichi.cool) funcionam agora. Para o LSPosed, você pode fazê-lo funcionar usando [ZygiskNext](https://github.com/Dr-TSNG/ZygiskNext). ## KernelSU suporta Zygisk? KernelSU não tem suporte integrado ao Zygisk, mas você pode usar [ZygiskNext](https://github.com/Dr-TSNG/ZygiskNext). -## KernelSU é compatível com Magisk? +## KernelSU é compatível com o Magisk? O sistema de módulos do KernelSU está em conflito com a montagem mágica do Magisk, se houver algum módulo habilitado no KernelSU, então todo o Magisk não funcionaria. @@ -32,26 +32,26 @@ Mas se você usar apenas o `su` do KernelSU, então funcionará bem com o Magisk Achamos que não e esse não é o nosso objetivo. O Magisk é bom o suficiente para solução root do espaço do usuário e terá uma longa vida. O objetivo do KernelSU é fornecer uma interface de kernel aos usuários, não substituindo o Magisk. -## KernelSU pode oferecer suporte a dispositivos não GKI? +## KernelSU oferece suporte a dispositivos não GKI? É possível. Mas você deve baixar o código-fonte do kernel e integrar o KernelSU à árvore do código-fonte e compilar o kernel você mesmo. -## KernelSU pode oferecer suporte a dispositivos abaixo do Android 12? +## KernelSU oferece suporte a dispositivos abaixo do Android 12? É o kernel do dispositivo que afeta a compatibilidade do KernelSU e não tem nada a ver com a versão do Android. A única restrição é que os dispositivos lançados com Android 12 devem ser kernel 5.10+ (dispositivos GKI). Então: 1. Os dispositivos lançados com Android 12 devem ser compatíveis. 2. Dispositivos com kernel antigo (alguns dispositivos Android 12 também têm o kernel antigo) são compatíveis (você mesmo deve construir o kernel). -## KernelSU pode suportar kernel antigo? +## KernelSU suporta kernel antigo? -É possível, o KernelSU é portado para o kernel 4.14 agora, para o kernel mais antigo, você precisa fazer o backport manualmente e PRs são bem-vindos! +É possível, o KernelSU é portado para o kernel 4.14 agora, para o kernel mais antigo, você precisa fazer o backport manualmente e PRs são sempre bem-vindas! ## Como integrar o KernelSU para o kernel antigo? -Por favor, consulte a guia [Como integrar o KernelSU para kernels não GKI](how-to-integrate-for-non-gki) +Por favor, consulte a guia [Como integrar o KernelSU para kernels não GKI](how-to-integrate-for-non-gki). -## Por que minha versão do Android é 13 e o kernel mostra “android12-5.10”? +## Por que a minha versão do Android é 13 e o kernel mostra “android12-5.10”? A versão do Kernel não tem nada a ver com a versão do Android, se você precisar fazer o flash do kernel, use sempre a versão do kernel, a versão do Android não é tão importante. @@ -60,7 +60,7 @@ A versão do Kernel não tem nada a ver com a versão do Android, se você preci Não existe agora (talvez no futuro), mas há muitas maneiras de mudar manualmente para o namespace de montagem global, como: 1. `nsenter -t 1 -m sh` para obter um shell no namespace de montagem global. -2. Adicione `nsenter --mount=/proc/1/ns/mnt` ao comando que você deseja executar, o comando será executado no namespace de montagem global. O KernelSU também está [usando desta forma](https://github.com/tiann/KernelSU/blob/77056a710073d7a5f7ee38f9e77c9fd0b3256576/manager/app/src/main/java/me/weishu/kernelsu/ui/util/KsuCli.kt#L115) +2. Adicione `nsenter --mount=/proc/1/ns/mnt` ao comando que você deseja executar, o comando será executado no namespace de montagem global. O KernelSU também está [usando desta forma](https://github.com/tiann/KernelSU/blob/77056a710073d7a5f7ee38f9e77c9fd0b3256576/manager/app/src/main/java/me/weishu/kernelsu/ui/util/KsuCli.kt#L115). ## Eu sou GKI1.0, posso usar isso? diff --git a/website/docs/pt_BR/guide/how-to-integrate-for-non-gki.md b/website/docs/pt_BR/guide/how-to-integrate-for-non-gki.md index a5e96844..859d270d 100644 --- a/website/docs/pt_BR/guide/how-to-integrate-for-non-gki.md +++ b/website/docs/pt_BR/guide/how-to-integrate-for-non-gki.md @@ -104,8 +104,8 @@ index 05036d819197..965b84d486b8 100644 +extern int ksu_handle_faccessat(int *dfd, const char __user **filename_user, int *mode, + int *flags); /* - * access() needs to use the real uid/gid, not the effective uid/gid. - * We do this by temporarily clearing all FS-related capabilities and + * access() precisa usar o uid/gid real, não o uid/gid efetivo. + * Fazemos isso limpando temporariamente todos os recursos relacionados ao FS e @@ -355,6 +357,7 @@ SYSCALL_DEFINE4(fallocate, int, fd, int, mode, loff_t, offset, loff_t, len) */ long do_faccessat(int dfd, const char __user *filename, int mode) @@ -158,8 +158,8 @@ index 376543199b5a..82adcef03ecc 100644 +extern int ksu_handle_stat(int *dfd, const char __user **filename_user, int *flags); + /** - * vfs_statx - Get basic and extra attributes by filename - * @dfd: A file descriptor representing the base dir for a relative filename + * vfs_statx - Obtenha atributos básicos e extras por filename + * @dfd: Um descritor de arquivo que representa o diretório base para um filename relativo @@ -170,6 +172,7 @@ int vfs_statx(int dfd, const char __user *filename, int flags, int error = -EINVAL; unsigned int lookup_flags = LOOKUP_FOLLOW | LOOKUP_AUTOMOUNT; @@ -219,8 +219,8 @@ index 2ff887661237..e758d7db7663 100644 + int *flags); + /* - * access() needs to use the real uid/gid, not the effective uid/gid. - * We do this by temporarily clearing all FS-related capabilities and + * access() precisa usar o uid/gid real, não o uid/gid efetivo. + * Fazemos isso limpando temporariamente todos os recursos relacionados ao FS e @@ -370,6 +373,8 @@ SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) int res; unsigned int lookup_flags = LOOKUP_FOLLOW; diff --git a/website/docs/pt_BR/guide/installation.md b/website/docs/pt_BR/guide/installation.md index 10dab1ae..87d3ddd6 100644 --- a/website/docs/pt_BR/guide/installation.md +++ b/website/docs/pt_BR/guide/installation.md @@ -2,7 +2,7 @@ ## Verifique se o seu dispositivo é compatível -Baixe o app gerenciador KernelSU em [GitHub Releases](https://github.com/tiann/KernelSU/releases) ou [Coolapk market](https://www.coolapk.com/apk/me.weishu.kernelsu), e instale-o no seu dispositivo: +Baixe o app gerenciador do KernelSU em [GitHub Releases](https://github.com/tiann/KernelSU/releases) ou [Coolapk market](https://www.coolapk.com/apk/me.weishu.kernelsu), e instale-o no seu dispositivo: - Se o app mostrar `Sem suporte`, significa que **você deve compilar o kernel sozinho**, o KernelSU não fornecerá e nunca fornecerá uma boot image para você instalar. - Se o app mostrar `Não instalado`, então seu dispositivo é oficialmente suportado pelo KernelSU. @@ -13,7 +13,7 @@ Para dispositivos mostrando `Sem suporte`, aqui está os [Dispositivos com supor ## Backup padrão do boot.img -Antes de fleshar, você deve primeiro fazer backup do seu boot.img padrão. Se você encontrar algum bootloop, você sempre pode restaurar o sistema voltando para o boot de fábrica usando o fastboot. +Antes de fazer o flash, você deve primeiro fazer backup de seu boot.img padrão. Se você encontrar algum bootloop, você sempre pode restaurar o sistema voltando para o boot de fábrica usando o fastboot. ::: warning AVISO Fleshar pode causar perda de dados, certifique-se de executar esta etapa bem antes de prosseguir para a próxima! Você também pode fazer backup de todos os dados do seu telefone, se necessário. diff --git a/website/docs/pt_BR/guide/module.md b/website/docs/pt_BR/guide/module.md index 1d93298b..5e874caf 100644 --- a/website/docs/pt_BR/guide/module.md +++ b/website/docs/pt_BR/guide/module.md @@ -12,10 +12,10 @@ Cada script shell executado no contexto do KernelSU será executado no shell `as Para aqueles que desejam usar o recurso “Modo Autônomo” fora do KernelSU, existem 2 maneiras de ativá-los: -1. Defina a variável de ambiente `ASH_STANDALONE` como `1`
Exemplo: `ASH_STANDALONE=1 /data/adb/ksu/bin/busybox sh