web-dev-qa-db-ja.com

/ etc / sudoersファイルが破損しており、SSHで「pkexec visudo」を実行できない

指示に従って ここ 私は得る:

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にアップグレードしたときに起こりました。私は別の最近の16.04インストールからsudoersファイルをコピーしようとしましたが、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を試す必要がありますか?

私もこの問題に遭遇し、掘り下げて、有効な解決策を見つけました。元の解決策は NixOSのこのgithubの問題 EstalillaJからです。

  1. ターゲットサーバーへの2つのsshセッションを開きます。
  2. 最初のセッションで、次を実行してbashのPIDを取得します。

    echo $$

  3. 2番目のセッションでは、次を使用して認証エージェントを開始します。

    pkttyagent --process (pid from step 2)

  4. 最初のセッションに戻って、次を実行します:

    pkexec visudo

  5. 2番目のセッションでは、パスワードプロンプトが表示されます。 visudoは最初のセッションで開始されます。

28
Satyen A.