¿Cómo puedo ejecutar un programa como otro usuario?

¿Cómo puedo ejecutar un programa como otro usuario?

Tengo un problema con los permisos en Ubuntu.

tengo un usuariousuario de aplicacionesen mi sistema puede ejecutar node, npm, etc.

Pero ahora necesito instalar el paquete net-tools.

Éste:https://zoomadmin.com/HowToInstall/UbuntuPackage/net-tools

El problema es que lo instalo con

sudo apt-get update -y

como usuario root, ya que no tengo privilegios como usuario de aplicación.

Y cuando intento ejecutarlo como usuario root, por ejemplo, comando: arpfunciona bien.

Pero cuando quiero ejecutarlo como appuser no funcionará, incluso cuando agrego appuser a sudoers.

Cuando ejecuto arpcomo appuser obtengo:

bash: arp: command not found

Respuesta1

Si lo ha instalado net-tools(como root), debería poder ejecutararp como usuario sin privilegios especificando su ruta absoluta,p.ej

/usr/sbin/arp

o asegurándose de que esté en elPATH para el usuario;p.ejen el archivo de inicialización apropiado ( .profileo el equivalente para su shell/entorno), agregue una línea como

PATH="$PATH:/usr/sbin"

Respuesta2

  • Siempre debes usarlo apt-getcomo root para instalar. Esto no significa que sólo el root pueda ejecutar los programas instalados.
  • sudo apt-get update -yno instala nada. Úselo sudo apt install net-toolspara instalar net-tools.
  • aprestá en /usr/sbineste directorio no está en la RUTA de un usuario normal. Puede agregarlo a su ruta (editar ~/.profile). o ejecutarlo como /usr/sbin/arp.

información relacionada