web-dev-qa-db-ja.com

MacのSudoファイルのコメントの外に誤って文字を追加しました。Sudoが機能しなくなりました

ターミナルを間違えたので、Sudoを使用するたびに次のエラーメッセージが表示されます:Sudo: unable to initialize PAM: Invalid argument

次のファイルのコメントの外に文字を追加することで、私が台無しにしたことを知っています:/etc/pam.d/Sudo

内容は以下のとおりです。

x# Sudo: auth account password session
auth       sufficient     pam_tid.so
auth       sufficient     pam_smartcard.so
auth       required       pam_opendirectory.so
account    required       pam_permit.so
password   required       pam_deny.so
session    required       pam_permit.so

何が起こったのかというと、nanoを使用してこのファイルを編集し、このファイルにpam_tid.soを追加して、touchidを使用してSudoをバイパスできるようにしました。次に、Ctr + xを押して終了しましたが、Ctrを見逃し、コメントの外側にxが表示されませんでした。そのため、Sudoを使用しようとすると、エラーが発生します。最悪の部分は、このファイルを編集するには、Sudoが必要なことです。どんな助けでも大歓迎です。

ありがとう

2
Arnav

特権を上げる別の方法を見つける必要がありますが、これは「セキュリティのため」意図的に難しいものです。 :)これはMacなので、1つの方法は、再起動してcommand + Rを押し続けてレスキューシェルに入り、ターミナル(ユーティリティメニューのIIRCにあります)を起動して、編集可能なルートシェルを作成することです。 pamファイル。

別の可能な方法は、pamファイルをホームディレクトリにコピーして修正し、Finderを使用してファイルをコピーすることです(Finderメニューで[移動]、[フォルダに移動]の順に選択して/ etcを開きます)。アクセスを制御するためにsudoerspamファイルを使用していないことは確かですが、確かに思い出せません。この方法でコピーした後、権限を修復する必要がある場合もあります。

いずれにせよ、今日の貴重なsysadminレッスンは、pamファイルを編集するときは、変更をテストするまで、常にエディターウィンドウを開いたままにしておく必要があるということです。終了せずにファイルを保存し、別のウィンドウで(場合によっては別のマシンから)、動作することを確認します。そうして初めて、エディターを終了します。 :)

6
dannysauer