Mac OS X - inicie o Apache / Mysql sem solicitar a senha

8

Estou executando o XAMPP, que vem com um pequeno aplicativo "XAMPP Control" que permite iniciar e parar o Apache e o MySQL clicando em um botão. Quando faço isso, a Lion solicita minha senha de administrador. Existe uma maneira de pular esta etapa? (No Windows, é como se eu perguntasse "como posso executar o programa XAMPP Control no modo administrador?" - não tenho certeza se existe um analógico para o Mac.)

Eric
fonte

Respostas:

3

Problema

O Mac OSX solicita sua senha porque o XAMPP está tentando executar o comando * nix [sudo](http://en.wikipedia.org/wiki/Sudo). Isso pode ser superado por uma de duas maneiras:

uma. Permita que TODOS os sudo comandos sejam executados sem uma senha.

b. Permita que SOMENTE o comando XAMPP seja executado sem senha.

Solução

Para usar uma dessas soluções, faça o seguinte:

  1. Abra Terminal.app (eu gosto de pressionar Command+ Space, digite "Terminal.app" e pressione Enter).
  2. Corra sudo nano /etc/sudoers.
  3. Anexe o seguinte texto ao arquivo, onde nome de usuário é seu nome de usuário curto (digite whoamino terminal para obtê-lo):

    • Para a opção a :

    %username ALL=(ALL) NOPASSWD

    • Para a opção b :

    %username ALL= NOPASSWD: /Applications/XAMPP/xamppfiles/xampp

  4. Pressione Ctrl+ xe salve quando solicitado.

Observe que no OSX Mavricks, pode ser necessário adicionar um %sinal antes do nome de usuário (entrada /etc/sudoers).

mira
fonte
Para sua informação, eu adicionei este: "nome de usuário ALL = NOPASSWD: / Applications / XAMPP / XAMPP \ Control.app"
Eric
Para os etc/sudoernoobs, como eu, tenha cuidado para não editar o sudoersarquivo usando seu editor de texto favorito (apenas cometi esse erro ... passei a última hora tentando consertar). O sudoerarquivo tem esta mensagem comentada no topo: Este arquivo DEVE ser editado com o comando 'visudo' como raiz (ou seja, $ sudo visudo). A não utilização do 'visudo' pode resultar em erros de sintaxe ou de permissão de arquivo que impedem a execução do sudo.
Mhulse
Use o comando visudo. Ele verificará a sintaxe do arquivo antes de 'confirmar'.
borisdiakur
8

O tópico Iniciando o Xampp Control Panel sem senha lista duas soluções possíveis:

  1. Escreva scripts que iniciem e parem o XAMPP, especificando a senha nos scripts.
    Os dois scripts estão incluídos no encadeamento.
  2. Edite o /etc/sudoersarquivo, configurando que sudo /Applications/XAMPP/xamppfiles/xampp startnão precisa de senha.
harrymc
fonte
Usar o script e exportá-lo como um aplicativo .App foi a melhor solução. Obrigado.
Moe
0

macOS High Sierra

Em High Sierra, eu não conseguia fazer o novo gerenciador de aplicativos de controle -osx funcionar sem inserir a senha, mesmo ao adicioná-lo em sudoers.

Mas você pode executar o xampp na linha de comando para iniciar e parar o xampp (ou apenas o apache) sem senha, se você adicioná-lo ao arquivo sudoers.

Mas: As soluções acima criaram problemas para mim, então aqui o que eu fiz:

Não edite o /etc/sudoers/arquivo, muitas coisas podem dar errado! Se você realmente deseja, o uso do sudo visudo
macOS também não permitirá o uso vim sudoers(você não pode salvar), pelo menos com o SIP ativado.

Melhor abordagem

Criar um novo arquivo no diretório /etc/sudoers.d. Você precisa de direitos de root para criar o arquivo.
Nomeie o arquivo como seu nome de usuário (por exemplo). Nenhuma extensão necessária.
O nome do arquivo realmente não importa, mas não deve conter um ~no final nem um ponto ( .) no início.

Nesse novo arquivo, crie apenas as entradas necessárias, mas NÃO adicione uma %na frente do seu nome de usuário. Isso não funcionou para mim e todas as chamadas sudodemoraram muito tempo antes de solicitar a senha.

Conteúdo do novo arquivo:

username ALL = NOPASSWD: /Applications/XAMPP/xamppfiles/xampp

Agora você pode correr

sudo /Applications/XAMPP/xamppfiles/xampp start

em um Termin para iniciar o xampp e você não precisa digitar sua senha.

Se algo der errado

Exclua todas as suas entradas nos sudoers ou no novo arquivo ou comente-as com o dobro ##para que o sudo as ignore.
Tente isso, se o arquivo estiver completamente quebrado: https://astrails.com/blog/2009/09/29/how-to-fix-a-hosed-etc-sudoers-file-on-mac-osx
Se nada mais funcionar , reinicie no modo de usuário único e repare o arquivo. Também deve haver um backup /etcchamado sudoers~orig.

Negócio Tomcat
fonte