Achei que executar um comando sudo
era idêntico a fazer login como usuário root e executar o comando. No entanto, encontrei alguns comandos que não funcionam, sudo
mas funcionam para su
.
Por exemplo,
sudo > mail.log
bash: mail.log: Permission denied
mas na verdade digitar su
e executar o mesmo comando funciona.
Por que é isso?
Responder1
Veja o que você está fazendo com este comando.
sudo > mail.log
>
na linha de comando antes de redirecionar o stdout, tente truncar mail.log
o arquivo. Esta operação é executada por um usuário normal (antes do sudo
início do seu sem argumentos). Provavelmente um usuário comum não possui acesso de gravação ao mail.log
arquivo.
Tudo funciona como deveria.
Se você precisar do sudo para executar o comando e gravá-lo em um tipo de arquivo, use o seguinte comando:
sudo "some_command with operands > mail.log"