Próbuję otworzyć przeglądarkę Firefox w CentOS, ale otrzymuję następujący komunikat:
Firefox już działa, ale nie odpowiada
i Firefox się nie otwiera. Próbowałem tego w wierszu poleceń:
kill Firefox
, ale to nie zadziałało. Poza tym nie wiem, w którym katalogu muszę wykonać odpowiednie polecenia.
Jak mogę to naprawić?
Komentarze
Odpowiedź
Od http://kb.mozillazine.org/Profile_in_use – sprawdź dla:
1) Plik o nazwie .parentlock
-AND-
2) Dowiązanie symboliczne o nazwie lock
… in ~ / .mozilla / firefox / losowy ciąg znaków alfanumerycznych .default /
Pierwsza jest obecna, gdy Firefox jest uruchomiony, aby zapobiec więcej niż jedna inna instancja, próbując jednocześnie pisać do tego samego s et plików profilów, a jeśli Firefox nie zostanie prawidłowo zamknięty, żadne z nich nie może zostać usunięte.
Komunikat o błędzie otrzymany w tym przypadku powinien wyglądać następująco:
Z dowolnego miejsca w systemie plików (lub usunięcie tego if pwd
zgłasza ~/.mozilla/firefox/random string of alphanumeric characters.default
), zastępując losowy ciąg znaków alfanumerycznych folderem profilu FF na komputerze, wykonaj rm ~/.mozilla/firefox/random string of alphanumeric characters.default/.parentlock ~/.mozilla/firefox/random string of alphanumeric characters.default/lock`
(zakładając, że pierwsze zdanie jest wyświetlane), aby je usunąć, jeśli nie ma uruchomionego procesu„ ta Firefox .
Więcej mniej wiarygodnych informacji tutaj .
Komentarze
- To rozwiązanie jest nadal aktualne po prawie 4 latach (właśnie przetestowane z Firefoksem 53 na Ubuntu 17.04). Dzięki!
- Powinna być odpowiedzią. Miałem problem, gdy inny użytkownik logował się do przeglądarki Firefox, więc nie mogłem zabić PID. Musiałem usunąć te pliki.
- Ślepa jedna linijka:
rm ~/.mozilla/firefox/*.default/{.parentlock,lock}
- dla mnie katalog nazywał się
*-default
zamiast*.default
Odpowiedź
-
Najpierw znajdź identyfikator procesu Firefoksa za pomocą następującego polecenia w dowolnym katalogu:
pidof firefox
-
Zakończ proces firefoxa za pomocą następującego polecenia w dowolnym katalogu:
kill [firefox pid]
Następnie ponownie uruchom przeglądarkę Firefox.
Lub możesz zrobić to samo za pomocą jednego polecenia.Jak powiedział don_crissti:
kill $(pidof firefox)
Komentarze
- @don_crissti znacznie lepiej!
- Albo jeszcze lepiej jest
pkill firefox
. - Jeśli nie ' nie działa, spróbuj
kill -9 $(pidof firefox)
lubpkill -9 firefox
- Z doświadczenia,
-9
jest prawie zawsze zalecane. - UWAGA: Powyższe nie pozwoli Firefoksowi na wykonywanie operacji zamykania (podobnie jak inne opcje pkill / kill omówione w innym miejscu w tym pytaniu, tak jak obecnie are) i doprowadzi (między innymi) do tego, że link symboliczny
lock
nie zostanie usunięty, co spowoduje, że wiadomość w tym pytaniu pozostanie. Zobacz moja odpowiedź , aby uzyskać więcej informacji.
Odpowiedź
Zwykle wielu użytkowników twierdzi, że to polecenie pomaga:
killall -SIGTERM firefox
Polecenie killall zabije wszystkie procesy o nazwie „firefox”. SIGTERM to typ sygnału zabijania. To polecenie działa dobrze dla mnie i innych użytkowników Linuksa. Pomocne może też być odczekanie trzydziestu sekund po zamknięciu Firefoksa, zanim zostanie on ponownie włączony.
Komentarze
- Niezupełnie. killall pasuje do wzorca dokładnie . To, co powiedziałeś, jest poprawne dla pkill: zabija wszystkie procesy zawierające ten wzorzec (chyba że przekażesz -x w argumentach). Na przykład ” pkill refox ” zabije Firefoksa, ale ” killall refox ” won ' nic nie rób (chyba że masz ” refox ” proces w toku).
- UWAGA: Powyższe nie pozwoli Firefoksowi na wykonywanie operacji zamykających (podobnie jak inne opcje pkill / kill omówione w innym miejscu w tym pytaniu, będą, tak jak są obecnie) i doprowadzą do (między innymi)
lock
link symboliczny nie zostanie usunięty, co spowoduje, że wiadomość w tym pytaniu pozostanie. Zobacz moja odpowiedź , aby uzyskać więcej informacji.
Odpowiedź
otwórz terminal i wpisz:
firefox -P
Lub używając polecenia powłoki:
#!/bin/bash files=`find ~/.mozilla -name "*lock"` for file in `echo $files` do echo "removing $file..." rm "$file" done
Komentarze
- -1
firefox -P
monituje o załadowanie profilu, co nie jest ' t problem tutaj. Skrypt powłoki usunie pliki, których dotyczy problem (miejmy nadzieję, że nie inne w żadnej wcześniejszej / przyszłej wersji przeglądarki Firefox). Usuń pierwszą sugestię.
Odpowiedź
Jeśli żadna z powyższych propozycji nie działa, upewnij się, że Twój profil Firefoksa należy do Ciebie przez użytkownika, a nie, powiedzmy, przez roota. Otrzymałem dokładnie ten błąd po skopiowaniu swojego profilu z innego miejsca, zapominając, że pracowałem w tym czasie w powłoce głównej.
Komentarze
- Jak to sprawdzić?
Odpowiedź
Jeśli nie znajdziesz żadnych uruchomionych instancji programu Firefox wyszukaj za pomocą pgrep
lub htop
i chcesz wymusić ponowne uruchomienie Firefoksa, po prostu usuń profiles.ini
plik i zrestartuj Firefoksa.
Uwaga: zrób to, jeśli nie dbasz o profile. Plik można znaleźć w ~/.mozilla/firefox/
(jeśli to nie ma dla Ciebie żadnego sensu, możesz przejść dalej i usunąć).
Komentarze
- Lub możesz zmień uprawnienia do pliku profiles.ini na 777
- -1 Gdzie jest dokumentacja, która mówi, że profiles.ini uniemożliwia Firefoxowi uruchomienie z podanym komunikatem o błędzie OP '?
Odpowiedź
Naprawdę prostym sposobem jest po prostu otwarcie terminala, uruchomienie firefox -P
i usunięcie profilu użytkownika, który się nie uruchamia, lub po prostu utworzenie inny profil i ustaw go jako domyślny.
Komentarze
- -1 Jeśli nie ' Jeśli zależy Ci na historii przeglądania, plikach cookie, zakładkach lub wszystkim, co wydarzyło się w poprzednich sesjach przeglądania, byłoby to rozwiązanie. Ale dla reszty świata jest to podobne do wymiany nowego samochodu, gdy potrzebuje on nowej opony.
killall
polecenie w Cent OS? Ten, którego możesz użyć do zabicia według nazwy, tak jak próbowałeś wcześniej.pgrep
,pkill
ikillall
.