Ejecute dos servidores simultáneamente desde el script bash

Ejecute dos servidores simultáneamente desde el script bash

Tengo dos servidores que necesito ejecutar con estos comandos:

cd /home/hadoop/apache-hive-3.1.1-bin/ 
sudo hiveserver2 

y

sudo /opt/hue/build/env/bin/hue runserver 

Así que puse ambos comandos en unscript.sh(junto con otras cosas):

$HADOOP_HOME/sbin/start-dfs.sh
$HADOOP_HOME/sbin/start-yarn.sh
cd /home/hadoop/apache-hive-3.1.1-bin/ 
hiveserver2 & 
sudo /opt/hue/build/env/bin/hue runserver &

Entonces, cuando lo ejecuto, bash script.shsolo funcionan las cuatro primeras líneas. El servidor hue nunca se activa.

Porqué es eso ? ¿Es porque la terminal permanece reservada para el servidor colmena? ¿Cómo puedo evitar eso por favor? Gracias


EDITAR 1:

Entonces, edité como sugirió mi guión:

$HADOOP_HOME/sbin/start-dfs.sh
$HADOOP_HOME/sbin/start-yarn.sh
sudo gnome-terminal -- bash -c "cd /home/hadoop/apache-hive-3.1.1-bin; hiveserver2 &" 
sudo /opt/hue/build/env/bin/hue runserver &

y ejecuté usando bash script.sh. Ahora huserver se está ejecutando pero no hiveserver. Hay un segundo terminal abierto pero sin nada dentro (pantalla negra total).

Respuesta1

esto es lo que puedes hacer en su lugar:

gnome-terminal -- bash -c "$HADOOP_HOME/sbin/start-dfs.sh; $HADOOP_HOME/sbin/start-yarn.sh; cd /home/hadoop/apache-hive-3.1.1-bin; hiveserver2" &&
sudo /opt/hue/build/env/bin/hue runserver &

información relacionada