情けない話なので備忘録.
ローカルで user1 を作成しログインした状態で,同名ユーザーを LDAP で user1 としou=SUDOers となるグループに設定していた.このとき,ユーザー名は同じに見えるのだけれど,user_id がローカルは 1001,LDAP は 10001 となっていたので,「ユーザー名は正しく見えるのにファイル生成で変に permission denied されるぞ」「ユーザー名は正しく見えるのにsudoできないぞ?」という事態が起きていた.
% sudo ls
sudo: あなたは passwd データベースに存在しません
どうやってわかったかというと,id コマンドは認証系 (LDAP) のユーザー名と user_id を表示してくれて,
% id user1
uid=10001(user1) gid=10001(user1) groups=10001(user1),11000(admin),10000(user)
そのシェルで whoami したらローカルでログインした該当 user_id が認証システムにないと言われたためである.
% whoami
whoami: cannot find name for user ID 1001
ls に -n オプションをつけるとユーザー名ではなくユーザーIDを表示してくれるのでそれもよいかもしれない.
%ls -l
合計 383M
drwxr-xr-x. 6 user1 user1 4.0K 10月 22 01:43 .
drwxrwxrwx. 83 user1 user1 8.0K 10月 22 06:41 ..
...
drwxr-xr-x. 14 user1 user1 4.0K 10月 21 21:48 zlib-1.2.9
%ls -ln
合計 383M
drwxr-xr-x. 6 10001 10001 4.0K 10月 22 01:43 .
drwxrwxrwx. 83 10001 10001 8.0K 10月 22 06:41 ..
...
drwxr-xr-x. 14 10001 10001 4.0K 10月 21 21:48 zlib-1.2.9
ログアウトしてログインしたら解決したという情けない話であった.とはいえ認証系でおかしい時にログアウトするのは勇気がいるけれど.
(危ない操作をする場合は,タブ1つはログインしっぱなしにしておけとか,違う tty でログインしておけ,とか言っていましたね)
0 件のコメント:
コメントを投稿