A edição do arquivo sudoers em dois Macbooks produz um resultado diferente

1

Eu só queria executar o comando ntpdate sem digitar uma senha, então eu editei o arquivo sudoers via editor do Emacs. Eu simplesmente adicionei uma linha de código no final do arquivo

Boris Boris-MacBook-Air.local = (root) NOPASSWD: /usr/sbin/ntpdate 

Eu tenho dois Macbooks. Um é do modelo 2011 com o EL Capitan OS e sudo versão 1.7.10p9. O outro é do modelo 2017 com High Sierra OS e sudo versão 1.8.17p1. Eu fiz a mesma coisa em ambos os computadores. Ele funciona no Macbook de 2011, mas no caso do MacBook 2017, após a edição, quando eu chamo $ sudo ele imprime uma mensagem de erro.

/etc/sudoers: syntax error near line 63

sudo: parse error in /etc/sudoers near line 63

sudo: no valid sudoers sources found, quitting

sudo: unable to initiate policy plugin

Estas são as linhas 60-62

# Read drop-in files from /private/etc/sudoers.d
## (the '#' here does not indicate a comment)
#includedir /private/etc/sudoers.d

Eu não consigo tirar nenhum sentido disso porque não funciona no novo laptop

    
por Boris Sukpholtham 04.05.2018 / 11:19

1 resposta

1

A seguir, o preâmbulo do arquivo sudoers no meu Mac. (Eu não acredito que a sua redacção tenha mudado nos últimos quinze anos.)

This file MUST be edited with the 'visudo' command as root. Failure to use 'visudo' may result in syntax or file permission errors that prevent sudo from running.

See the sudoers man page for the details on how to write a sudoers file.

Veja um snippet do visudo man page :

After the edits are made, visudo parses the sudoers file. It will not save the changes if there is a syntax error.

Upon finding an error, visudo will print a message stating the line number(s) where the error occurred and the user will receive a "What now?" prompt. At this point, the user may enter e to re-edit the sudoers file, x to exit without saving the changes, or Q to quit and save changes.

The Q option should be used with extreme care because if visudo believes there is a parse error, so will sudo, and no one will be able to sudo again until the error is fixed. If e is typed to edit the sudoers file after a parse error has been detected, the cursor will be placed on the line where the error occurred.

. . E essa é a razão pela qual eu uso visudo em vez de, digamos, nano . Se houver um problema, visudo me avisará e me direcionará para ele antes de eu confirmar e bloquear não apenas eu mesmo, mas todos fora do acesso root. (Como eu fiz há quinze anos atrás, não que eu admita.) De qualquer forma, já que $sudo está reclamando sobre um erro de sintaxe em um número de linha inexistente, eu aposto que é um caractere EOF disperso ou um typocrud similar causando o problema.

    
por 15.05.2018 / 13:20

Tags