Cuando intento cambiar a root usando, sudo -i
aparece el error /var/tmp/sclDvf3Vx: line 8: -i: command not found
... Sin embargo, su -
funciona y continuaré usando. De ninguna manera soy un administrador de sistemas de Linux, por lo que el entorno sigue siendo muy confuso para mí. Supongo que mis preguntas son:
- ¿Por qué se lanza el error?
- ¿Cuál es la diferencia entre los dos comandos?
- ¿Por qué usarías uno sobre el otro?
Actualizar:
Estoy usando la versión CentOS: CentOS versión 6.6 (Final)
Aquí está la salida de algunos comandos que me pidieron que ejecutara, en los comentarios a continuación.
type sudo
:sudo is /opt/centos/devtoolset-1.1/root/usr/bin/sudo
sudo -V
:/var/tmp/sclIU7gkA: line 8: -V: command not found
grep'^root:' /etc/passwd
:root:x:0:0:root:/root:/bin/bash
Actualizar:
Esto se agregó a mi usuario no root ~ / .bashrc hace un tiempo porque necesitaba compatibilidad con C ++ 11. Cuando lo comento, re-ssh, puedo ejecutar sudo -i sin ningún error.
if [ "$(gcc -dumpversion)" != "4.7.2" ]; then
scl enable devtoolset-1.1 bash
fi
alias
para su sudo
comando?
sudo
que no es el comando sudo normal. Dado que no comprende las opciones de sudo, claramente no es algo estándar. Utilice /usr/bin/sudo
o pregunte a sus administradores locales (que realmente deberían haberle dicho esto cuando le dieron poderes de sudo).
-
es realmente un (ASCII)-
?