刚刚用journalctl查看系统日志时发现Firefox时不时后报出 Bryan-YOGA14s firefox[18396]: Failed to create /home/bryan/.cache for shader cache (Permission denied)---disabling. 这样的信息
第一次出现这种情况是在9月6日,我用paclog查了一下firefox这个包,那天从129.0.2-1更新到了130.0-1。我不确实这个是不是Firefox更新后带来的bug,还是说是由其他软件更新引起的。
有人有同样的问题吗?
离线
你的目录权限有问题。stat ~/.cache 看看?
离线
bryan on Bryan-YOGA14s in ~
❯ stat .cache/
文件:.cache/
大小:1882 块:0 IO 块大小:4096 目录
设备:0,50 Inode: 450 硬链接:1
权限:(0755/drwxr-xr-x) Uid: ( 1000/ bryan) Gid: ( 1000/ bryan)
访问时间:2024-09-29 20:23:12.973471419 +0800
修改时间:2024-09-29 20:05:40.902138061 +0800
变更时间:2024-09-29 20:05:40.902138061 +0800
创建时间:2024-08-18 08:55:18.030328424 +0800
这个是 stat .cache/ 的输出,应该没问题吧
离线
咦,没问题呀。那 ls -l /home/bryan/.cache 看看呢?
离线
[bryan@Bryan-YOGA14s ~]$ ls -l .cache/
总计 18904
drwxr-xr-x 1 bryan bryan 0 8月18日 09:09 appstream
drwxr-xr-x 1 bryan bryan 0 8月18日 09:19 bookmarksrunner
drwxr-xr-x 1 bryan bryan 46 8月21日 10:59 ccache
drwxr-xr-x 1 bryan bryan 6 8月18日 15:05 ddcutil
drwxr-xr-x 1 bryan bryan 0 9月28日 19:04 debuginfod_client
drwxr-xr-x 1 bryan bryan 128 9月25日 21:38 discover
drwxr-xr-x 1 bryan bryan 130 8月29日 09:51 drkonqi
-rw-r--r-- 1 bryan bryan 20480 9月27日 17:53 event-sound-cache.tdb.2af1fb2b8a8a4d51bfed0f56b643db54.x86_64-pc-linux-gnu
drwxr-xr-x 1 bryan bryan 96 8月18日 10:06 falkon
drwxr-xr-x 1 bryan bryan 1440 9月29日 10:20 fontconfig
drwxr-xr-x 1 bryan bryan 6 9月22日 19:09 go
drwxr-xr-x 1 bryan bryan 1052 9月23日 16:16 go-build
drwxr-xr-x 1 bryan bryan 42 9月24日 14:08 gtk-4.0
drwx------ 1 bryan bryan 22 8月18日 10:05 Insync
drwxr-xr-x 1 bryan bryan 64 8月18日 10:02 JetBrains
-rw-r--r-- 1 bryan bryan 1931 9月15日 18:16 jmeter.log
drwxr-xr-x 1 bryan bryan 8 8月18日 09:53 JNA
drwxr-xr-x 1 bryan bryan 98 8月18日 18:15 kcmshell6
drwxr-xr-x 1 bryan bryan 106 9月29日 18:55 kcrash-metadata
drwxr-xr-x 1 bryan bryan 46 8月18日 15:03 KDE
drwxr-xr-x 1 bryan bryan 98 8月19日 22:26 kdeconnect.sms
drwxr-xr-x 1 bryan bryan 26 9月27日 20:36 keepassxc
drwxr-xr-x 1 bryan bryan 24 8月18日 15:00 kerl
drwxr-xr-x 1 bryan bryan 98 8月18日 10:59 kinfocenter
drwxr-xr-x 1 bryan bryan 98 8月18日 09:44 krunner
drwxr-xr-x 1 bryan bryan 190 9月29日 11:38 kscreenlocker_greet
drwxr-xr-x 1 bryan bryan 98 8月31日 16:41 kscreen_osd_service
drwxr-xr-x 1 bryan bryan 98 8月19日 17:22 ksmserver-logout-greeter
drwxr-xr-x 1 bryan bryan 98 8月18日 09:08 ksplash
-rw------- 1 bryan bryan 76465 9月29日 20:05 ksvg-elements
-rw-r--r-- 1 bryan bryan 581647 9月18日 21:37 'ksycoca6_zh_bYLt9Av6NXe8Eo8Jhygmz2j_tLI='
-rw-r--r-- 1 bryan bryan 581141 9月29日 10:11 'ksycoca6_zh_bYndPxFy1YaScQIKzPvYD3YUgpM='
-rw-r--r-- 1 bryan bryan 579430 9月18日 20:27 'ksycoca6_zh__po+Qp2XwP7cDu7WHkQlWSH++Pw='
-rw-r--r-- 1 bryan bryan 581643 9月18日 21:57 'ksycoca6_zh_toGuXm2sHsZDq1CX0MFg33Yt64g='
drwxr-xr-x 1 bryan bryan 16 8月18日 09:08 kwin
drwxr-xr-x 1 bryan bryan 0 8月23日 12:02 main.kts.compiled.cache
drwx------ 1 bryan bryan 0 9月26日 22:32 mesa_shader_cache
drwx------ 1 bryan bryan 602 9月26日 22:32 mesa_shader_cache_db
drwxr-xr-x 1 bryan bryan 28 8月18日 09:49 Microsoft
drwx------ 1 bryan bryan 14 8月18日 09:24 mozilla
drwx------ 1 bryan bryan 3840 9月13日 21:48 mpv
drwxr-xr-x 1 bryan bryan 118 9月19日 21:39 npm
drwxr-xr-x 1 bryan bryan 18 8月18日 09:19 org.kde.ki18n
drwxr-xr-x 1 bryan bryan 8 8月18日 09:10 org.kde.unitconversion
drwxr-xr-x 1 bryan bryan 0 8月18日 10:29 pikaur
drwxr-xr-x 1 bryan bryan 14 8月18日 15:06 pip
drwxr-xr-x 1 bryan bryan 24 8月18日 15:06 pipx
drwxr-xr-x 1 bryan bryan 98 8月21日 20:20 plasma.emojier
drwxr-xr-x 1 bryan bryan 236 9月29日 10:20 plasmashell
drwxr-xr-x 1 bryan bryan 98 8月18日 10:44 plasma-systemmonitor
-rw-r--r-- 1 bryan bryan 16875624 9月29日 20:51 plasma_theme_default.kcache
drwxr-xr-x 1 bryan bryan 16 9月26日 15:45 pnpm
drwxr-xr-x 1 bryan bryan 98 8月18日 09:15 polkit-kde-authentication-agent-1
drwxr-xr-x 1 bryan bryan 0 8月18日 10:13 qBittorrent
-rw-r--r-- 1 bryan bryan 18 8月18日 10:16 qq_mac
drwxr-xr-x 1 bryan bryan 1760 9月29日 20:31 qtshadercache-x86_64-little_endian-lp64
-rw------- 1 bryan bryan 31024 8月24日 10:22 radv_builtin_shaders64
drwxr-xr-x 1 bryan bryan 98 8月18日 10:19 spectacle
drwx------ 1 bryan bryan 1302 9月27日 17:31 spotify
drwxr-xr-x 1 bryan bryan 0 8月18日 08:55 starship
drwxr-xr-x 1 bryan bryan 152 8月18日 09:16 systemsettings
drwxr-xr-x 1 bryan bryan 52 8月18日 11:15 thumbnails
drwxr-xr-x 1 bryan bryan 18 9月17日 14:33 typescript
drwx------ 1 bryan bryan 28 8月18日 08:55 vim
drwx------ 1 bryan bryan 6 8月18日 10:21 vmware
-rw-r--r-- 1 bryan bryan 215 9月12日 14:43 wget-hsts
drwxr-xr-x 1 bryan bryan 98 8月21日 20:21 xdg-desktop-portal-kde
drwxr-xr-x 1 bryan bryan 4 8月21日 20:16 yarn
[bryan@Bryan-YOGA14s ~]$
这个是 ls -l /home/bryan/.cache 的输出
离线
看看 mesa_shader_cache_db 目录里呢?
离线
下面是 mesa_shader_cache 和 mesa_shader_cache_db 的情况
.cache/mesa_shader_cache:
总计 0
.cache/mesa_shader_cache_db:
总计 1.3M
-rw-r--r-- 1 bryan bryan 1.3M 9月29日 20:31 index
-rw-r--r-- 1 bryan bryan 0 9月28日 22:58 marker
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part0
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part1
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part10
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part11
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part12
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part13
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part14
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part15
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part16
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part17
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part18
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part19
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part2
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part20
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part21
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part22
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part23
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part24
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part25
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part26
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part27
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part28
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part29
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part3
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part30
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part31
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part32
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part33
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part34
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part35
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part36
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part37
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part38
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part39
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part4
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part40
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part41
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part42
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part43
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part44
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part45
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part46
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part47
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part48
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part49
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part5
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part6
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part7
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part8
drwxr-xr-x 1 bryan bryan 54 9月26日 22:32 part9
离线
我不太确定这个bug是否跟播放视频有关系,目前我观察到一个情况就是当我打开一些视频网站例如tiktok、youtube时,firefox会报这样的错误,而其他网站不会有这种情况。
这个是相关的录屏:https://vimeo.com/1014038156?share=copy
离线
好奇怪啊。你 mkdir /home/bryan/.cache 看看会发生什么?
就是 mesa 初始化的时候报的错。但是这权限明明都正常啊……
离线
bryan on Bryan-YOGA14s in ~
❯ mkdir /home/bryan/.cache
mkdir: 无法创建目录 "/home/bryan/.cache": 文件已存在
提示文件已存在
离线
这也正常啊!!!
只能上 strace 了,如果你会用它的话……
离线
我看了一下man,应该可以用-p去跟踪现有的firefox进程,但是我不知道trace什么。
离线
报错的那个 mkdir 系统调用。
离线
好奇怪,我在konsole里面开了两个tab,一个运行sudo strace -e trace=mkdir -p 82612 > output.txt 2>&1,另一个用tail -f output.txt来查看
等了好久都没看到有相关的输出,output.txt唯一的内容就是strace: Process 82612 attached,但是journald里面firefox已经报错了。
最近编辑记录 Bryan2333 (2024-09-30 13:34:17)
离线
你是不是 -p 的进程不对?我建议把所有火狐进程都 -p 上,还要 -f 上。有可能是新进程。
PS: 火狐一个进程几十个线程,一个个都 -p 上还挺麻烦的……也许可以试试 ftrace 之类的?
离线