Firefox v122 --profile option is not working properly
Hi,
I am running the latest Firefox v122 (firefox_122.0+build1-0ubuntu0.22.04.1~mt1_amd64.deb not snap)
and when using the --profile option to specify the startup profile it fails to start even on a NEW system that never ran Firefox if I give it a directory that resides on a mounted ext3 filesystem.
All the permissions are OK and yet running strace I see an error and after a few second will get the
generic pop-up with the error message: (after a few seconds)
Firefox is already running, but is not responding. To use Firefox, you must first close the existing Firefox process, restart your device, or use a different profile.
Running the SAME from /tmp works fine, but I need the profile to reside on a persistent storage area
so if the LIVE distro restarts then it can restore the previous session, bookmarks, options, etc...
============================================================
The 2 directories were created identically and have the exact same permissions:
xubuntu@xubuntu:~$ mkdir /tmp/firefox3
xubuntu@xubuntu:~$ mkdir /media/xubuntu/sys_n01_home/mozilla/firefox3
xubuntu@xubuntu:~$ ls -ald /tmp/firefox3 drwxrwxr-x 17 xubuntu xubuntu 1080 Jan 21 22:05 /tmp/firefox3
xubuntu@xubuntu:~$ ls -ald /media/xubuntu/sys_n01_home/mozilla/firefox3 drwxrwxr-x 17 xubuntu xubuntu 4096 Jan 21 21:13 /media/xubuntu/sys_n01_home/mozilla/firefox3
============================================================
The only difference is that one is mounted on tmpfs and the other is on /dev/nvme0n1p2:
xubuntu@xubuntu:~$ df -k /tmp/firefox3 Filesystem 1K-blocks Used Available Use% Mounted on tmpfs 32560016 351528 32208488 2% /tmp
xubuntu@xubuntu:~$ df -k /media/xubuntu/sys_n01_home/mozilla/firefox3 Filesystem 1K-blocks Used Available Use% Mounted on /dev/nvme0n1p2 195751828 51056068 142695768 27% /media/xubuntu/sys_n01_home
============================================================
When starting firefox with the /tmp/firefox3 profile directory it works fine and starts up:
xubuntu@xubuntu:~$ firefox --profile /tmp/firefox3
newfstatat(AT_FDCWD, "/tmp/firefox3", {st_mode=S_IFDIR|0775, st_size=1040, ...}, 0) = 0 newfstatat(AT_FDCWD, "/tmp/firefox3/.parentlock", {st_mode=S_IFREG|0664, st_size=0, ...}, 0) = 0 openat(AT_FDCWD, "/tmp/firefox3/.parentlock", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 11 fcntl(11, F_GETLK, {l_type=F_UNLCK, l_whence=SEEK_SET, l_start=0, l_len=0, l_pid=-487933736}) = 0 fcntl(11, F_SETLK, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=0, l_len=0}) = 0 uname({sysname="Linux", nodename="xubuntu", ...}) = 0
BUT when using the persistent storage on the real filesystem (but SAME exact permissions) it fails:
newfstatat(AT_FDCWD, "/media/xubuntu/sys_n01_home/mozilla/firefox3", {st_mode=S_IFDIR|0775, st_size=4096, ...}, 0) = 0 newfstatat(AT_FDCWD, "/media/xubuntu/sys_n01_home/mozilla/firefox3/.parentlock", {st_mode=S_IFREG|0664, st_size=0, ...}, 0) = 0 openat(AT_FDCWD, "/media/xubuntu/sys_n01_home/mozilla/firefox3/.parentlock", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 11 fcntl(11, F_GETLK, {l_type=F_UNLCK, l_whence=SEEK_SET, l_start=0, l_len=0, l_pid=1519466008}) = 0 fcntl(11, F_SETLK, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=0, l_len=0}) = -1 EACCES (Permission denied) close(11) = 0
Am I doing anything wrong or is this some weird startup issue / race condition in the parentlock management?
Thank you for looking into this.
-Sanjiyan
PS: I can upload the full strace file for both scenarios if needed. Thanks again.
running on an xubuntu distribution "22.04.2 LTS (Jammy Jellyfish)"
Alla svar (1)
Try bind mounting the profile to the standard location where profiles are kept to avoid possible apparmor restrictions.
mount --bind <profile> ~/.mozilla/firefox/firefox3