¿Cómo forzar a NetworkManager a hacer una conexión antes de iniciar sesión?

8

Dejo mi computadora portátil en casa el 95% del tiempo. Me gustaría conectarme a mi red inalámbrica sin tener que iniciar sesión. Y, igual de importante, me gustaría que NO se desconecte cuando cierre la sesión.

Estoy usando Fedora, pero las instrucciones de Ubuntu también son bienvenidas.

JCCyC
fuente

Respuestas:

5

Supongo que esta pregunta se hizo hace un tiempo, pero esta característica se ha agregado a versiones recientes de Network Manager. Ver aquí .

Ryan C. Thompson
fuente
A partir de mayo de 2011, ese enlace dice: En la versión 0.7.1 o posterior, edite el perfil de la conexión con la que desea comenzar antes de iniciar sesión y seleccione el cuadro en la parte inferior izquierda "Disponible para todos los usuarios"
Joe
Además, no me funciona en un odroid que ejecuta la imagen Ubuntu 14.04 proporcionada.
Andrew Wagner
Esta respuesta (y la documentación vinculada) es obsoleta, al menos a partir de Ubuntu 14.04. La información obsoleta en las preguntas frecuentes, por supuesto, no se ha eliminado.
Andrew Wagner
3

El problema con esta idea es que el servicio NetworkManager toma sus comandos de nm-applet (o el análogo de KDE, si está en KDE. Para evitar confundirme, supongo que está en GNOME). Hay una interfaz de NetworkManager de línea de comandos en los repositorios llamada cNetworkManager (que, curiosamente, está escrito en Python). Puede intentar pegar un comando para conectarse a su red usando cNetworkManager en un script de inicio (no estoy completamente seguro de dónde tendría que colocar este script, pero sé que es posible: D). No sé si este enfoque se conectará o no o si permanecerá conectado después de que cierre la sesión, pero SÉ que hay al menos 2 problemas que tendrá que conciliar.

1) Tendrá este script luchando con nm-applet. Si desea hacer esto, deshabilitaría que nm-applet se inicie automáticamente (que debería ser configurable en preferencias -> sesiones o preferencias -> programas de inicio, dependiendo de si está utilizando o no fedora 11).

2) si alguna vez desea cambiar las redes (y hacer cosas sofisticadas como detectarlas automáticamente), deberá hacerlo utilizando cNetworkManager (que es un verdadero problema) o iniciar nm-applet y perder la capacidad de mantener la conexión se abre después de cerrar sesión.

¡Mucha suerte, y háganos saber si esto funciona!

Babu
fuente
Estoy en una máquina Windows en el trabajo; Lo probaré cuando llegue a casa. Sería bueno si NetworkManager y nm-applet residieran en paquetes diferentes.
JCCyC el
Creo que tenerlos en el mismo paquete es realmente esencial; ¿Cuál es el punto de darnos un servicio si no nos da un método para controlarlo? Yo discutiría en la dirección opuesta; cNetworkManager también debería estar en el paquete NetworkManager, para cuando necesite controlar su tarjeta inalámbrica cuando X no se ejecute (esto me ha sucedido un número enorme de veces)
Babu
No estoy seguro de si este cNetworkManager existe a partir de 2015. Existe una herramienta "nmcli" que, creo, está instalada de forma predeterminada y le permite trabajar con el administrador de red desde el cli.
Andrew Wagner
2

Tuve el mismo problema y terminé eliminando completamente NetworkManager y usando wpa_supplicant directamente en su lugar. Funciona de la manera opuesta: tiene un archivo de configuración con todas las redes a las que desea conectarse automáticamente y una GUI que puede anularlo durante el tiempo de ejecución (y conectarse a una red diferente) o cambiar el archivo de configuración .

Usé este tutorial para configurar mi Debian, y no tuve muchos problemas con él (es lo mismo que Ubuntu): http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/branches/unstable/ debian / README.Debian? op = file & rev = 0 & sc = 0

Grzenio
fuente
1

He utilizado el método de Andrew Wagner en Fedora 22 para una conexión con la seguridad WPA.

  1. Cree la conexión "demo" que usamos habitualmente utilizando la GUI.

  2. Como root, cree un archivo / etc / NetworkManager / wifipw con la entrada de una línea:

    802-11-wireless-security.psk:wpa-pw 
    

donde wpa-pwesta la contraseña wifi

  1. Agregue la siguiente línea a la crontabraíz for:

    @reboot sleep 10; /usr/bin/nmcli conn up id demo passwd-file etc/NetworkManager/wifipw
    

La suspensión 10 fue necesaria en mi sistema para darle tiempo al dispositivo para que se inicialice antes de intentar conectarse.

John w
fuente
0

Puede ser que no sea una opción para usted, pero podría configurar la red a través de archivos de configuración como en el tutorial . Es para Ubuntu, pero no noté la diferencia. La red se encenderá durante el proceso de arranque del sistema operativo.

Kirill V. Lyadvinsky
fuente
Esta es una buena solución, pero también hay advertencias con esto. El NetworkManager y los servicios de red no deben ejecutarse al mismo tiempo; Ambos intentarán controlar el hardware inalámbrico al mismo tiempo y harán cosas raras. Lo que podría hacer es habilitar el servicio de red de manera predeterminada y solo habilitar el administrador de red cuando sea necesario.
Babu el
Es verdad.
Kirill V. Lyadvinsky
0

Esto es lo que hice (en una placa de brazo odroid con Ubuntu 14.04):

Configure la conexión de red utilizando, es decir, nm-applet, como su usuario normal, asígnele un nombre, es decir, "Decktop Demo". Probablemente deba marcar la casilla General -> "Todos los usuarios pueden conectarse a esta red".

Edite "el cron" como superusuario:

sudo crontab -e

seleccione el editor de su elección si se le solicita y agregue una línea en la parte inferior:

@startup / usr / bin / nmcli conn up id "Desktop Demo"

sacrifica un animal pequeño a los dioses de la gestión de redes y reinicia.

Este método tiene la ventaja de hacer todo a través del administrador de red, por lo que debería funcionar bien con los applets de administración de red gui para varios escritorios, es decir, nm-applet.

Andrew Wagner
fuente