状況説明
あるディレクトリ配下のファイルの所有者を全て自分に変更するスクリプト書いて実行した。
その後sudoコマンド使おうとしたら
「sudo: 実効 uid が 0 ではありません、sudo は setuid root を設定してインストールされていますか?」
こんな感じのメッセージが......。 当時(これ書いてる2周間くらい前)焦りまくってエラーメッセージのログ取ってない。
なにやらsudoが使えなくなったらしい。
原因
先の所有者を変更するコマンドが原因だった。
/usr/bin/sudo の所有者を自分にしてしまったようだ。
対処法
下記サイトを参考にsuコマンドでrootに切り替えようと試みたが、私は/bin/suまで所有者を自分に変えていたため
ここでもエラーが出た。
対処法2
Ctrl + Alt + F1 でCUI画面に切り替える。
そこでユーザー名を聞かれるのでrootと入力。
パスワードは変更していなければ、そのPCをセットアップした最初のユーザーの物と同じだと思う。
ログインして下記のコマンドを実行する。
chown -R root:root /usr/
chown -R root:root /bin/
chmod 4111 /usr/bin/sudo
たぶんこれでsudo出来るようになるはず。
後は
Ctrl + Alt + F7(Linux MintだとF8だったような)
でGUIに戻れる。
あとがき
chown -R の"-R"は再帰的に所有者を変更するオプションで、わざわざスクリプト書かなくてもコマンド一発だった.......。
途中でCUIに切り替えているのはGUIだとrootにログインする方法がわからなかったため。