O super usuário ainda precisa ter permissão de execução para o diretório entrar nele?

0

Eu usei meu superusuário esperando poder fazer tudo com ele, mas para acessar um diretório, eu ainda precisava fazer o comando sudo su para alternar para o root porque eu estava tendo acesso negado. Então, como o superusuário é super usuário e ainda não consegue acessar o diretório? E se eu estava mudando para o root, por que o sudo su não pedia senha para o usuário root e funcionava sem ou com a senha de superusuário que não tinha permissão para executar dir?

    
por Limpuls 15.03.2018 / 14:32

2 respostas

2

Superusuário e raiz são sinônimos . Seu usuário provavelmente é um sudoer , não um superusuário.

No Ubuntu, você pode executar um único comando como root usando o comando sudo . Ou você pode abrir um shell raiz usando sudo su , sudo -s ou sudo -i . (Eu não discutirei as diferenças aqui. Além disso, o su puro pode ser usado - se você souber a senha da raiz.)

sudo cd não faz sentido, pois alteraria o diretório e, em seguida, passaria para o seu shell, que talvez não consiga abrir o diretório. Portanto, o Ubuntu não permite isso completamente:

$ sudo cd /root
sudo: cd: command not found

No entanto, podemos emitir:

$ sudo ls -l /root
total 0

Então, como podemos cd para o diretório? Nós temos que usar um shell de root:

$ sudo su
root@my-ubuntu:/home/mirek# cd /root
root@my-ubuntu:~# ls -l
total 0

Você perguntou por que você não inseriu a senha neste caso. É porque você usou sudo recentemente. Para forçá-lo a precisar da senha novamente, você pode emitir sudo -k . Caso contrário, ele começa a exigir a senha depois de alguns minutos novamente.

    
por Melebius 15.03.2018 / 15:33
0

Você não pode executar o comando cd com sudo , senão você receberá erros. Você deve executar:

sudo su

ou

sudo -s

para entrar em um shell de root antes de usar cd como root.

    
por NerdOfLinux 15.03.2018 / 15:19