Cómo depurar las variables del despachador de Networkmanager

Cómo depurar las variables del despachador de Networkmanager

Quiero depurar un script que contiene variables de Networkmanager-dispacher como DEVICE_IFACE, IP4_GATEWAY. ElManual del administrador de reddescribe estas variables pero no menciona cómo depurarlas.

Busqué mucho pero no puedo encontrar cómo obtener el valor de estas variables. Cuando hago eco en la línea de comando como echo ${DEVICE_IFACE} no obtengo ningún valor.

Respuesta1

En la NetworkManagerpágina del manual a la que te refieres, se indica:

El entorno contiene más información sobre la interfaz y la conexión. Las siguientes variables están disponibles para su uso en los scripts del despachador:
[...]
DEVICE_IFACE

Entonces, este entorno obviamente lo configura Dispatcher.d y solo es accesible para los scripts iniciados desde allí.

Por ejemplo, podrías poner esta línea en un archivo en /etc/NetworkManager/dispatcher.d:

echo "interface $DEVICE_IFACE" > /tmp/myscript.log

Aún consultando la página del manual de NetworkManager, deberá hacer que sea propiedad del root, ejecutable y que no pueda ser escrito por el grupo u otros, por ejemplo:

# chown root:root /etc/NetworkManager/dispatcher.d/myscript

# chmod a+x /etc/NetworkManager/dispatcher.d/myscript

# chmod go-w /etc/NetworkManager/dispatcher.d/myscript

Luego, al reiniciar NetworkManager, debería leer algo como "interfaz wlan0" en /tmp/myscript.log.

Respuesta2

Systemd registra la salida de los scripts del despachador; puedes verlo con sudo journalctl -u NetworkManager-dispatcher. Así que simplemente haga eco de las variables y luego mire el registro.

Una respuesta similar a una pregunta similar se puede encontrar enhttps://serverfault.com/a/1056299/310447

información relacionada