6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

macOS で TimeMachine から復旧したら sudo が使えない時の対処法 ("XXX is not in the sudoers file. This incident will be reported.")

Last updated at Posted at 2019-06-21

下記のフォーラムの通りの現象が起きた。

Terminalにて、sudoを実行し… - Apple コミュニティ

状況

$ sudo ls
XXX is not in the sudoers file. This incident will be reported.

※XXX = $USER

もちろん該当のユーザーは管理者権限あり。

原因は TimeMachine から復旧する際、最初のセットアップウィザード中に TimeMachine 復旧に失敗し、一度適当なカウントを発行した後移行アシスタント.app を使って復旧し、アカウントを復旧元のデータで置き換えたためと思われる。

原因

sudo が出来ないということは Terminal からなにも行えないので、仕方がなく Finder を使って対応を行う。

sudo の許可は /etc/sudoers に書いてあるのでまず中身を確認するためにアクセス権限を与える。

  • Finder で /etc/sudoers を右クリックし、「情報を見る」を選び、情報ウィンドウを開く
  • 「共有とアクセス権」の「🔒」ボタンをクリックしてロックを解除する
  • 「+」ボタンで自分を追加し、アクセス権限を「読み/書き」に変更

image.png
これで、Finder 経由で読み書きできるのでテキストエディタなどで開いて見る
image.png
空でした。

解決策

テキストエディタで開いたファイルに下記のように書き加え、保存する。

/etc/sudoers
%admin ALL = (ALL) ALL

これで、sudo が行えるようになったが、アクセス権限は変更したままだし、本来の /etc/sudoers の内容と違う。

このままにするのは何かとトラブルの原因になるので、/etc/sudoers 専用の編集コマンド visudo を使う。

Terminal を再び開いて

$ sudo /usr/sbin/visudo

他のmac(macOS Mojave 10.15.1)の/etc/sudoersには下記のように記載があったので、そのままコピペする。

vi の使い方がわからない場合はテキストエディタでコピペしたあと、sudoersを起動して、:q![Return]と入力してもいいかも。

/etc/sudoers
#
# Sample /etc/sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.

##
# Override built-in defaults
##
Defaults	env_reset
Defaults	env_keep += "BLOCKSIZE"
Defaults	env_keep += "COLORFGBG COLORTERM"
Defaults	env_keep += "__CF_USER_TEXT_ENCODING"
Defaults	env_keep += "CHARSET LANG LANGUAGE LC_ALL LC_COLLATE LC_CTYPE"
Defaults	env_keep += "LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME"
Defaults	env_keep += "LINES COLUMNS"
Defaults	env_keep += "LSCOLORS"
Defaults	env_keep += "SSH_AUTH_SOCK"
Defaults	env_keep += "TZ"
Defaults	env_keep += "DISPLAY XAUTHORIZATION XAUTHORITY"
Defaults	env_keep += "EDITOR VISUAL"
Defaults	env_keep += "HOME MAIL"

Defaults	lecture_file = "/etc/sudo_lecture"

##
# User alias specification
##
# User_Alias	FULLTIMERS = millert, mikef, dowdy

##
# Runas alias specification
##
# Runas_Alias	OP = root, operator

##
# Host alias specification
##
# Host_Alias	CUNETS = 128.138.0.0/255.255.0.0
# Host_Alias	CSNETS = 128.138.243.0, 128.138.204.0/24, 128.138.242.0
# Host_Alias	SERVERS = master, mail, www, ns
# Host_Alias	CDROM = orion, perseus, hercules

##
# Cmnd alias specification
##
# Cmnd_Alias	PAGERS = /usr/bin/more, /usr/bin/pg, /usr/bin/less

##
# User specification
##

# root and users in group wheel can run anything on any machine as any user
root		ALL = (ALL) ALL
%admin		ALL = (ALL) ALL

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

visudo を使うとアクセス権限の修正も自動で行ってくれる。
念のためアクセス権限が戻っているか確認して、作業は終わり。

Finder で確認する場合は下の画像を参考にどうぞ。
image.png

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?