Dicas úteis

Como se tornar o superusuário do seu telefone ou tablet Android

Pin
Send
Share
Send
Send


Muitos comandos podem ser executados apenas pelo superusuário, portanto, precisamos saber como se tornar eles (root). Para fazer isso, podemos usar o comando: su (alterar usuário). O comando su aceita os seguintes formatos:

mas com mais frequência usaremos su para se tornar um usuário raiz:

se o nome de usuário não for especificado na linha, o usuário root será automaticamente assumido, para que o comando possa ser abreviado:

mas ambas as equipes se comportam de maneira diferente. 'su' fornece ao usuário atual uma identidade, enquanto 'su -' fornece ao usuário atual uma identidade junto com o ambiente que pode ser obtido registrando-se como.

Frequentemente, os usuários usam 'su' para fazer root. Se você tentar executar um comando (por exemplo, ifconfig), receberá: erro 'comando não encontrado'.

O motivo é que os usuários comuns do sistema e o usuário root têm variáveis ​​de ambiente PATH diferentes (você pode ver o PATH do usuário usando "echo $ PATH). Após inserir o comando Linux, o shell procurará o usuário PATH para tentar encontrar o comando a ser executado. inicia uma pesquisa em cada diretório especificado em PATH até que o destino seja encontrado.

Os comandos comuns do usuário geralmente estão localizados em / usr / local / bin, / usr / bin e / bin. E os comandos do usuário root estão localizados principalmente em / usr / local / sbin, / usr / sbin, / sbin e o PATH raiz reflete isso. Portanto, quando você se torna superusuário com "su -", também aceita o novo caminho PATH para os comandos principais. E usando apenas 'su', o caminho PATH padrão do usuário é salvo, portanto, ao tentar executar um programa localizado em / usr / local / sbin, / usr / sbin, / sbin retornará o resultado: erro 'command not found'. Para uma explicação mais detalhada, consulte a página de manual (man bash), especialmente a seção shells de login.

Portanto, você deve especificar o caminho completo para o comando (por exemplo, / sbin / ifconfig) ao usar 'su' ou usar 'su -' quando se tornar a raiz.

2. Usando o Sudo

Você não precisa ser superusuário sempre que desejar executar algumas funções administrativas específicas. Obrigado Sudo, você pode executar alguns ou todos os comandos como root. Quando Sudo instalado (pacote: Sudo), você pode configurá-lo usando o comando 'visudo' como root. Ele edita principalmente (Vim por padrão) / etc / sudoers, mas isso não é recomendado para ser feito manualmente.

Portanto, uma maneira rápida e não recomendada de usar o Sudo é adicionar sudoers no final do arquivo:

Alex é o nome de usuário. Salve (pressione escape e digite wq) e pronto. Efetue login como alex e execute por exemplo:

Sudo pedirá uma senha. Esta é a senha do alex, não do usuário root. Portanto, tenha cuidado ao conceder direitos de usuário ao Sudo.

Mas Sudo pode fazer mais do que isso. Podemos permitir que um usuário ou grupo de usuários execute apenas um comando ou grupo de comandos. Vamos voltar ao nosso arquivo sudoers. Vamos começar com alex e alisa, membros do grupo de administradores. Se quisermos que todos os usuários do grupo de administradores possam executar cada comando como um superusuário, devemos modificar nosso exemplo:

Alex também pode executar o comando superusuário e alisa tem o direito de executar o Sudo, com os mesmos direitos e com sua senha. Se alex e alisa não são membros do mesmo grupo, podemos definir o alias do usuário no arquivo sudoers:

Aqui nós definimos um alias chamado ADMINS, com membros alisa e alex.

No entanto, não queremos que alex e alisa possam executar qualquer programa com privilégios de superusuário. Queremos que eles possam executar apenas 'updatedb'. Vamos definir o alias do comando:

Mas isso não basta! Devemos dizer ao Sudo que os usuários definidos como ADMINS podem executar os comandos especificados em LOCATE. Para fazer isso, substituiremos as linhas por "% admin" por estas:

Isso significa que os usuários no alias ADMINS podem executar todos os comandos no alias LOCATE.

Desta vez, / etc / sudoers se parece com isso:

Como resultado, alex e alisa podem executar updatedb como root digitando sua senha.

Se a última linha do arquivo for alterada:

então alex e alisa poderão executar 'sudo updatedb' sem inserir uma senha.

Você pode adicionar outras equipes ao alias da equipe e mais alias na regra. Por exemplo, podemos criar um alias NETWORKING contendo alguns comandos de rede como: ifconfig, route ou iwconfig:

Vamos adicionar tudo isso ao nosso arquivo / etc / sudoers (usando visudo!). E também dê ao nosso grupo ADMINS o direito de executar programas a partir do alias NETWORKING:

Amostra pequena: faça login como alisa (ou alex) e digite:

A resposta deve voltar rapidamente:

Agora, a mesma coisa, mas com Sudo:

Sudo geralmente usado para fornecer a certos usuários acesso parcial a comandos privilegiados, para que eles possam executar funções administrativas limitadas. Uma das comodidades Sudo em que todos os comandos são gravados em / var / log / secure. O exemplo acima será descrito por uma linha no log:

Isso é tudo. Agora nunca esquecerei quando usei o Sudo: "com grande poder vem uma grande responsabilidade".

2.1 Sudo shell

Se você tiver direitos suficientes configurados em sudoers, também poderá abrir o shell raiz usando:

Nas versões recentes, apenas no CentOS 5, o sudo -s é usado para executar o shell como root. Tenha muito cuidado, pois isso pode alterar ou criar novos arquivos no diretório inicial Raiz e instalar no diretório inicial do chamador.

3. consolehelper

Consolehelper é um shell para iniciar aplicativos da GUI. Quando começa a funcionar, verifica a configuração do PAM para o aplicativo necessário. Isso significa que podemos autenticar o usuário usando todos os módulos PAM instalados. O método básico é solicitar uma senha, mas se tivermos o equipamento adequado. podemos autenticar usando cartões inteligentes, tokens, impressões digitais etc. A configuração do PAM está além do escopo deste documento (consulte o Guia do Administrador do PAM), portanto, veremos a etapa de configuração do consolehelper, necessária para iniciar aplicativos como root e solicitar a senha root.

Como exemplo, vamos configurar / usr / bin / xterm para executar como root.

Primeiro, queremos manter a capacidade de executar o Xterm como um usuário comum. Portanto, crie um link simbólico / usr / bin / xterm-root para / usr / sbin / consolehelper:

Agora, para configurar o PAM, crie o arquivo /etc/pam.d/xterm-root:

Por fim, configure consolehelper para executar / usr / bin / xterm como root com o comando 'xterm-root'. Crie o arquivo /etc/security/console.apps/xterm-root:

Isso é tudo. Execute 'xterm-root' (na linha de comando ou no arquivo .desktop de atalho), digite a senha e o caminho. Se você receber uma mensagem de erro: "Xlib: conexão com": 0.0 "recusado pelo servidor", execute 'xhost local: root' primeiro.

O que é superusuário?

O processo de obtenção de direitos de superusuário em inglês é chamado de root, a partir do nome do superusuário de sistemas Unix (root).

O enraizamento envolve primeiro salvar uma cópia do seu software em um local seguro e, em seguida, instalar um novo software modificado (uma nova versão do Android chamada firmware).

Para que é isso?

Como superusuário, você não encontrará novos aplicativos essenciais incríveis, mas encontrará muitos deles que justificarão o esforço. Por exemplo, alguns programas permitem que você faça backup automaticamente de todos os seus aplicativos e dados, outros podem bloquear quase completamente os anúncios, estabelecer uma conexão segura à Internet, fazer overclock no processador, transformar seu dispositivo em um ponto de acesso sem fio.

Enraizamento com um clique

Anteriormente, você precisará instalar os programas necessários, mas o processo de root realmente acontece em um clique. A coisa toda leva alguns minutos, após o que você só pode reiniciar seu gadget Android.

Existem programas gratuitos que reivindicam a capacidade de fazer root no Android com um clique, mas é muito importante ter cuidado ao escolhê-los. Em caso de dúvida, faça mais pesquisas. O fórum XDA Developers é a fonte mais confiável (/ nota do tradutor /: é uma pena que quase não haja computadores tablet neste maravilhoso fórum).

O seu aparelho específico

Quando você encontra o manual que corresponde ao seu dispositivo, resta apenas seguir metodicamente todas as instruções. É provável que esse procedimento seja difícil e pode levar uma quantidade considerável de tempo. Aqui, por exemplo, está o guia de root do Samsung Galaxy S3. Um documento bastante impressionante à primeira vista, mas se você começar a executá-lo passo a passo, obterá sucesso sem muita dor de cabeça. Em caso de dificuldade, você sempre pode fazer uma pergunta no fórum XDA Developers.

Rotina ou não?

Os benefícios do root no prolongamento da vida útil da bateria, instalação de aplicativos raiz, firmware especial, overclock do processador, fim de software pesado e desnecessário, desempenho aprimorado e capacidade de atualizar seu dispositivo sempre que você quiser. Se você não está impressionado com essas perspectivas, provavelmente o root não é para você.

Privilégios de superusuário no Linux

Leva muito tempo para listar o que um usuário comum do Linux não pode listar, é mais fácil dizer ao que ele tem direito, ou seja, com a configuração de permissão padrão para arquivos no Linux, um usuário comum pode:

  • Leia, escreva e altere atributos de arquivo em seu diretório
  • Leia, escreva, altere os atributos do arquivo no diretório / tmp
  • Execute programas onde não é proibido usar o sinalizador noexec
  • Arquivos de leitura para os quais o sinalizador de leitura está definido para todos os usuários.

Se você precisar fazer algo mais, precisamos dos privilégios de root do usuário linux. A raiz tem o direito de fazer tudo no seu sistema de arquivos, independentemente de quais direitos estão definidos para o arquivo.

Login de Super Usuário

Para efetuar login como root, você pode alternar para um dos consoles virtuais, por exemplo, usando o atalho de teclado Ctrl + Alt + F1 e, em seguida, insira o nome de usuário root e a senha root do usuário.

Você obterá um ambiente raiz completo com a capacidade de executar todas as ações, mas esse método é muito impraticável, pois você perde todas as vantagens de usar a interface gráfica.

Você pode fazer exatamente o oposto, digitar o nome de usuário e a senha do root no gerenciador de login gráfico, para que o ambiente da área de trabalho funcione como root e tenhamos todas as permissões de root do linux, mas essa opção é altamente recomendada e muito perigosa, você pode danificar acidentalmente tudo o sistema. Portanto, esse método foi desativado em muitos gerenciadores de logon.

Mudando para superusuário no terminal

Agora chegamos a um mais interessante e prático. Usando utilitários especiais, você pode alternar o atual emulador de terminal para o ambiente de superusuário e executar todos os comandos a seguir, não em seu nome, mas nele, dando assim privilégios de linux ao programa. Existe um utilitário su para isso. De um modo geral, esse utilitário permite não apenas alternar para o usuário root, mas também para qualquer outro usuário, mas o root é usado por padrão. Vamos considerá-lo em mais detalhes. O comando su linux possui a seguinte sintaxe:

usuário de opções $ su

Aqui estão suas principais opções:

  • -c, --command - execute o comando
  • -g, --group - defina o grupo principal de usuários (apenas para root)
  • -G --supp-group - grupos de usuários adicionais (apenas para raiz)
  • -, -l, --login - modo de login, todas as variáveis ​​de ambiente serão limpas e inicializadas, levando em consideração o novo usuário e o diretório inicial também será alterado
  • -p, --preserve-environment - salvar variáveis ​​de ambiente
  • -s, --shell - defina o shell de login
  • --version - exibe a versão do programa.

Agora vamos experimentar um pouco para entender como o comando su linux funciona.

Primeiro, execute su sem parâmetros, mas primeiro crie uma variável de ambiente para verificar como esse comando lida com eles:

Agora vamos ver o que aconteceu:

whoami
$ pwd
$ echo $ VAR
$ echo $ PATH
$ exit

A partir desses comandos, vemos que agora somos o usuário raiz, mas o diretório do usuário anterior é considerado o diretório inicial e nossa variável não foi salva, a variável PATH também mudou, agora o caminho / sbin é adicionado lá.

Agora usamos o login no modo de login:

E repita a mesma combinação:

whoami
$ pwd
$ echo $ VAR
$ echo $ PATH
$ exit

A mesma situação, só que desta vez o diretório inicial do diretório raiz também foi alterado. Mas podemos salvar nossas variáveis ​​de ambiente, se necessário, para isso existe a opção -p:

Como você pode ver, nossa variável permanece. Você também pode mudar para qualquer outro usuário. Por exemplo:

A obtenção de privilégios de superusuário dessa maneira é usada em muitas distribuições, por exemplo, Debian, OpenSUSE, ArchLInux, Gentoo, etc. Mas no Ubuntu, como um kit de distribuição para iniciantes, o login raiz é desativado. Isso é feito porque também não é muito seguro, você pode esquecer que está executando um comando a partir do root e fazer algo no sistema. Portanto, passamos ao próximo programa.

Obtendo privilégios de root sem alternar

Para implementar a interface mais segura para trabalhar com privilégios de superusuário no Linux, o comando sudo foi desenvolvido. Vejamos o que é sudo. Este comando é escrito antes de cada comando que precisa ser executado em nome do superusuário e, para sua execução, você precisa digitar a senha não é mais raiz, mas apenas seu usuário. Como no anterior, este utilitário tem suas próprias opções. Primeiro, considere a sintaxe:

Comando $ sudo options

  • -b - execute o utilitário lançado em segundo plano
  • -E - salvar variáveis ​​de ambiente
  • -g - administrar uma equipe de um grupo
  • -H - use o diretório inicial
  • -l - mostra a lista de permissões no sudo para o usuário atual
  • -r - use a função SELinux para a equipe
  • -s - use shell
  • -u - execute o comando como usuário, se a raiz não especificada for usada
  • -i - não execute o comando, mas insira o shell, equivalente a su -

Você pode executar as mesmas experiências, apenas para este comando, para entender como usar o comando sudo. Por exemplo:

O uso do sudo é a maneira recomendada de executar comandos como root no Linux. Portanto, você não esquecerá com o que está lidando e o menor risco é danificar o sistema. Mas havia mais uma pergunta não resolvida - e as utilidades gráficas? Afinal, o comando sudo não os inicia e executar o shell gráfico como root não é seguro. Vamos considerar isso ainda mais.

Aplicativos graficamente como raiz

Existem utilitários especiais para executar aplicativos gráficos em nome do superusuário. Eles mantêm todas as variáveis ​​e permissões de ambiente necessárias. No KDE, este é o comando kdesu, e no Gnome, o comando gksu.

Basta digitar gksu ou kdesu e, em seguida, o comando desejado:

Este comando iniciará o gerenciador de arquivos do KDE com privilégios de superusuário. No Gnome, ficará assim:

O programa solicitará a senha, já na janela de desenho, e o gerenciador de arquivos será aberto.

Isso é tudo. Agora você sabe como obter privilégios de superusuário no Linux, sabe como usar o comando sudo e qual é a diferença entre sudo ou su. Agora, os programas que exigem privilégios adicionais no sistema não causarão problemas. Se você tiver alguma dúvida, escreva nos comentários!

Nenhuma postagem relacionada

15 comentários

Dear Sergey Você definitivamente precisa de um corretor - há pelo menos cinco erros de ortografia em cada artigo (eu nem mencionei vírgulas). A edição proposta pelo Ctrl + Enter logo deixa de funcionar: a proteção contra spam está ativada. Deseja usar meus serviços de revisão? Você aumenta a alfabetização em informática dos assinantes, isso é ótimo, mas você deve prestar atenção à alfabetização comum. Atenciosamente, Oleg.

Boa noite Oleg! Ficarei muito grato se você ajudar a corrigir erros no site. Registre-se e me diga seu login.

A propósito, sim, ele está certo. Eu mesmo frequentemente percebo erros em você)) Ficaria grato se você melhorar a alfabetização. Os artigos são muito úteis, e eu quero ver um texto russo limpo e alfabetizado!))

MUITO CARO admin! Diga-me, problemas com o idioma russo são uma doença de todos os especialistas em TI? Para quem você escreve tudo isso? Tente ler o que você escreveu à distância da perspectiva de um bule de chá! Aqui estão algumas das suas pérolas:
. defina a variável de ambiente. Qual é o meio ambiente? Quem cercou quem? Alemães perto de Moscou ou o quê? ou -s -use shell que shell? Cascas de ovos? Descascamento de batata? Ou talvez um preservativo? -Também uma concha. E como usar
Escrevi corretamente para você o BVZ, caso contrário, você é simplesmente INBREAKABLE.

Sim Você precisa conhecer o tapete. e poderá pesquisar, caso contrário, todos os artigos terão 100500 caracteres e não haverá tempo suficiente para escrevê-los. Meio ambiente - https://losst.ru/peremennye-okruzheniya-v-linux, Shell - https://losst.ru/evolyutsiya-komandnyh-obolochek-linux

Estranho, eu comecei o Thunar através do sudo e todas as regras funcionaram, eu não sabia sobre o gksu. Qual a diferença? Eu sou um noob, se isso.

O fato é que o sudo foi projetado para executar comandos do console; variáveis ​​de ambiente especiais, como DISPLAY, etc. não são definidas aqui.Se você tentar executar um aplicativo gráfico através do sudo no Gentoo ou ArchLinux. Gksu e kdesu foram projetados especificamente para executar aplicativos gráficos.

Existe uma versão do Ubuntu 18.04.1 LTS. Comando Gksu não funciona

Caro Sergey! Muito obrigado pelo seu site. Apenas comecei a aprender Linux MX17 (XFCE). Enfrentou um problema - alguns programas pararam de funcionar a partir de atalhos (está tudo bem no terminal). Причиной, наверное, является запуск SU без черточки, что повлекло изменение PATH для Root и прав на запуск этих программ. Как можно решить эту задачу (развернутая аналогичная ОС имеется на другом разделе)? Огромное спасибо за ответ и удачи.

Уважаемый Сергей! Выяснил дополнительно следующее:
1. При вводе su - выдает "сбой при проверке подлинности".
2. Программы, требующие привилегий (ввода пароля администратора) через графический интерфейс не запускаются. При этом, с терминала их запуск происходит нормально, запуск же программ, требующих привилегий root - без проблем.
3. Смена паролей пользователя и root результатов не дала. Пользователь (основной) - в группе sudo есть, команды sudo, sudo su работают, содержание файла etc/sudoers, значение $PATH проверил - соответствуют исходным данным.

Я не понимаю что у вас там происходит с ярлыками. Попробуйте сбросить настройки XFCE, вряд-ли тут su или sudo виноваты.

Сбросил. Без изменений. Все равно огромное спасибо и удачи. Буду искать дальше.

Merda é o seu artigo, escroto impertinente de tudo. Precisa mais fácil. Nem todos os óculos como você

Caro senhor BVZ!

Deixe-me corrigir seu comentário de acordo com as regras de comunicação aceitas na sociedade das pessoas.
Parece-me que você deve expressar seus pensamentos da seguinte maneira:

"Prezado Asdmin! Aceite minha sincera gratidão por seu artigo sobre um tópico tão importante para os usuários do Linux como direitos de superusuário. Apesar das vantagens indubitáveis ​​de seu trabalho, deixe-me fazer algumas observações críticas sobre o melhor de minha competência. Parece-me que seu estilo de apresentação um pouco complicado para quem usa "Linux". Espero que seus próximos artigos sejam mais compreensíveis para mim (por exemplo) .Deixe-me agradecer mais uma vez, pelo seu Linux, tão necessário para nós , Work. Atenciosamente, BVZ. "

Caro BVZ, se você quer ouvir suas palavras e percebê-lo como pessoa, não como animal, aprenda a ser educado e educado.

Caro Admin!
Muito obrigado pelo seu artigo. Afinal, nós, aqueles que estão começando a usar o Linux, não sabemos muito, por isso precisamos de artigos como o seu como o ar.
Atenciosamente, A.N. Light

Pin
Send
Share
Send
Send