From 684973b4bf8d1b2563173c4f6868ddf22b3ec412 Mon Sep 17 00:00:00 2001 From: igor <134963561+igormiguell@users.noreply.github.com> Date: Tue, 14 Nov 2023 22:15:14 -0300 Subject: [PATCH] website: update translation (#1145) --- website/docs/pt_BR/guide/faq.md | 19 ++++++------ website/docs/pt_BR/guide/how-to-build.md | 14 ++++----- .../guide/how-to-integrate-for-non-gki.md | 30 +++++++++++-------- 3 files changed, 34 insertions(+), 29 deletions(-) diff --git a/website/docs/pt_BR/guide/faq.md b/website/docs/pt_BR/guide/faq.md index 9c0aacfe..5a49fc57 100644 --- a/website/docs/pt_BR/guide/faq.md +++ b/website/docs/pt_BR/guide/faq.md @@ -12,11 +12,11 @@ Certamente, sim. ## KernelSU suporta módulos? -Sim, mas está na versão inicial, pode apresentar bugs. Por favor, aguarde até que fique estável. +Sim, verifique [Guias de módulo](module.md) por favor. ## KernelSU suporta Xposed? -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). +Sim, você pode usar LSPosed com [ZygiskNext](https://github.com/Dr-TSNG/ZygiskNext). ## KernelSU suporta Zygisk? @@ -55,13 +55,14 @@ Por favor, consulte a guia [Como integrar o KernelSU para kernels não GKI](how- 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. -## Existe algum namespace de montagem --mount-master/global no KernelSU? - -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). - ## Eu sou GKI1.0, posso usar isso? GKI1 é completamente diferente do GKI2, você deve compilar o kernel sozinho. + +## Como posso fazer `/system` RW? + +Não recomendamos que você modifique a partição do sistema diretamente. Você deve usar [Guias de módulo](module.md) para modificá-lo sem sistema. Se você insiste em fazer isso, verifique [magisk_overlayfs](https://github.com/HuskyDG/magic_overlayfs). + +## O KernelSU pode modificar hosts? Como posso usar o AdAday? + +Claro. Mas o KernelSU não tem suporte a hosts integrados, você pode instalar [systemless-hosts](https://github.com/symbuzzer/systemless-hosts-KernelSU-module) para fazer isso. diff --git a/website/docs/pt_BR/guide/how-to-build.md b/website/docs/pt_BR/guide/how-to-build.md index 7d82a1be..6a601093 100644 --- a/website/docs/pt_BR/guide/how-to-build.md +++ b/website/docs/pt_BR/guide/how-to-build.md @@ -44,22 +44,20 @@ tools/bazel build --config=fast //common:kernel_aarch64_dist Se você conseguir construir o kernel com sucesso, então construir o KernelSU é muito fácil. Selecione qualquer um executado no diretório raiz de origem do kernel: -- Tag mais recente (estável) +::: code-group -```sh +```sh[Tag mais recente (estável)] curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash - ``` -- branch principal (dev) - -```sh +```sh[Branch principal (dev)] curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash -s main ``` -- Selecione a tag (Como v0.5.2) - -```sh +```sh[Selecionar tag (como v0.5.2)] curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash -s v0.5.2 ``` +::: + E então reconstrua o kernel e você obterá uma imagem do kernel com KernelSU! 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 859d270d..a1bb1625 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 @@ -46,27 +46,27 @@ Se o kprobe não funcionar no seu kernel (pode ser um bug do upstream ou do kern Primeiro, adicione o KernelSU à árvore de origem do kernel: -- Tag mais recente (estável) +::: code-group -```sh +```sh[Tag mais recente (estável)] curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash - ``` -- branch principal (dev) - -```sh +```sh[Branch principal (dev)] curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash -s main ``` -- Selecione a tag (Como v0.5.2) - -```sh +```sh[Selecionar tag (como v0.5.2)] curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash -s v0.5.2 ``` +::: + Em seguida, adicione chamadas KernelSU à fonte do kernel. Aqui está um patch para referência: -```diff +::: code-group + +```diff[exec.c] diff --git a/fs/exec.c b/fs/exec.c index ac59664eaecf..bdd585e1d2cc 100644 --- a/fs/exec.c @@ -92,7 +92,7 @@ index ac59664eaecf..bdd585e1d2cc 100644 return __do_execve_file(fd, filename, argv, envp, flags, NULL); } ``` -```diff +```diff[open.c] diff --git a/fs/open.c b/fs/open.c index 05036d819197..965b84d486b8 100644 --- a/fs/open.c @@ -123,7 +123,7 @@ index 05036d819197..965b84d486b8 100644 if (mode & ~S_IRWXO) /* where's F_OK, X_OK, W_OK, R_OK? */ return -EINVAL; ``` -```diff +```diff[read_write.c] diff --git a/fs/read_write.c b/fs/read_write.c index 650fc7e0f3a6..55be193913b6 100644 --- a/fs/read_write.c @@ -146,7 +146,7 @@ index 650fc7e0f3a6..55be193913b6 100644 return -EBADF; if (!(file->f_mode & FMODE_CAN_READ)) ``` -```diff +```diff[stat.c] diff --git a/fs/stat.c b/fs/stat.c index 376543199b5a..82adcef03ecc 100644 --- a/fs/stat.c @@ -170,6 +170,8 @@ index 376543199b5a..82adcef03ecc 100644 return -EINVAL; ``` +::: + Você deve encontrar as quatro funções no código-fonte do kernel: 1. do_faccessat, geralmente em `fs/open.c` @@ -262,3 +264,7 @@ index 45306f9ef247..815091ebfca4 100755 ``` Finalmente, construa seu kernel novamente, e então, o KernelSU deve funcionar bem. + +:::info ENTRANDO NO MODO DE SEGURANÇA ACIDENTALMENTE? +Se você estiver usando a integração manual e não desabilitar `CONFIG_KPROBES`, o usuário poderá acionar o Modo de Segurança pressionando o botão de diminuir volume após a inicialização! Portanto, se estiver usando a integração manual, você precisa desabilitar `CONFIG_KPROBES`! +:::