Como executar o google chrome como root no linux


10

quando eu quero executar o google chrome como root, aparece uma mensagem de erro com este título:

O Google Chrome não pode ser executado como root

e o corpo da mensagem é:

para executar como root, você deve especificar um --user-data-dir alternativo para armazenamento de informações do perfil.

Alguém pode me ajudar?


1
embora não seja um bom trabalho executar esse aplicativo como root, explicarei o método.
M0εiπ

Respostas:


7

Para executar o google chrome como root, siga estas etapas:

  1. Abra google-chromeno seu editor favorito (substituindo $EDITORpelo seu favorito):

    $EDITOR $(which google-chrome)
    
  2. Adicione --user-data-dirno final do arquivo.

    meu arquivo fica assim:

    exec -a "$0" "$HERE/chrome"  "$PROFILE_DIRECTORY_FLAG" \   "$@"
    --user-data-dir
    
  3. Salve e feche o editor.

Você Terminou. Aproveite :)


Se você quiser ver o tutorial em vídeo, pode verificar minha postagem no blog:

Como executar o google chrome como root no Linux - MoeinFatehi


3
Só para esclarecer, a resposta correta aqui é "Você não". A execução de aplicativos gráficos como raiz realmente não é uma ótima idéia.
HalosGhost

1
Bem, ouvi dizer que você não deve executar aplicativos gráficos como root e decidi que faria isso apenas para descobrir por que não. Planejei fazer isso até descobrir. Isso é agora há 14 anos.
Thorsten Staerk

2
Você deve ler sobre o princípio do menor privilégio.
HalosGhost

2
Acabei tendo que usar --no-sandboxtambém. Yolo
Bryce Guinta

4

Agora você não pode executar o google-chrome como usuário root em versões atualizadas, Para executar o Google Chrome como usuário padrão (enquanto estiver conectado como root)

terminal aberto e tipo:

adduser -u chromeuser OU useradd -m chromeuser

Para executar o google chrome use o comando:

gksu -u chromeuser google-chrome OU sux chromeuser google-chrome

Se você não deseja executá-lo no Terminal, adicione chrome na barra de tarefas e clique com o botão direito do mouse, selecione Propriedades e adicione o comando acima no parâmetro command.


também usando uma conta de usuário existente funcionou para mim: gksu -u gv google-chrome-stable. Embora eu tenha recebido alguns erros no terminal, mas funcionou.
George Vasiliou

3

Para aqueles que ainda podem pesquisar no Google em dezembro de 2016 - Google Chrome versão 54.0.2840.90 64bit no XFCE e Debian 8.5:

Caso 1: Chrome não inicia em tudo
Na minha configuração, apenas executando no terminal, google-chrome-stableeu estava recebendo imediatamente um erro no terminal illegal instruction. Sem quadros, sem tela em branco, sem janelas pretas. Apenas um erro rude do console. Este erro desaparece usando a --no-sandboxopção de linha de comando.

Caso 2: o Chrome ainda se recusa a abrir, mesmo com a opção --no-sandbox
Esse não era o meu caso, já que --no-sandbox era suficiente, mas se você tiver esse comportamento, poderá tentar desativar tudo ao chamar o chrome, como:

google-chrome-stable --disable-gpu --disable-extensions --disable-d3d11 --disable-local-storage --disable-notifications --disable-offne-pages --disable-plugin-power-saver --disable-plugins-discovery --disable-sync --disable-translate --disable-webgl --no-experiments --no-sandbox

Em seguida, você pode passo a passo ativar as opções até identificar qual delas quebra.
PS: Todos os sinalizadores / argumentos da CLI podem ser encontrados aqui .

Caso 3: A mensagem Please start Google Chrome as a normal user.To run as root you must specify an alternate --user-data-dir for storage of profile informationaparece.

Solução que funcionou para mim: Vá para /opt/google/chromee abra o arquivo google-chromeque é realmente um script bash.

No final do script, encontre a parte

if [[ -n "$CHROME_USER_DATA_DIR" ]]; then
  # Note: exec -a below is a bashism.
  exec -a "$0" "$HERE/chrome"  \
    --user-data-dir="$CHROME_USER_DATA_DIR" "$@"
else
  exec -a "$0" "$HERE/chrome"  "$@"
fi

E mude a parte else assim:

else
  #exec -a "$0" "$HERE/chrome"  "$@"
  exec -a "$0" "$HERE/chrome" "$@" --user-data-dir="$HOME"
fi

Salve e corra google-chrome-stable --no-sandbox.
Levantei-me e naveguei.

Para uma solução mais sofisticada, apliquei pessoalmente uma espécie de verificação de usuário para evitar possíveis perturbações ao executar o chrome como usuário normal:

else
    if [ "$USER" = "root" ]  || [ "$LOGNAME" = "root" ];then 
        exec -a "$0" "$HERE/chrome" "$@" --user-data-dir="$HOME"
    else
        exec -a "$0" "$HERE/chrome"  "$@"
    fi

Outra solução alternativa:
você não pode modificar o arquivo google-chrome como indicado acima e pode seguir a recomendação de @tzafar para criar um novo usuário ou iniciar o chrome usando uma conta de usuário normal existente: gksu -u user google-chrome-stable(isso funcionou, mas algumas mensagens de erro foram recebidas em terminal).


1
funcionou perfeitamente
eWall Tester

2

execute o seguinte comando e abra o google-chrome que funcionará

sed -i -e 's@Exec=/usr/bin/google-chrome-stable %U@Exec=/usr/bin/google-chrome-stable %U --no-sandbox@g' /usr/share/applications/google-chrome.desktop 

0

Para executar o google chrome como root, adicione este parâmetro "--no-sandbox"

insira a descrição da imagem aqui

funcionará para mim.


Quais são as consequências reais de fazer isso?
Kusalananda

São as mesmas que as conseqüências do uso de uma conta root
SAID

-1

Eu tentei toda a solução fornecida lá, então, na minha opinião, este é o melhor.

sudo chmod -R 777 /home/user_name/.config/google-chrome

basta executar o comando, você não precisa fazer nada.


Olá Abhinav. Você poderia explicar como isso responde à questão de executar o Chrome como root.
roaima 24/05/19

-2

este é um tiro no escuro, mas tente isso

sudo chmod -R 777 /home/user_name/.config/google-chrome

não precisa mais configurar o sandbox


Como tornar toda a configuração do Chrome legível por todos ajuda?
Kusalananda

O problema é diferente sempre que o 'google-chrome --no-sandbox' não funcionar, geralmente o sudo é necessário, pois ele não tem permissão suficiente da pasta /home/usr_name/.config/google-chrome ou qualquer outra diretórios.
Piyush Pattaiya

Observe que a raiz não é restrita por permissões ou propriedades de arquivos.
Kusalananda
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.