rootアクセス権を持つユーザーが追加されましたが、/etc/sudoers
コマンドを実行できないようですsudo
。
[root@compute-0-0 ~]# cat /etc/sudoers
root ALL=(ALL) ALL
hduser ALL=(ALL) ALL
[root@compute-0-0 ~]# sudo
usage: sudo -h | -K | -k | -L | -V
usage: sudo -v [-AknS] [-g groupname|#gid] [-p prompt] [-u user name|#uid]
usage: sudo -l[l] [-AknS] [-g groupname|#gid] [-p prompt] [-U user name] [-u user name|#uid] [-g
groupname|#gid] [command]
usage: sudo [-AbEHknPS] [-r role] [-t type] [-C fd] [-g groupname|#gid] [-p prompt] [-u user
name|#uid] [-g groupname|#gid] [VAR=value] [-i|-s] [<command>]
usage: sudo -e [-AknS] [-r role] [-t type] [-C fd] [-g groupname|#gid] [-p prompt] [-u user
name|#uid] file ...
[root@compute-0-0 ~]# su - hduser
[hduser@compute-0-0 ~]$ ls
bio hadoop-2.7.2 hadoop-2.7.2.tar.gz protobuf-2.5.0 protobuf-2.5.0.tar.gz
[hduser@compute-0-0 ~]$ sudo ls
[sudo] password for hduser:
ls: cannot open directory .: Permission denied
[hduser@compute-0-0 ~]$
なぜですか?
答え1
あなたが経験している問題は権限の問題ではありませんsudo
。root
ホームディレクトリを持つファイルシステムはhduser
マシンにローカルではなく、root
マシンに権限が付与されていません。したがって、これはsu - hduser
自動的にそのディレクトリに変わりますので、次のようにコマンドを実行しsudo ls
てみてください。ls
root
それエラーの原因です。
これは問題を解決するのに役立ちます。sudo、ユーザーファイルにアクセスできません