¿Cuál es la diferencia entre exec y dbus-launch?
On febrero 9, 2021 by admin Si comienzo un proceso, particularmente al inicio de la sesión, ¿cuál es la diferencia entre usar exec p
y dbus-launch p
?
Responder
dbus-launch
está relacionado con DBus . exec
es un shell integrado. Vea sus páginas de manual / páginas de ayuda:
dbus-launch - Utility to start a message bus from a shell script. exec - Replace the shell with the given command.
Entonces … básicamente hacen dos cosas diferentes … Aunque se espera que ambos inicien el programa p
pasado como parámetro, puede leer que en el caso de dbus-launch
, primero se hacen algunas otras cosas:
Puede especificar un programa para ejecutar; en este caso, dbus-launch lanzará una instancia de bus de sesión, establecerá las variables de entorno adecuadas para que el programa especificado pueda encontrar el bus y luego ejecutará el programa especificado, con los argumentos especificados.
En este caso, se crea una instancia del demonio DBus antes de crear el proceso, y debe estar ejecutando un bus de sesión secundario, que está disponible para el proceso hijo a través de variables de entorno.
También tenga en cuenta que en el caso de exec
, el shell actual se reemplaza por un nuevo programa. dbus-launch
no reemplazará el shell, ni tampoco el programa que inicie junto con el demonio.
Deja una respuesta