"Firefox가 이미 실행 중입니다." 오류로 인해 OpenSUSE에서 xdg-open 또는 kde-open5를 사용하여 Firefox의 여러 인스턴스를 열 수 없습니다.

"Firefox가 이미 실행 중입니다." 오류로 인해 OpenSUSE에서 xdg-open 또는 kde-open5를 사용하여 Firefox의 여러 인스턴스를 열 수 없습니다.

명령줄에서 시도할 때

$ kde-open5 http://unix.stackexchange.com/
$ xdg-open  http://unix.stackexchange.com/

...몇 초 후에 X11에 Firefox가 사용 중이거나 응답하지 않는다는 대화 상자가 표시됩니다.

또한 Thunderbird에서 링크를 클릭하면 동일한 오류가 발생합니다. 이 경우 탭의 Firefox에서 수동으로 생성된 새 링크에 대한 링크를 수동으로 복사/붙여넣기해야 하기 때문에 작업 흐름에 심각한 해를 끼칩니다.

이 문제를 조사하는 동안 여러 인스턴스가 동일한 프로필을 열지 못하도록 Firefox가 잠금 파일을 유지한다는 유사한 문제를 발견했습니다. 말이 되지만, 내 경험에 따르면 이전에 여러 Linux 설치에서 항상 작동했고 /opt 아래에 Firefox를 수동으로 설치할 때도 작동했기 때문에 "작동해야 합니다"라고 말했습니다.

그렇다면... Firefox가 왜 불평을 하는 걸까요? 다른 배포판을 사용할 때 Firefox가 작동하는 것을 방지하는 OpenSUSE의 차이점은 무엇입니까? OpenSUSE는 Firefox를 zypper수동으로 설치하는 것과 어떻게 다르게 Firefox를 설치합니까(단순히 .tar.gz 파일을 확장하여)?

답변1

저는 이 문제를 회피했고 이제 Firefox는 다른 배포판 및 수동으로 설치된 Firefox와 비교하여 예상대로 작동합니다. 근본 원인에 대한 완전한 설명은 없지만 적어도 해결책은 있습니다.

Firefox 구성 연구

내 경우에는 다음 파일을 찾았습니다.

$HOME/.mozilla/firefox/installs.ini:

[11457493C5A56847]
Default=jpxqfd4t.default-release-1609370879824
Locked=1

[F4BAF53E74A51272]
Default=jpxqfd4t.default-release-1609370879824
Locked=1

$HOME/.mozilla/firefox/profiles.ini:

[Profile0]
Name=default
IsRelative=1
Path=jpxqfd4t.default-release-1609370879824

[General]
StartWithLastProfile=1
Version=2

[Install11457493C5A56847]
Default=jpxqfd4t.default-release-1609370879824
Locked=1

[InstallF4BAF53E74A51272]
Default=jpxqfd4t.default-release-1609370879824
Locked=1

문제를 피하거나 해결하는 방법

Locked=1위의 내용이 의심스럽 습니다 . 나는 추측과 용기 외에는 어떤 근거도 없이 이 대사를 로 바꾸기로 결정했습니다 Locked=0.

$ cp $HOME/.mozilla/firefox/installs.ini $HOME/.mozilla/firefox/installs.ini.OLD
$ cp $HOME/.mozilla/firefox/profiles.ini $HOME/.mozilla/firefox/profiles.ini.OLD

$ sed 's/Locked=1/Locked=0/' $HOME/.mozilla/firefox/installs.ini.OLD > $HOME/.mozilla/firefox/installs.ini.OLD
$ sed 's/Locked=1/Locked=0/' $HOME/.mozilla/firefox/profiles.ini.OLD > $HOME/.mozilla/firefox/profiles.ini.OLD

$ killall firefox

문제가 해결되었습니다.

답변2

Firefox를 시작하는 데 사용되는 전체 명령줄을 살펴보면 배포판의 기본 설치에 이를 추가하여 --no-remoteFirefox 외부의 명령이 원격으로 URL을 열도록 지시하는 것을 허용하지 않을 수 있습니다. 즉, --no-remoteFirefox가 모든 외부 프로세스를 알려준다는 의미입니다."여기요! 나한테 말을 걸려고 하지 마세요!" 안타깝게도, Firefox는 "***Firefox가 이미 실행 중이지만 응답하지 않습니다. 새 창을 열려면 먼저 기존 Firefox 프로세스를 닫거나 시스템을 다시 시작해야 합니다.***" 오류 메시지를 표시합니다. 실제로 문제를 일으킨 것은 특정 Firefox 프로필의 출시였습니다.

firefox --new-instance --create-profile NewProfileName
firefox --new-instance -P NewProfileName

따라서 --no-remote"기본 릴리스" Firefox 프로필을 시작하는 데 사용해서는 안 됩니다. 그러나 --no-remoteLAN 내의 네트워크 장치 및 IoT 장치는 전용 Firefox 프로필("방화벽"이라고 함)을 사용하여 보다 안전하게 관리할 수 있습니다. 이런 식으로 운영 체제가 다음과 같이 시작됩니다.http://WeHijackIOT.com/LAN에서는 방화벽 프로필만 열리지 않습니다.

firefox --no-remote --create-profile FireWall
firefox --no-remote -P FireWall

관련 정보