(Solucionado) Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-04 Por tema Camaleón
El 2020-05-04 a las 10:56 +0200, Miguel Ángel Sánchez escribió:
 
> El lun., 4 may. 2020 10:47, Camaleón  escribió:
> 
> > El 2020-05-04 a las 10:31 +0200, Miguel Ángel Sánchez escribió:
> >
> > > El lun., 4 may. 2020 10:19, Camaleón  escribió:
> > >
> > > > El 2020-05-04 a las 08:42 +0200, Esteban Torres escribió:
> >
> > (...)
> >
> > > > > > Si se os ocurre alguna otra cosa, soy toda orejas.
> > > > > >
> > > > > Has pensado en ssh?
> > > > >
> > > > > ssh root@127.0.0.1 .
> > > >
> > > > Buena idea, porque tengo ssh y configurado ex profeso para actualizar
> > > > Firefox (solo root lo puede actualizar).

(...)

> > > > Si tiro de bash, ejecuta todo bien pero al finalizar no me retorna a la
> > > > shell, el cursor queda en blanco:
> > > >
> > > > sm01@stt008:~$ xfce4-terminal -x ssh root@localhost 'bash -c "apt-get
> > update && apt-get upgrade"; exec bash'
> >  ^^^
> > > >
> > > > ¿Qué me faltaría?
> >
> > > Prueba con esto,
> > >
> > > xfce4-terminal -x ssh root@localhost 'bash -c "apt-get update && apt-get
> > > upgrade; bash" '
> > >
> > > Y que sea bash el que lance la línea de comandos.
> >
> > Ya lo he probado (ver más arriba ), se queda en blanco.

> De acuerdo, no lo leí bien, usé las comillas al revés jajaj
> 
> Esta web
> https://stackoverflow.com/questions/28360288/ssh-remotely-run-a-script-and-stay-there/28360598#comment45064288_28360598
> sugiere que añadas la opción -t al comando de ssh. Lo he probado con un
> servidor local y me funciona.
> 
> xfce4-terminal -x ssh -t root@localhost 'bash -c "apt-get update && apt-get
> upgrade"; bash'

¡Funciona! :-)

sm01@stt008:~$ xfce4-terminal -x ssh -t root@localhost 'bash -c "apt-get update 
&& apt-get upgrade; bash" '
sm01@stt008:~$

(se abre una nueva terminal)

root@localhost's password: 
Obj:1 http://security.debian.org/debian-security stretch/updates InRelease
Ign:2 http://ftp.de.debian.org/debian stretch InRelease   
Obj:3 http://ftp.de.debian.org/debian stretch-updates InRelease
Obj:4 http://ftp.de.debian.org/debian stretch Release  
Leyendo lista de paquetes... Hecho 
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias   
Leyendo la información de estado... Hecho
Calculando la actualización... Hecho
El paquete indicado a continuación se instaló de forma automática y ya no es 
necesario.
  libmicrodns0
Utilice «apt autoremove» para eliminarlo.
0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 0 no actualizados.
root@stt008:~# 

Muchas gracias a todos por las ideas, entre una y otra al final lo 
habéis bordado.

P.S. Otra opción que estaba mirando, y funciona pero requiere trabajo 
extra, consiste en lanzar una terminal de root (pkexec xfce4-terminal -x 
"órdenes") pero hay que crear antes una política de permiso para la 
terminal que quieras habilitar, en fin, un engorro. Sacado de aquí¹

¹ https://forum.xfce.org/viewtopic.php?id=13749

Saludos,

-- 
Camaleón 



Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-04 Por tema Miguel Ángel Sánchez
De acuerdo, no lo leí bien, usé las comillas al revés jajaj

Esta web
https://stackoverflow.com/questions/28360288/ssh-remotely-run-a-script-and-stay-there/28360598#comment45064288_28360598
sugiere que añadas la opción -t al comando de ssh. Lo he probado con un
servidor local y me funciona.

xfce4-terminal -x ssh -t root@localhost 'bash -c "apt-get update && apt-get
upgrade"; bash'


El lun., 4 may. 2020 10:47, Camaleón  escribió:

> El 2020-05-04 a las 10:31 +0200, Miguel Ángel Sánchez escribió:
>
> > El lun., 4 may. 2020 10:19, Camaleón  escribió:
> >
> > > El 2020-05-04 a las 08:42 +0200, Esteban Torres escribió:
>
> (...)
>
> > > > > Si se os ocurre alguna otra cosa, soy toda orejas.
> > > > >
> > > > Has pensado en ssh?
> > > >
> > > > ssh root@127.0.0.1 .
> > >
> > > Buena idea, porque tengo ssh y configurado ex profeso para actualizar
> > > Firefox (solo root lo puede actualizar).
> > >
> > > sm01@stt008:~$ xfce4-terminal -x ssh root@localhost "apt-get update &&
> > > apt-get upgrade"
> > > sm01@stt008:~$
> > >
> > > Ejecuta todo bien, pero al finalizar cierra la terminal.
> > >
> > > Si tiro de bash, ejecuta todo bien pero al finalizar no me retorna a la
> > > shell, el cursor queda en blanco:
> > >
> > > sm01@stt008:~$ xfce4-terminal -x ssh root@localhost 'bash -c "apt-get
> update && apt-get upgrade"; exec bash'
>  ^^^
> > >
> > > ¿Qué me faltaría?
>
> > Prueba con esto,
> >
> > xfce4-terminal -x ssh root@localhost 'bash -c "apt-get update && apt-get
> > upgrade; bash" '
> >
> > Y que sea bash el que lance la línea de comandos.
>
> Ya lo he probado (ver más arriba ), se queda en blanco.
>
> Saludos,
>
> --
> Camaleón
>
>


Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-04 Por tema Camaleón
El 2020-05-04 a las 10:31 +0200, Miguel Ángel Sánchez escribió:

> El lun., 4 may. 2020 10:19, Camaleón  escribió:
> 
> > El 2020-05-04 a las 08:42 +0200, Esteban Torres escribió:

(...)

> > > > Si se os ocurre alguna otra cosa, soy toda orejas.
> > > >
> > > Has pensado en ssh?
> > >
> > > ssh root@127.0.0.1 .
> >
> > Buena idea, porque tengo ssh y configurado ex profeso para actualizar
> > Firefox (solo root lo puede actualizar).
> >
> > sm01@stt008:~$ xfce4-terminal -x ssh root@localhost "apt-get update &&
> > apt-get upgrade"
> > sm01@stt008:~$
> >
> > Ejecuta todo bien, pero al finalizar cierra la terminal.
> >
> > Si tiro de bash, ejecuta todo bien pero al finalizar no me retorna a la
> > shell, el cursor queda en blanco:
> >
> > sm01@stt008:~$ xfce4-terminal -x ssh root@localhost 'bash -c "apt-get 
> > update && apt-get upgrade"; exec bash'
 ^^^
> >
> > ¿Qué me faltaría?

> Prueba con esto,
> 
> xfce4-terminal -x ssh root@localhost 'bash -c "apt-get update && apt-get
> upgrade; bash" '
> 
> Y que sea bash el que lance la línea de comandos.

Ya lo he probado (ver más arriba ), se queda en blanco.

Saludos,

-- 
Camaleón 



Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-04 Por tema Miguel Ángel Sánchez
Prueba con esto,

xfce4-terminal -x ssh root@localhost 'bash -c "apt-get update && apt-get
upgrade; bash" '

Y que sea bash el que lance la línea de comandos.

El lun., 4 may. 2020 10:19, Camaleón  escribió:

> El 2020-05-04 a las 08:42 +0200, Esteban Torres escribió:
> >
> > El 4/5/20 a las 8:14, Camaleón escribió:
> > > El 2020-05-03 a las 23:21 +0200, Javier Barroso escribió:
> > >
> > > > Buenas, respondo debajo
> > > Hola Javier,
> > > > On Sun, May 3, 2020 at 10:29 PM Miguel Ángel Sánchez <
> malet...@gmail.com> wrote:
> > > > > Hola, prueba a ejecutar el siguiente comando
> > > > >
> > > > > xcfe4-terminal -e "bash -c 'apt update && apt upgrade; bash' "
> > > > >
> > > > > De esta forma al lanzar el emulador de terminal bash ejecuta
> primero los comandos de apt y luego lanza una línea de comandos de bash.
> > > > >
> > > > > Lo he probado con gnome-terminal que es lo que tengo y funciona.
> Ten en cuenta que si lo ejecutas como root también tendrás bash como root.
> > > > Para root, usa sudo
> > > > xfce4-terminal  -e "sudo bash -c 'apt-get update; sudo bash'"
> > > En este caso, el sistema no tiene sudo. Nunca lo instalo :-)
> > >
> > > sm01@stt008:~$ which sudo
> > > sm01@stt008:~$
> > >
> > > Si se os ocurre alguna otra cosa, soy toda orejas.
> > >
> > Has pensado en ssh?
> >
> > ssh root@127.0.0.1 .
>
> Buena idea, porque tengo ssh y configurado ex profeso para actualizar
> Firefox (solo root lo puede actualizar).
>
> sm01@stt008:~$ xfce4-terminal -x ssh root@localhost "apt-get update &&
> apt-get upgrade"
> sm01@stt008:~$
>
> Ejecuta todo bien, pero al finalizar cierra la terminal.
>
> Si tiro de bash, ejecuta todo bien pero al finalizar no me retorna a la
> shell, el cursor queda en blanco:
>
> sm01@stt008:~$ xfce4-terminal -x ssh root@localhost 'bash -c "apt-get
> update && apt-get upgrade"; exec bash'
>
> ¿Qué me faltaría?
>
> Saludos,
>
> --
> Camaleón
>
>


Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-04 Por tema Camaleón
El 2020-05-04 a las 08:42 +0200, Esteban Torres escribió:
> 
> El 4/5/20 a las 8:14, Camaleón escribió:
> > El 2020-05-03 a las 23:21 +0200, Javier Barroso escribió:
> > 
> > > Buenas, respondo debajo
> > Hola Javier,
> > > On Sun, May 3, 2020 at 10:29 PM Miguel Ángel Sánchez  
> > > wrote:
> > > > Hola, prueba a ejecutar el siguiente comando
> > > > 
> > > > xcfe4-terminal -e "bash -c 'apt update && apt upgrade; bash' "
> > > > 
> > > > De esta forma al lanzar el emulador de terminal bash ejecuta primero 
> > > > los comandos de apt y luego lanza una línea de comandos de bash.
> > > > 
> > > > Lo he probado con gnome-terminal que es lo que tengo y funciona. Ten en 
> > > > cuenta que si lo ejecutas como root también tendrás bash como root.
> > > Para root, usa sudo
> > > xfce4-terminal  -e "sudo bash -c 'apt-get update; sudo bash'"
> > En este caso, el sistema no tiene sudo. Nunca lo instalo :-)
> > 
> > sm01@stt008:~$ which sudo
> > sm01@stt008:~$
> > 
> > Si se os ocurre alguna otra cosa, soy toda orejas.
> > 
> Has pensado en ssh?
> 
> ssh root@127.0.0.1 .

Buena idea, porque tengo ssh y configurado ex profeso para actualizar 
Firefox (solo root lo puede actualizar).

sm01@stt008:~$ xfce4-terminal -x ssh root@localhost "apt-get update && apt-get 
upgrade"
sm01@stt008:~$ 

Ejecuta todo bien, pero al finalizar cierra la terminal.

Si tiro de bash, ejecuta todo bien pero al finalizar no me retorna a la 
shell, el cursor queda en blanco:

sm01@stt008:~$ xfce4-terminal -x ssh root@localhost 'bash -c "apt-get update && 
apt-get upgrade"; exec bash'

¿Qué me faltaría?

Saludos,

-- 
Camaleón 



Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-04 Por tema Esteban Torres



El 4/5/20 a las 8:14, Camaleón escribió:

El 2020-05-03 a las 23:21 +0200, Javier Barroso escribió:


Buenas, respondo debajo

Hola Javier,
  

On Sun, May 3, 2020 at 10:29 PM Miguel Ángel Sánchez  wrote:

Hola, prueba a ejecutar el siguiente comando

xcfe4-terminal -e "bash -c 'apt update && apt upgrade; bash' "

De esta forma al lanzar el emulador de terminal bash ejecuta primero los 
comandos de apt y luego lanza una línea de comandos de bash.

Lo he probado con gnome-terminal que es lo que tengo y funciona. Ten en cuenta 
que si lo ejecutas como root también tendrás bash como root.

Para root, usa sudo
xfce4-terminal  -e "sudo bash -c 'apt-get update; sudo bash'"

En este caso, el sistema no tiene sudo. Nunca lo instalo :-)

sm01@stt008:~$ which sudo
sm01@stt008:~$

Si se os ocurre alguna otra cosa, soy toda orejas.

Saludos,


Has pensado en ssh?

ssh root@127.0.0.1 .



Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-04 Por tema Camaleón
El 2020-05-03 a las 23:21 +0200, Javier Barroso escribió:

> Buenas, respondo debajo

Hola Javier,
 
> On Sun, May 3, 2020 at 10:29 PM Miguel Ángel Sánchez  
> wrote:
> >
> > Hola, prueba a ejecutar el siguiente comando
> >
> > xcfe4-terminal -e "bash -c 'apt update && apt upgrade; bash' "
> >
> > De esta forma al lanzar el emulador de terminal bash ejecuta primero los 
> > comandos de apt y luego lanza una línea de comandos de bash.
> >
> > Lo he probado con gnome-terminal que es lo que tengo y funciona. Ten en 
> > cuenta que si lo ejecutas como root también tendrás bash como root.
> 
> Para root, usa sudo
> xfce4-terminal  -e "sudo bash -c 'apt-get update; sudo bash'"

En este caso, el sistema no tiene sudo. Nunca lo instalo :-)

sm01@stt008:~$ which sudo
sm01@stt008:~$

Si se os ocurre alguna otra cosa, soy toda orejas.

Saludos,

-- 
Camaleón 



Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-04 Por tema Camaleón
El 2020-05-03 a las 22:28 +0200, Miguel Ángel Sánchez escribió:

Hola Miguel Ángel,

(corrijo el top-posting)

> El dom., 3 may. 2020 22:17, Camaleón  escribió:

(...)

> > 1. Si ejecuto:
> >
> > xfce4-terminal -x su - - bash -c "apt-get update && apt-get upgrade; bash"
> >
> > Al finalizar las órdenes me retorna:
> >
> > bash: no se puede establecer el grupo de proceso de terminal (18823):
> > Función ioctl no apropiada para el dispositivo
> > bash: no hay control de trabajos en este shell
> >
> > 2. Si ejecuto:
> >
> > xfce4-terminal -H -x su - -c "apt-get update && apt-get upgrade"
> >
> > Al finalizar las órdenes no me permite introducir más instrucciones,
> > sólo puedo cerrar la termina.
> >
> > ¿Cómo podría ejecutar las órdenes y mantener el intérprete?

> Hola, prueba a ejecutar el siguiente comando
> 
> xcfe4-terminal -e "bash -c 'apt update && apt upgrade; bash' "
> 
> De esta forma al lanzar el emulador de terminal bash ejecuta primero los
> comandos de apt y luego lanza una línea de comandos de bash.
> 
> Lo he probado con gnome-terminal que es lo que tengo y funciona. Ten en
> cuenta que si lo ejecutas como root también tendrás bash como root.

La idea es que antes de ejecutar las órdenes me pida las credenciales 
de root porque la instrucción «apt-get upgrade» lo necesita.

Si ejecuto lo que me indicas (lo he probado invocando a xfce4-terminal 
y también con xterm), la segunda instrucción falla:

sm01@stt008:~$ xfce4-terminal -e "bash -c 'apt update && apt upgrade; bash' "
Leyendo lista de paquetes... Hecho
W: chmod 0700 of directory /var/lib/apt/lists/partial failed - 
SetupAPTPartialDirectory (1: Operación no permitida)
E: No se pudo abrir el fichero de bloqueo «/var/lib/apt/lists/lock» - open (13: 
Permiso denegado)
E: No se pudo bloquear el directorio /var/lib/apt/lists/
W: Se produjo un problema al desligar el fichero /var/cache/apt/pkgcache.bin - 
RemoveCaches (13: Permiso denegado)
W: Se produjo un problema al desligar el fichero /var/cache/apt/srcpkgcache.bin 
- RemoveCaches (13: Permiso denegado)
sm01@stt008:~$

Saludos,

-- 
Camaleón 



Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-03 Por tema Javier Barroso
Buenas, respondo debajo

On Sun, May 3, 2020 at 10:29 PM Miguel Ángel Sánchez  wrote:
>
> Hola, prueba a ejecutar el siguiente comando
>
> xcfe4-terminal -e "bash -c 'apt update && apt upgrade; bash' "
>
> De esta forma al lanzar el emulador de terminal bash ejecuta primero los 
> comandos de apt y luego lanza una línea de comandos de bash.
>
> Lo he probado con gnome-terminal que es lo que tengo y funciona. Ten en 
> cuenta que si lo ejecutas como root también tendrás bash como root.

Para root, usa sudo
xfce4-terminal  -e "sudo bash -c 'apt-get update; sudo bash'"

Saludos!

EMAIL ORIGINAL:
>
> El dom., 3 may. 2020 22:17, Camaleón  escribió:
>>
>> Hola,
>>
>> Estoy buscando la forma abrir una terminal, ejecutar una orden como root
>> y mantener el intérprete de comandos.
>>
>> 1. Si ejecuto:
>>
>> xfce4-terminal -x su - - bash -c "apt-get update && apt-get upgrade; bash"
>>
>> Al finalizar las órdenes me retorna:
>>
>> bash: no se puede establecer el grupo de proceso de terminal (18823):
>> Función ioctl no apropiada para el dispositivo
>> bash: no hay control de trabajos en este shell
>>
>> 2. Si ejecuto:
>>
>> xfce4-terminal -H -x su - -c "apt-get update && apt-get upgrade"
>>
>> Al finalizar las órdenes no me permite introducir más instrucciones,
>> sólo puedo cerrar la termina.
>>
>> ¿Cómo podría ejecutar las órdenes y mantener el intérprete?
>>
>> Saludos,
>>
>> --
>> Camaleón
>>



Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-03 Por tema Miguel Ángel Sánchez
Hola, prueba a ejecutar el siguiente comando

xcfe4-terminal -e "bash -c 'apt update && apt upgrade; bash' "

De esta forma al lanzar el emulador de terminal bash ejecuta primero los
comandos de apt y luego lanza una línea de comandos de bash.

Lo he probado con gnome-terminal que es lo que tengo y funciona. Ten en
cuenta que si lo ejecutas como root también tendrás bash como root.

PD: disculpas si llega el mensaje duplicado, no me aclaro bien con mi
cliente de correo.


Re: Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-03 Por tema Miguel Ángel Sánchez
Hola, prueba a ejecutar el siguiente comando

xcfe4-terminal -e "bash -c 'apt update && apt upgrade; bash' "

De esta forma al lanzar el emulador de terminal bash ejecuta primero los
comandos de apt y luego lanza una línea de comandos de bash.

Lo he probado con gnome-terminal que es lo que tengo y funciona. Ten en
cuenta que si lo ejecutas como root también tendrás bash como root.

El dom., 3 may. 2020 22:17, Camaleón  escribió:

> Hola,
>
> Estoy buscando la forma abrir una terminal, ejecutar una orden como root
> y mantener el intérprete de comandos.
>
> 1. Si ejecuto:
>
> xfce4-terminal -x su - - bash -c "apt-get update && apt-get upgrade; bash"
>
> Al finalizar las órdenes me retorna:
>
> bash: no se puede establecer el grupo de proceso de terminal (18823):
> Función ioctl no apropiada para el dispositivo
> bash: no hay control de trabajos en este shell
>
> 2. Si ejecuto:
>
> xfce4-terminal -H -x su - -c "apt-get update && apt-get upgrade"
>
> Al finalizar las órdenes no me permite introducir más instrucciones,
> sólo puedo cerrar la termina.
>
> ¿Cómo podría ejecutar las órdenes y mantener el intérprete?
>
> Saludos,
>
> --
> Camaleón
>
>


Ejecutar instrucción como súperusuario y mantener el intéprete de órdenes

2020-05-03 Por tema Camaleón
Hola,

Estoy buscando la forma abrir una terminal, ejecutar una orden como root 
y mantener el intérprete de comandos. 

1. Si ejecuto:

xfce4-terminal -x su - - bash -c "apt-get update && apt-get upgrade; bash"

Al finalizar las órdenes me retorna:

bash: no se puede establecer el grupo de proceso de terminal (18823): 
Función ioctl no apropiada para el dispositivo
bash: no hay control de trabajos en este shell

2. Si ejecuto:

xfce4-terminal -H -x su - -c "apt-get update && apt-get upgrade"

Al finalizar las órdenes no me permite introducir más instrucciones, 
sólo puedo cerrar la termina.

¿Cómo podría ejecutar las órdenes y mantener el intérprete?

Saludos,

-- 
Camaleón