2012-06-19 13 views
49

Estoy tratando de dar acceso a sudo a uno de mis usuarios. ¿Qué debo escribir en mi terminal?¿Cómo dar acceso a un usuario Linux sudo?

+9

Esta pregunta obviamente está ayudando a mucha gente y debería considerar volver a abrirla. – iMad

+0

Si desea volver a abrir la pregunta, debe proporcionar detalles adicionales que lo califican como válido de acuerdo con las normas del centro de ayuda. –

+2

Esta pregunta debe trasladarse al sitio correcto en lugar de cerrarse. – Matthew

Respuesta

64

Usted necesita ejecutar visudo y en el editor que se abre escritura:

igor ALL=(ALL) ALL 

Esa línea otorga todos los permisos de usuario igor.

Si desea permitir que se ejecute sólo algunos comandos, es necesario enumerarlos en la línea:

igor ALL=(ALL) /bin/kill, /bin/ps 
+0

¿Cuál sería la razón si uno lleva a cabo lo anterior, pero el usuario (en este caso 'igor') todavía no tenía acceso sudo completo (es decir, puede emitir' sudo ls' pero no 'sudo mount -a')? – puk

+0

@puk depende de los comandos que ha enumerado en/etc/sudoers; cuando escribió 'ALL', el usuario puede ejecutar todos los comandos –

55

This answer va a hacer lo que necesita, aunque por lo general no se agrega nombres de usuario específicas para sudoers. En su lugar, tiene un grupo de sudoers y simplemente agrega su usuario a ese grupo cuando sea necesario. De esta forma, no necesita usar visudo más de una vez al otorgar el permiso sudo a los usuarios.

Si estás en Ubuntu, el grupo es más probable ya existentes y los llamados admin:

$ sudo cat /etc/sudoers 
# 
# This file MUST be edited with the 'visudo' command as root. 
# 

...

# 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 

En otras distribuciones, como Arco y algunos otros, por lo general se llama wheel y es posible que deba configurarlo: Arch Wiki

Para dar a los usuarios del grupo de la rueda privilegios de root cuando preceden a un comando con "sudo", elimine la línea siguiente: % ruedas ALL = (ALL) ALL

También tenga en cuenta que en la mayoría de los sistemas visudo leerá el EDITOR variable de entorno o predeterminada para usar vi. Entonces puede intentar hacer EDITOR=vim visudo para usar vim como editor.

Para agregar un usuario al grupo debe ejecutar (como root):

# usermod -a -G groupname username 

donde groupname es su grupo (por ejemplo, admin o wheel) y username es el nombre de usuario (por ejemplo, john).

-5

Editar /etc/sudoers archivo manualmente o mediante la aplicación visudo. Recuerde: el sistema lee el archivo /etc/sudoers de arriba a abajo, por lo que puede sobrescribir una configuración en particular colocando la siguiente a continuación. Para estar seguro: defina su configuración de acceso en la parte inferior.

+7

Si lo edita manualmente, puede dañarlo y dañar su acceso a sudo. No hay razón para no usar 'visudo'. – ripper234

+0

Estoy de acuerdo con el último comentario. Además, considere agregar comandos como ejemplos. – entpnerd

Cuestiones relacionadas