sudoでエラーが出る

ある日、突然sudoが使えなくなっていた。

sudoのエラー

ある日ログインしたら、sudoがエラーを表示して実行できなくなっていた。

 sudo: gid=4294967295: invalid value
 sudo: ポリシープラグインを初期化できません 

GIDを変更した記憶はなし。

ユーザ設定

idコマンド

idコマンドで確認すると、なぜかグループIDが4294967295に設定されている。

uid=1001(taro) gid=4294967295 groups=0(wheel),1001(family) 

/etc/passwd

/etc/passwdの内容を確認すると、グループIDは1001に設定されている。

taro:*:1001:1001:User &:/home/taro:/usr/local/bin/bash

/etc/master.passwd

/etc/master.passwdの内容を確認すると、グループIDは1001に設定されている。

taro:$6$RVcWkny3spIAupnb$SnspgfYWQ74nazBBj0HotIV8NcgTnzA60mxNsSw7andvJrOvnY1FkJ/EPumwVn9Ral93toPGc54FYOOu6yDsE0:1001:1001::0:0:User &:/home/taro:/usr/local/bin/bash

pwコマンド

pwコマンドでユーザ名を指定して確認すると、なぜかグループIDが4294967295になっている。

# pw usershow taro
taro:$6$RVcWkny3spIAupnb$SnspgfYWQ74nazBBj0HotIV8NcgTnzA60mxNsSw7andvJrOvnY1FkJ/EPumwVn9Ral93toPGc54FYOOu6yDsE0:1001:4294967295::0:0:User &:/home/taro:/usr/local/bin/bash

pwコマンドでユーザ情報すべてを表示してユーザ名でgrepすると、なぜか定義が2行存在する。

pw usershow -a | grep taro
 taro:$6$RVcWkny3spIAupnb$SnspgfYWQ74nazBBj0HotIV8NcgTnzA60mxNsSw7andvJrOvnY1FkJ/EPumwVn9Ral93toPGc54FYOOu6yDsE0:1001:4294967295::0:0:User &:/home/taro:/usr/local/bin/bash
 taro:$6$RVcWkny3spIAupnb$SnspgfYWQ74nazBBj0HotIV8NcgTnzA60mxNsSw7andvJrOvnY1FkJ/EPumwVn9Ral93toPGc54FYOOu6yDsE0:1001:1001::0:0:User &:/home/taro:/usr/local/bin/bash

試したこと

pwコマンド [失敗]

pwコマンドを使ってグループIDの変更を試みるも、エラーが出て失敗。

pw usermod taro -g family
 pw: entry inconsistent
 pw: pw_copy(): 無効な引数です

別のユーザ名を指定すれば普通にコマンドが通るので、引数指定ミスなどではない、はず。

pwd_mkdbコマンド

pwd_mkdbコマンドを使って、パスワードファイル群の整合性を図る。

pwd_mkdb /etc/master.passwd

上記コマンド実行後にログインし直してidコマンドを実行したところ、グループIDは正しく1001に設定され、sudoコマンドを使えるようになっていた。ただし、グループ群の指定でfamilyが重複している。

> id
 uid=1001(dtaro) gid=1001(family) groups=1001(family),0(wheel),1001(family)

/etc/group

/etc/group内のfamilyの設定を確認すると、ユーザ名が定義されている。

family:*:1001:taro,jiro

/etc/groupをエディタで開き、familyの定義からユーザ名の部分を削除する。

family:*:1001:

ログインし直してからidコマンドで確認すると、やっと正常にもどった。