Solucionar el problema "Firefox ya se está ejecutando" en Linux

27

Estoy tratando de abrir Firefox en CentOS, pero recibo el siguiente mensaje:

Firefox ya se está ejecutando pero no responde

y Firefox no se abre. Intenté esto en la línea de comando:

kill Firefox

Pero no funcionó. Además, no sé en qué directorio debo ejecutar los comandos correctos.

¿Cómo puedo arreglar esto?

Dchris
fuente
¿Hay un killallcomando en Cent OS? Ese que puedes usar para matar por nombre, como lo intentaste antes.
manatwork
3
Sí existen los comandos estándar tales como pgrep, pkill, y killall.
slm
CentOS es una distribución de Linux, no Unix.
Rafael Cavalcanti
Dchris: recuerde aceptar qué respuesta funcionó para usted o solicite más información.
user66001
Dchris: nadie.
user66001

Respuestas:

29

Desde http://kb.mozillazine.org/Profile_in_use - Verifique:

1) Un archivo llamado .parentlock
-AND-
2) Un enlace simbólico llamado lock
... en ~ / .mozilla / firefox / cadena aleatoria de caracteres alfanuméricos .default /

El primero está presente mientras Firefox se está ejecutando para evitar que más de una instancia diferente intente escribir simultáneamente en el mismo conjunto de archivos de perfil, y si Firefox no se cierra limpiamente, ninguno puede eliminarse.

El mensaje de error recibido en este caso debería ser:

Desde cualquier parte del sistema de archivos (o eliminando esto si hay pwdinformes ), reemplazando una cadena aleatoria de caracteres alfanuméricos con la carpeta de perfil FF en su computadora, haga (asumiendo que la primera oración se desplaza) para eliminarlos, si no hay un proceso de Firefox en ejecución .~/.mozilla/firefox/random string of alphanumeric characters.defaultrm ~/.mozilla/firefox/random string of alphanumeric characters.default/.parentlock ~/.mozilla/firefox/random string of alphanumeric characters.default/lock`

Más información menos autorizada aquí .

user66001
fuente
3
Esta solución sigue siendo válida después de casi 4 años (recién probada con Firefox 53 en Ubuntu 17.04). ¡Gracias!
Vanni
Debería ser la respuesta. Tenía el problema cuando otro usuario ha iniciado sesión en Firefox, así que no podía matar a la PID .. tuve que quitar estos archivos ..
Dermen
17
  1. Primero encuentre la identificación del proceso de firefox usando el siguiente comando en cualquier directorio:

    pidof firefox
    
  2. Elimina el proceso de Firefox usando el siguiente comando en cualquier directorio:

    kill [firefox pid]
    

Luego inicia firefox nuevamente.

O puede hacer lo mismo en un solo comando. Como dijo don_crissti:

kill $(pidof firefox)
Dchris
fuente
@don_crissti mucho mejor!
Dchris
8
O mejor aún lo es pkill firefox.
slm
Si esto no funciona, tratar kill -9 $(pidof firefox)opkill -9 firefox
mavillan
Por experiencia, -9casi siempre se recomienda.
schaiba
NOTA: Lo anterior no permitirá que Firefox realice operaciones de cierre (como las otras opciones pkill / kill discutidas en otra parte sobre esta pregunta, lo hará, como lo son actualmente) y llevará a (entre otras cosas) que el lockenlace simbólico no se elimine, lo que causa que el mensaje en esta pregunta permanezca. Vea mi respuesta para más detalles.
user66001
4

Por lo general, muchos usuarios dicen que este comando ayuda:

killall -SIGTERM firefox

El comando killall eliminará los procesos que se denominan "firefox". SIGTERM es el tipo de señal de muerte. Este comando funciona bien para mí y otros usuarios de Linux. Además, puede ser útil esperar treinta segundos después de cerrar Firefox antes de volver a encenderlo.

Devyn Collier Johnson
fuente
55
Realmente no. killall coincide exactamente con el patrón . Lo que dijo es válido para pkill: mata todos los procesos que contienen ese patrón (a menos que pase -x en los argumentos). Por ejemplo, "pkill refox" matará a firefox, pero "killall refox" no hará nada (a menos que tenga un proceso de "refox" en ejecución).
Rafael Cavalcanti
NOTA: Lo anterior no permitirá que Firefox realice operaciones de cierre (como las otras opciones pkill / kill discutidas en otra parte sobre esta pregunta, lo hará, como lo son actualmente) y llevará a (entre otras cosas) que el lockenlace simbólico no se elimine, lo que causa que el mensaje en esta pregunta permanezca. Vea mi respuesta para más detalles.
user66001
2

abrir una terminal e ingresar:

firefox -P

O usando un scipt de shell:

#!/bin/bash
files=`find ~/.mozilla -name "*lock"`
for file in `echo $files`
do
  echo "removing $file..."
  rm "$file"
done
usuario3920129
fuente
-1 firefox -Psolicita que se cargue el perfil, que no es el problema aquí. El script de shell eliminará los archivos en cuestión aquí (con suerte no otros en ninguna versión pasada / futura de Firefox también). Eliminar la primera sugerencia.
user66001
1

Si nada de lo anterior funciona, asegúrese de que su perfil de Firefox sea propiedad de su usuario y no, por ejemplo, de root. Recibí este error exacto después de copiar mi perfil desde otro lugar, olvidando que estaba ejecutando en un shell de raíz en ese momento.

cynthb
fuente
0

Si no encuentra ninguna instancia de Firefox ejecutándose cuando busca con pgrepo htop, y desea forzar el reinicio de su Firefox, simplemente elimine el profiles.iniarchivo y reinicie Firefox.

Precaución: haga esto si no le importan los perfiles. El archivo se puede encontrar en ~/.mozilla/firefox/(si esto profiles.inino tiene ningún sentido para usted, puede continuar y eliminar).

chinna
fuente
O puede cambiar el permiso de archivo profiles.ini a 777
kavi temre
-1 ¿Dónde está la documentación que profiles.ini impide que Firefox comience con el mensaje de error declarado del OP?
user66001
0

Una forma realmente fácil es simplemente abrir una terminal, ejecutar firefox -Py eliminar el perfil de usuario que no se ejecutará o simplemente crear otro perfil y configurarlo como el predeterminado.

Velero
fuente
-1 Si a uno no le importa el historial de navegación, las cookies, los marcadores o cualquier cosa que haya sucedido en sesiones de navegación anteriores, esta sería una solución. Pero para el resto del mundo, esto es similar a reemplazar su auto nuevo cuando necesita un neumático nuevo.
user66001