Acabo de instalar Ubuntu 14.04 beta2
y de 25 intentos, ya sea cerrar sesión, apagar o reiniciar, mi sesión no se cerró Firefox
correctamente 23 veces al salir. El resultado es la página de recuperación de pestañas de Firefox que nunca sucede si me tomo el tiempo para cerrar Firefox manualmente de antemano.
Como funcionó 2/25 veces, parece un problema de tiempo en el que Ubuntu no permite que finalice el tiempo de proceso de Firefox (Ubuntu cierra la sesión en aproximadamente 1-2 segundos). ¿Nunca he recibido el mensaje "esperar a Firefox? / ¿Cerrar de todos modos?" cuadro de diálogo que observé en 12.04.
Entonces, si estoy en lo correcto, ¿cómo hago para que espere? Si no, ¿cuál es el problema y cómo resuelvo la salida incorrecta?
No tengo experiencia en la administración de archivos de configuración de perfil o sesión y muy poco con bash (lo entiendo pero soy pésimo para codificarlo). Entonces, si no puede responder pero tiene un buen artículo sobre cómo funcionan los perfiles / sesiones en Unix / Linux / Debian / Ubuntu (si es el mismo) y / o cómo hacer cambios en los eventos de inicio / cierre de sesión, Sé feliz con eso.
Editar: hice pruebas adicionales que indican que es cuestión de tiempo
wmctrl -c firefox; sleep 0.5; sudo shutdown now -r
funciona bien 100%wmctrl -c firefox; sleep 0.2; sudo shutdown now -r
funciona bien 50%wmctrl -c firefox; sudo shutdown now -r
funciona bien 10%sudo shutdown now -r& wmctrl -c firefox
nunca parece funcionar ...
Entonces, como solución alternativa, ¿cómo puedo escribir wmctrl -c firefox; sleep 0.5
en un archivo que se parece .profile
o bash_logout
no al cierre de sesión?
Respuestas:
Aparentemente no hay un archivo dedicado para escribir como solía haber. Fue
/etc/gdm/PostSession
bajo Gnome, pero no está disponible ya que aparentemente Unity. Y colocar un script debajo/etc/rc0.d/
y/etc/rc6.d/
no funcionará, ya que solo se ejecutan después de que Xserver se apaga.Sin embargo, hay un evento llamado
gnome-save-yourself
despedido cuando se le ha pedido a gnome que cierre la sesión. Yo es lo que,gedit
por ejemplo, llamará implícitamente. Y Seamus Phelan hizo un script de python para escuchar el evento y ejecutar su script cuando lo detectan.Aquí está el enlace a la solución: Ejecución de scripts al cerrar la sesión del usuario (usuario no root)
Siga las instrucciones y luego todo lo que tiene que hacer es colocar su script que se vea así:
donde la opción cierra
-c
suavemente Firefox como lo hace-cmd "Quit"
para gMusicBroswer. Tanto Firefox como gMusicBrowser deben cerrarse correctamente, lo que no es así.Una forma probablemente mejor sería comprobar el uso de
SIGTERM
,SIGKILL
ykill timeout
en Ubuntu y los programas, pero no sé lo suficiente sobre él.fuente