.

Breaking News
recent

-

Comandos sudo y su en Ubuntu 12.04

Comandos sudo y su en Ubuntu 12.04



Introducción por Granete Binner

Es normal que los que llegais a Ubuntu por primera vez , tengais el miedo a la Terminal , pero no debeis hacerlo .

La única Terminal a la que hay que tenerle miedo es a la de Retiro en Buenos Aires porque te roban en cualquier momento.

Bueno . Como os iba diciendo , la terminal es muy práctica a la hora de resolver problemas en nuestro Precise Pangolin , que traducido el español de España sería algo así como Pangolin Preciso . No me pregunteis que es Pangolin porque no entiendo un joraca el ruso .


A continuación les dejo en detalle un tutorial que encontré en la página de mi colega Juanete Bitel , que es un ex alumno mio al que formé en la Universidad de Galicia y que siempre recalca que no hay que tenerle miedo a la terminal pues es muy sencilla cuando os acostumbrais.


A mi por ejemplo me ha llevao un tiempillo hacerlo pero , que son 35 años hombre , la vida pasa en un abrir y cerrar de ojete.


Esto que os dejo aqui abajo es muy importante y presten atención porque se explica la diferencia entre dos comandos como son el Su , que no es Susana Gimenez y el Sudo , que tampoco son los gordos en pañales con trenzas que pelean en Madrid .


Ahora a estar concentraos porque esto que se viene es en serio


Fiel al estilo de mi alumno Ale Coberty lo he copiao para todos vosotros ......



Los saluda pues , Granete Binner desde Atlantic City que traducido al español de España seria Citizen para el Atlántico o algo asi , no domino mucho el alemán todavía.



Compiz fusion






Como utilizar los comandos su y sudo




Por Juanete Bitel


http://www.ubuntu-guia.com/2012/08/comandos-su-y-sudo.html


lucid linx



Ya me he visto en varias situaciones, en las que intentando explicar como hacerse root en la terminal, he intuido que hay cierta confusión entre los comandos sudo y su, creyendo algunos noveles, que "su" es un diminutivo de "sudo" y que hacen lo mismo.


Estos comandos son totalmente distintos y cada uno sirve para una cosa muy distinta.


También me he dado cuenta que el uso indiscriminado del "sudo su" después de instalar Ubuntu para logearse como root e instalar todo tipo de aplicaciones sin necesidad de escribir el "sudo" constantemente, provoca algunas malas instalaciones y desconfiguraciones, por no eliminar las variables de entorno del usuario y cargar las del root (ver consejo al final de la guía).

Para sacarnos de dudas, voy a tratar de explicar con detalle, el uso de estos dos comandos:


El comando "su"


Son las siglas de "Switch User" y sirve, como su propio nombre indica, para cambiar de usuario sin necesidad de hacer un cierre o cambio de sesión (todo esto desde la terminal, esa cosa tan rara, pero potente y funcional).


Vamos a ver unos ejemplos y para ello, vamos a utilizar dos comandos más: whoami (quien soy) y pwd (directorio en el que nos encontramos en la terminal):



juanetebitel@equipo:~$ whoami
juanetebitel
juanetebitel@equipo:~$ pwd
/home/juanetebitel
Aquí vemos con "whoami", que soy "juanetebitel" y con "pwd", que estoy en mi carpeta personal "/home/juanetebitel".


Como anotación, decir que la línea con que siempre se abre nuestra terminal:
juanetebitel@equipo:~$


Se denomina: "Prompt" y está compuesta por:


nombre de usuario "juanetebitel"
el símbolo de "@"
nombre del equipo "equipo"
dos puntos ":"
directorio donde nos encontramos "~"
símbolo del dolar "$" que si estamos como root cambiará a "#"


Hay que tener en cuenta que en la parte del directorio donde nos encontramos aparece el símbolo "~", que equivale a la propia carpeta personal del usuario en cuestión "/home/juanetebitel".



Ahora vamos a cambiar al usuario "manuel" con el comando: "su nombreusuario"
:


juanetebitel@equipo:~$ su manuel
Contraseña: [la de manuel]


Nota: Nos pedirá la contraseña de "manuel" (no la de juanetebitel)




Y comprobamos quien es y donde está:


manuel@equipo:/home/juanetebitel$ whoami
manuel
manuel@equipo:/home/juanetebitel$ pwd
/home/juanetebitel


Vemos que es "manuel" pero sigue en mi carpeta personal "/home/juanetebitel" y no en la suya, no cambiando las variables de entorno.

Eso sí, en el Prompt ..............texto por defecto antes del "$" .............esta variable de entorno es actualizada y nos muestra el nuevo usuario y el home del usuario, donde nos encontramos......

"manuel@equipo:/home/juanetebitel$".

Esto es muy importante tenerlo en cuenta a la hora de hacerse root.



Si queremos cambiar al usuario "manuel" y además cambiar a su carpeta personal y demás variables de entorno, añadimos un espacio en blanco y un guión medio "-" a "su" .....antes de manuel ...................



juanetebitel@equipo:~$ su - manuel
Contraseña: [la de manuel]
manuel@equipo:~$ whoami
manuel
manuel@equipo:~$ pwd
/home/manuel


Aquí vemos que en el Prompt aparece el directorio con el símbolo..... "~" ....que es igual que estar en la propia carpeta personal del usuario en cuestión "manuel@equipo:~$".





Cambiar al usuario root activado
:

En sistemas GNU/linux con la cuenta del root activada (no es el caso de Ubuntu por defecto), para cambiar al usuario "root", se puede hacer escribiendo después del "su" el usuario ....


"su root"........... o no ....."su" .................. aunque es más utilizada esta última:


juanetebitel@equipo:~$ su
root@equipo:/home/juanetebitel# whoami
root
root@equipo:/home/juanetebitel# pwd
/home/juanetebitel


Como dijimos, "su", cambia de usuario pero no cambia de directorio $HOME ni demás variables de entorno.




Si queremos cambiar a root y además cambiar a su carpeta personal y demás variables de entorno, añadimos un espacio en blanco y un guión medio "-"
:


juanetebitel@equipo:~$ su -
root@equipo:~# whoami
root
root@equipo:~# pwd
/root


Para salir del usuario "root" o "manuel" y volver a nuestro usuario "juanetebitel", ejecutamos el comando
:

exit

Para ver el manual de "su" ejecutar en una terminal:


man su
Para salir del manual pulsar la tecla q.





El comando "sudo"


"Sudo" viene de "switch user do" y permite a los usuarios ejecutar acciones con los privilegios de seguridad del root, de manera segura. Se instala por defecto en /usr/bin.

Por defecto Ubuntu trae desactivada la cuenta del "root", por seguridad y para administrar el sistema existe un grupo de usuarios denominado "sudoers users" (administradores o admin), los cuales pueden obtener permisos de root, mediante la utilización de "sudo".

El usuario con el que instalamos Ubuntu, se encuentra incluido en este grupo de administradores.

El archivo que determina el acceso a las tareas administrativas del grupo "sudoers users" es "/etc/sudoers".


En Ubuntu 12.04 el archivo por defecto viene configurado así:



# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL





# See sudoers(5) for more information on "#include" directives:


#includedir /etc/sudoers.d
:




Nota: todas las líneas con una # delante son comentarios y el sistema no los lee. Este archivo solo puede ser editado por el root con "visudo"




Este archivo configura el sistema de forma que cualquier usuario del grupo "admin" (administrador) pueda realizar tareas administrativas anteponiendo el "sudo" a cualquier orden o comando.



En la terminal se utiliza el comando "sudo", anteponiéndolo a la orden o comando a ejecutar:


sudo comando



Para ver el manual de "sudo" ejecutar en una terminal
:

man sudo

Para salir del manual pulsar la tecla q.

Cambiar al usuario root desactivado

Algunas veces, cuando vamos a ejecutar muchos comandos como root, podemos cambiar al usuario root, para así, ahorrarnos escribir el "sudo"en cada línea de ordenes.

A la hora de cambiar al usuario root en Ubuntu y al ser una tarea administrativa, deberemos de utilizar el "sudo" y hay varias maneras de hacerlo..................


La más común, pero no la mejor, es utilizar el "sudo su", manteniendo las variables de entorno y el $HOME:


juanetebitelpo:~$ sudo su
rootpo:/home/juanetebitel# whoami
root
rootpo:/home/juanetebitel# pwd
/home/juanetebitel


Nota: La contraseña que nos pide es la del usuario que ejecuta el "sudo", no la del root (si la tuviéramos activada)


También podemos conseguir una shell de root sin eliminar las variables de entorno con: "sudo -s" (mucho ojo con este comando, el prompt no te avisa de que sigues en el home del usuario):


juanetebitelpo:~$ sudo -s
rootpo:~# whoami
root
rootpo:~# pwd
/home/juanetebitel


Si queremos cambiar al $HOME y demás variables de entorno, utilizamos el guión medio "-":
juanetebitelpo:~$ sudo su -
rootpo:~# whoami
root
rootpo:~# pwd
/root



Una cosa a tener en cuenta es que con "sudo su" o "sudo su ", ejecutamos recursivamente a root.

Me explico, con "sudo" ejecutamos la siguiente orden ....cambio de usuario "su" ..... como root, creando una serie de variables y luego al ejecutarse el cambio de usuario ...."su"......... nos volvemos a loguear otra vez como root, con lo cual ejecutamos muchos procesos innecesarios, y lo más importante, todos como root.


Es por eso, que lo más recomendable es utilizar la opción "-i" de sudo: "sudo -i".


juanetebitelpo:~$ sudo -i
rootpo:~# whoami
root
rootpo:~# pwd
/root

Con este comando cargamos una shell de root, y lo más importante, eliminamos las variables de entorno del usuario y cargamos las del root, cosa que no pasa con "sudo -s", que si bien nos da una shell de root, no elimina las variables del usuario.


Para salir del usuario "root" y volver a nuestro usuario "juanetebitel", ejecutamos el comando
:



exit


Consejo:

En Ubuntu, la mejor opción es usar el sudo en cada uno de los comandos a ejecutar:


sudo comando


Pero si hay que ejecutar muchos podemos usar:


sudo -i


Mejor que "sudo su" o cualquiera de los otros.



También os puede interesar leer como activar la cuenta del root y más cosas sobre él en
:


http://www.ubuntu-guia.com/2010/09/activar-desactivar-root-ubuntu.ht
ml



Precise Pangolin- Lucid Linx- Ub





http://www.mundo-linux-b.blogspot.com/eltiti233/posts

No hay comentarios:

Publicar un comentario en la entrada

-

Con la tecnología de Blogger.