martes, 13 de febrero de 2007

Loguearse como root en un terminal bajo Ubuntu

El comando $ sudo viene muy bien cuando solo quieres ejecutar una única orden, pues ahorra algo de trabajo a la hora de teclear.
En cambio, si se desea realizar más de una tarea, puede llegar a ser un incordio, puesto que se ha de escribir cada vez que vaya a ejecutar cualquier orden como root.

Para solventar este problema, basta con loguearse como superusuario.
En contra de lo que muchos usuarios creen, en Ubuntu también es posible loguearse como root desde un terminal. Salvo que la forma de hacerlo es diferente a la tradicional ($ su).

El comando a escribir para loguearse como root en un terminal bajo Ubuntu, es el siguiente:
$ sudo bash

Vía | Problema con "su" en Ubuntu [www.espaciolinux.com]

[ACTUALIZACIÓN]
Otro método, más simple:
$ sudo su

Vía | Enfermo con los .rar [dosydoscuatro.wordpress.com]

[ACTUALIZACIÓN 20080304]
El método más efectivo (gracias, glog):
$ sudo -s

19 comentarios:

  1. Cuando ejecutas por primera vez (por sesión) un comando con sudo, el privilegio permanece durante x tiempo, así puedes ejecutar varios comandos seguidos sin volver a poner sudo, hasta que caduque el permiso.
    Por eso hay gente que considera que la orden sudo es peligrosa y no debe usarse.

    Saludos!

    ResponderEliminar
  2. Hola, choyano.
    Creo que querías decir algo pero no te has expresado bien.
    Por ello, procedo a aclararlo.

    Cuando ejecutas $ sudo por primera vez, durante 15 minutos el sistema no te vuelve a pedir contraseña para las labores de administración. Pero, sin embargo, sí has de indicar delante de cada orden que quieres ejecutarla como root, por lo que es necesario volver a escribir $ sudo delante de cada orden a pesar de que no va a pedir contraseña.
    El tiempo que tarda en volver a pedir contraseña se puede modificar, e incluso anular.

    Recordemos que estamos en GNU/Linux, en donde el límite está en la capacidad de imaginación de cada uno. Aquí todo es posible. :-D
    Un saludo y gracias por tu tiempo.

    ResponderEliminar
  3. Hola, estoy comenzando a programar scripts bajo bash, y tengo una duda relacionada con su. Yo quería saber si es posible crear un script donde el usuario que lo ejecute obtenga un login como root. Es decir, que al ejecutarlo automáticamente el usuario sea logueado como root sin necesidad de introducir contraseña alguna. De esta manera pretendo ejecutar comandos autorizados al usuario root sin intervención del usuario de turno (salvo obviamente la de ejecutar el script.). Muchas gracias por tu tiempo.
    Walter.-

    ResponderEliminar
  4. Hola, Walter.
    Por lo que veo estás un poco verde en GNU/Linux.
    Si lo que comentas se pudiera hacer, ya no estaríamos hablando de un sistema GNU/Linux, sino de Windows.
    Así que, obviamente, la respuesta a tu pregunta es, rotundamente: NO.
    De hecho, este es uno de los motivos por los que un virus no puede atentar contra este sistema operativo.
    Si lo que propones se pudiera realizar, ¿donde estaría la seguridad? Exactamente, has acertado: en el mismo sitio que en Windows, que brilla por su ausencia.
    Un saludo.

    ResponderEliminar
  5. buenas...
    Vamos a ver, lo que walter comenta es perfectamente factible.
    Se puede crear un script que ejecute por ejemplo "sudo bash".
    Pero, evidentemente, el usuario que cree el script si necesita saber la contraseña de root, y bien se la puede pasar a sudo como parametros dentro del script (ver man sudo), o modificar la lista de sudoers y añadir al usuario en concreto al grupo.
    Evidentemente, esto supone un problema de segurida, puesto que supone, o guardar la contraseña de root en texto plano, o darle poderes de root a un usuario, que si es el objetivo, basta con darle poderes de administrador.
    Otro tema es hablar de ficheros "suidados" y de desbordamientos de buffer, que nos permitirian tener uid 0 sin necesidad de saber la contraseña de root.

    Por ultimo, aunque ocupa los mismos caracteres que sudo su, yo tengo la mania de usar sudo -s :P

    ResponderEliminar
  6. OK. Entendí mal entonces.
    Lo que yo creía era que quería poder ejecutar el script con derechos de superusuario pero sin tener la contraseña.

    Un saludo y gracias por aclararlo y por visitar mi blog.

    ResponderEliminar
  7. disculpa amigo tengo un script shell en cual creo a un usuario de sistema dichos datos los tomo de un formulario de php utilizando las funciones exec y system si c me ejeuta puesto q tengo unos echos y los leo esde misitio la cuetion esta en q no crea nada alchecar los logs d apache me aparece q de entrada a un passwrd la verdad no se como darle entrada utilizo el sudo en cada instruccion en cambio si ejecuto el scrit dentro de root lo corre a la perfeccion me podrias ayudar

    ResponderEliminar
  8. Gracias mil - 100% Efectivo

    ResponderEliminar
  9. hola, soy novato en esto de ubuntu y me gustaria preguntar es como hago para mantener un historial de lo que voy escribiendo en la terminal, es decir cada vez inicio la terminal me sale lo siguiente:

    ciro@ciro-desktop: sudo $

    pero me limpia todo los comandos que escribi anteriormente y no puedo llevar un control de lo que voy haciendo en la terminal.

    Gracias.

    ResponderEliminar
  10. Hola.
    No lo sé. Utilizo Kubuntu, y Konsole lo hace automáticamente.
    Un saludo.

    ResponderEliminar
  11. Saludos.
    Estoy haciendo un script de bash con interface grafica atravez de xdialog y quisiera saber como puedo logearme como root desde el mismo script sin necesidad de abrir la terminal.. Osea ponerle un cuadro donde ponga la contrasena y desde el script logearme como root.. Por ejemplo como hace synaptyc que cuando lo habres te pide la contrasena..

    Gracias y espero su ayuda.m.

    Happy-word

    ResponderEliminar
  12. jeje yo utilizaba el fakeroot no sabia como utilizar el terminal en modo root, pero = no funciona nada mal.

    ResponderEliminar
  13. hola tengo canaima y a pesar de poner sudo y su no me permite entrar me pide la contraseña y me da el siguiente mensaj



    cantv@canaima:~$ sudo su

    We trust you have received the usual lecture from the local System
    Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

    [sudo] password for cantv:

    y me pide clave si coloco la mia me da este mensaj


    [sudo] password for cantv:
    cantv is not in the sudoers file. This incident will be reported.

    y por ningun motivo puedo copiar xampp en la carpeta opt, si tienen alguna sugerencia les agradecera full. gracias y buenas noches

    ResponderEliminar
  14. Lo dice bien claro. Tienes que hacerlo desde un usuario que esté en el archivo /etc/sudoers.
    Realiza las gestiones de administración con el usuario que utilizaste para instalar el sistema o bien agrega tu usuario en dicho archivo (/etc/sudoers).

    ResponderEliminar
  15. bien usr he hecho lo ke dijiste o mejor no lo he hecho por que me dice permiso denegado y si intento por entrar en carpetas me dice el archivo es de un tipo desconocido

    ResponderEliminar
  16. Hola, oye tengo un problema, en la terminal no se me deja escribir la contraseña ¿Que hago o que? la verdad voy empezando en linux

    ResponderEliminar
  17. No puedo, me pide la contraseña pero no me deja escribirla.

    ResponderEliminar
  18. muy bueno linux.... sobre todo por au gran facilidad para aprenderlo, y de paso a usar sus facilisiiiiiiiimosssss comandos; por eso la informatica/computacion es mas facil cada dia...
    verdad????

    ResponderEliminar

Tu comentario será publicado tan pronto como sea supervisado y aprobado.
No están permitidas las faltas de respeto ni la información sensible (como direcciones de correo o números de teléfono). Estos comentarios serán eliminados.

LinkWithin

Related Posts Plugin for WordPress, Blogger...