Executando o comando sudo para um usuário nos nós (Rocks)

0

Anteriormente, fiz uma pergunta aqui que um usuário que está no arquivo sudoers , deseja executar alguns comandos sudo nos nós. O problema é que, com o comando sudo , ele não pode acessar sua página inicial. Embora possa acessar outras pastas.

Então, no frontend, temos

# cat /etc/exports
/export 10.10.10.1(rw,async,no_root_squash) 10.10.10.0/255.255.255.0(rw,async)

Agora, veja que hduser usa o ssh para acessar o nó de cálculo. Ele pode executar o comando sudo para listar / , mas não sua origem.

[hduser@compute-0-0 /]$ ls /home/hduser/
bio  hadoop-2.7.2  hadoop-2.7.2.tar.gz  usr
[hduser@compute-0-0 /]$ sudo ls
bin   etc      lib         media  net   root     share  sys  var
boot  home     lib64       misc   opt   sbin     srv    tmp
dev   install  lost+found  mnt    proc  selinux  state  usr
[hduser@compute-0-0 /]$ sudo ls /home/hduser
ls: cannot open directory /home/hduser: Permission denied

Como posso consertar isso?

    
por mahmood 29.07.2016 / 22:15

1 resposta

1

De acordo com os comentários, root é negado por causa de root_squash , que é o comportamento de exportação padrão. Neste modo, o acesso remoto de root é mapeado para nobody .

Se todos os nós forem equivalentes sem exclusividade, você deverá simplificar a exportação

/export 10.10.10.0/255.255.255.0(rw,async,no_root_squash)

Depois de fazer essa alteração, exportfs -a .

Se isso não resolver o problema imediatamente, talvez seja necessário reiniciar o cliente ( umount , mount do sistema de arquivos relevante ou reinicializar).

    
por 29.07.2016 / 22:22

Tags