로그 아웃 할 때 Firefox가 제대로 닫히지 않습니다


10

방금 Ubuntu 14.04 beta2로그 아웃, 종료 또는 재시작을 25 회 시도하고 시도했지만 종료시 세션이 Firefox23 번 닫히지 않았습니다 . 결과적으로 Firefox 탭 복구 페이지는 Firefox를 미리 수동으로 닫는 데 시간이 걸리더라도 발생하지 않습니다.

2/25 번 작동했기 때문에 우분투가 Firefox의 프로세스 시간을 끝내지 못하는 시간 문제처럼 느껴집니다 (우분투는 1-2 초 정도 로그 아웃합니다). 나는 "Firefox를 기다린다? 12.04에서 관찰 된 대화 상자.

내가 맞다면 기다릴 수 있도록 어떻게해야합니까? 문제가 아닌 경우 부적절한 종료를 어떻게 해결합니까?

프로파일 또는 세션 구성 파일 관리에 대한 경험이 없으며 bash에 대해서는 거의 알지 못합니다. 따라서 대답 할 수는 없지만 유닉스 / 리눅스 / 데비안 / 우분투에서 프로파일 / 세션이 어떻게 작동하고 로그인 / 로그 아웃 이벤트를 변경하는 방법에 대한 좋은 기사가 있다면 그것에 만족하십시오.

편집 : 시간 문제를 더 나타내는 추가 테스트를 수행했습니다.

  • wmctrl -c firefox; sleep 0.5; sudo shutdown now -r 100 % 잘 작동합니다
  • wmctrl -c firefox; sleep 0.2; sudo shutdown now -r 잘 작동합니다 50 %
  • wmctrl -c firefox; sudo shutdown now -r 10 % 잘 작동
  • sudo shutdown now -r& wmctrl -c firefox 결코 작동하지 않는 것 같습니다 ...

그래서 해결 방법으로, 어떻게 쓸 수있는 wmctrl -c firefox; sleep 0.5파일에 그 유사 .profile또는 bash_logout하지만 세션 로그 아웃을 검색 하시나요?


커널은 참을성이있는 사람이 아닙니다. 파이어 폭스 프로세스가 처음으로 (정상적으로) 신호를받은 후 종료하는 데 너무 오래 걸렸을 수도 있습니다. 그는 또 다른 (더 급진적 인) 신호를 받았으며, 대략적으로 살해당했습니다 . 이것은 주로 시스템 구성이 아닌 개발자의 작업에 달려 있습니다.
John WH Smith

@JohnWHSmith 그러나 로그 아웃하는 데 최대 2 초가 걸립니다. 방금 다시 시도했는데 순간 (0.1 초)이었습니다. 당황스러운 파이어 폭스로 다시 로그인했습니다. 또한 버그이기 때문에 우분투 나 커널에보고합니까, 아니면 내가 할 수없는 일은 무엇입니까?
sinekonata

1
버그 리포트는 Firefox와 관련이 있다고 생각합니다. Firefox 28은 예전처럼 동작하지 않는 것 같습니다. 모든 창을 닫은 후에도 실행 상태를 유지하고 여러 CPU 코어를 스핀 록합니다.
dobey

@dobey 당신이 말하는 것이 사실이라면 그것은 매우 빠르다. 나는 Firefox (x) 버튼을 누른 후 즉시 (0.1s) 종료하는 것을 테스트했으며 거기에 버그가 없다. 우분투가하는 일은 kill process 명령과 가깝습니다. 나는 모든 것이 신선하고 12.04에서 발생하지 않았다는 애드온이 설치되어 있지 않다고 말하고 싶습니다. 내가 원하는 것은 "갑자기 닫기"대신 "올바로 닫기 조치"를 호출하는 방법입니다.
sinekonata

창이 사라 졌다고해서 Firefox가 실제로 종료 된 것은 아닙니다. 또는 반드시 깨끗하게 종료되었다는 의미는 아닙니다. 우리가 아는 한, Firefox는 종료 할 때 충돌 할 수 있으며, 로그 아웃 / 인 프로세스와 전혀 관련이 없습니다. 12.04에서 동일한 Firefox 28 빌드를 사용하고 있습니까?
dobey

답변:


1

분명히 이전처럼 쓸 전용 파일이 없습니다. 그것은 /etc/gdm/PostSession그놈 의 밑에 있었지만 분명히 Unity 이후로는 사용할 수 없습니다. 그리고 아래에 스크립트를 배치 /etc/rc0.d/하고 /etc/rc6.d/X 서버가 종료 된 후 그들 만 실행되기 때문에 작동하지 않습니다.

그러나 gnome-save-yourself그놈이 로그 아웃하도록 요구했을 때 발생 하는 이벤트 가 있습니다. 나는 gedit예를 들어 내재적으로 전화 할 것입니다. 그리고 Seamus Phelan은 파이썬 스크립트를 만들어 이벤트를 수신하고 잡히면 스크립트를 실행했습니다.

솔루션에 대한 링크는 다음과 같습니다. 사용자 로그 아웃시 스크립트 실행 (비 루트 사용자)

지시 사항을 따르면 다음과 같이 스크립트를 배치하기 만하면됩니다.

#! /bin/sh
#Requires wmctrl
wmctrl -c firefox;
gmusicbrowser -cmd "Quit";
exit 0;

이 옵션 은 gMusicBroswer 와 마찬가지로 Firefox를 -c 부드럽게 닫습니다 -cmd "Quit". Firefox와 gMusicBrowser는 제대로 닫히지 않으면 안됩니다.

아마 더 좋은 방법의 사용을 확인하는 것 SIGTERM, SIGKILL그리고 kill timeout우분투와 프로그램하지만 난 그것에 대해 충분히 알지 못한다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.