/etc/sudoers файл повредил, и я не могу работать 'pkexec visudo' по SSH

При следовании инструкциям здесь я добираюсь:

pkexec visudo

==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/usr/sbin/visudo' as the super user
Authenticating as: Thomas,,, (tuc) Password:  polkit-agent-helper-1:
error response to PolicyKit daemon:
GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for
cookie
==== AUTHENTICATION FAILED === 
Error executing command as another user: Not authorized

This incident has been reported.

Я делаю это через ssh начиная с поля, которое я делаю, это на используется в качестве музыкального сервера без экрана и довольно недоступно. Это произошло, когда я обновил от Ubuntu 14.04 до 16,04. Я пытался скопировать sudoers файл с других недавних 16,04 установок, но я не могу сделать этого из-за sudoers файла:

sudo mv ~/gyrf sudoers

>> /etc/sudoers: syntax error near line 36 <<<
>> /etc/sudoers: syntax error near line 37 <<<
>> /etc/sudoers: syntax error near line 38 <<<
>> /etc/sudoers: syntax error near line 39 <<<
>> /etc/sudoers: syntax error near line 40 <<<
>> /etc/sudoers: syntax error near line 41 <<<
>> /etc/sudoers: syntax error near line 42 <<<
>> /etc/sudoers: syntax error near line 43 <<<
>> /etc/sudoers: syntax error near line 44 <<<
>> /etc/sudoers: syntax error near line 45 <<<
>> /etc/sudoers: syntax error near line 46 <<<
>> /etc/sudoers: syntax error near line 47 <<<
>> /etc/sudoers: syntax error near line 48 <<<
>> /etc/sudoers: syntax error near line 49 <<< 
sudo: parse error in /etc/sudoers near line 36    
sudo: no valid sudoers sources found, quitting sudo: unable to initialize policy plugin

Если я иду, получают поле из чердака и попытки pkexec visudo или что-то еще неправильно здесь?

11
задан 13 April 2017 в 05:24

1 ответ

Я столкнулся с этой проблемой также и с некоторым рытьем, нашел рабочее решение. Исходное решение от этой проблемы GitHub для NixOS EstalillaJ.

  1. Откройте две ssh сессии для целевого сервера.
  2. На первой сессии получите PID удара путем выполнения:

    echo $$

  3. На второй сессии запустите агент аутентификации с:

    pkttyagent --process (pid from step 2)

  4. Назад на первой сессии, выполненной:

    pkexec visudo

  5. На второй сессии Вы получите подсказку пароля. visudo запустится на первой сессии.

32
ответ дан 23 November 2019 в 03:52

Другие вопросы по тегам:

Похожие вопросы: