Comandos de ejecución de Linux como otro usuario

Comandos de ejecución de Linux como otro usuario

Linux es el mejor y más utilizado sistema operativo de código abierto. Los usuarios de Linux tienen una gran cantidad de opciones para elegir el sistema operativo. Tiene opciones para elegir escritorio para sus sistemas Linux. Pero aún así a los profesionales de Linux les encanta la línea de comandos para trabajar. Principalmente las ediciones del servidor de Linux vienen solo con la opción de línea de comando, que los crean más ligeros y más rápido.

Los usuarios de Linux usan Shell para interactuar con los sistemas operativos. En el que el bash (shell nacido) es el shell más utilizado y el valor predeterminado disponible en la mayoría de los sistemas. Hoy en día, ZSH (Z Shell) también está obteniendo popularidad entre los usuarios debido a sus características.

En este tutorial aprenderá cómo ejecutar el comando como otro usuario en sistemas Linux/Unix.

Ejecutar el comando como otro usuario con SU

El comando SU (Switch User) se usa para ejecutar Shell como otro usuario. Este comando cambia al nuevo usuario y cargue su entorno.

El comando básico SU se parece a continuación:

su - nombre de usuario  

El comando anterior que usted tiene a otro usuario, donde puede ejecutar comandos con ese usuario. Pero nuestro objetivo es ejecutar el comando de Linux como otro usuario sin cambiar a ellos. Para hacer esto, verifique el ejemplo a continuación.

Actualmente estoy conectado como usuario root. Puedes pasar tu comando con -C parámetro. Ahora, el siguiente ejemplo ejecutará el comando "LS" como usuario Rahul sin cambiar al usuario.

su - rahul -c "pwd"  Salida: /Inicio /Rahul 

También puede ejecutar múltiples comandos como otro usuario en Linux, como:

su - rahul -c "pwd; mkdir hello && cd hello; pwd"  Salida:/home/rahul/home/rahul/hello 

En el comando anterior, primero imprime el directorio de trabajo presente con PWD, luego cree y cambie a un nuevo directorio llamado "Hello". Nuevamente imprime el directorio de trabajo actual. Todos los comandos están separados con semicolon (;) como lo hacemos en general.

Ejecutar el comando como otro usuario con sudo

Esto generalmente se usa para ejecutar el comando como usuario root, pero también puede usarlo con otros usuarios. Aquí no necesita usar ningún interruptor de línea de comando. Ingrese el nombre del usuario al que desea ejecutar el comando. Después de ese específico, el comando para ejecutar como usuario definido.

Sintaxis:

sudo -u nombre de usuario [comandos ...] 

Por ejemplo, está escribiendo un script de shell, que requería ejecutarse como usuario no raíz. Pero necesita reiniciar el servicio APACHE2. En ese caso, puede usar sudo para ejecutar el comando como usuario root. Como:

sudo -u root 'systemCtl reiniciar apache2'  

Ejecutar el comando como otro usuario con Runuser

También puedes usar corrusor para ejecutar comandos como otro usuario en sistemas Linux. Estos son comandos menos conocidos por los usuarios de Linux. Use el comando RunUser para ejecutar comandos con la identificación de usuario efectiva y la ID de grupo del usuario definido.

Sintaxis:

RunUser - Nombre de usuario -C [Comandos ...] 

Ejemplo - Por ejemplo, ejecute un comando como usuario "rahul" y cree directorio en su directorio de inicio.

Runuser -Rahul -C 'Mkdir -p ~/Hello'  

Luego enumere archivos en el directorio de inicio del usuario 'Rahul'.

Runuser -rahul -c 'ls -l'  Salida:> Total 16 -RW-R-R-- 1 Rahul Rahul 8980 Feb 15 2020 Ejemplos.Desktop DRWXR-XR-X 2 RAHUL RAHUL 4096 Dic 21 15:55 Hola 

También puede ejecutar comandos de stand en un solo comando. Simplemente agregue múltiples comandos con Semicolon separado.

Runuser -Rahul -c 'mkdir -p ~/hello; ls -l '  

Conclusión

En este tutorial, ha aprendido a ejecutar comandos como otro usuario en el sistema Linux. Has aprendido los comandos de ejecución como otro usuario con la ayuda de los comandos SU, sudo y Runuser Linux.