您尚未登录。

#1 2022-04-26 20:04:37

yuan
会员
所在地: 尤溪
注册时间: 2013-07-26
帖子: 49
个人网站

有没有朋友知道 btrfs-transaction 这玩意是啥?

我两年前买的一块 SSD 写入量惊人,通电时间是我 10 年前买的另一块 SSD 的 1/10,写入量居然相差不大,前者 21T, 后者 24T.
我就运行 iotop -ao 来观察,发现有一个叫 btrfs-transaction 的程序写入量远远高于其它进程。运行 6 个半小时的结果如下:

Total DISK READ :       0.00 B/s | Total DISK WRITE :      49.71 K/s
Actual DISK READ:       0.00 B/s | Actual DISK WRITE:       0.00 B/s
    TID  PRIO  USER     DISK READ DISK WRITE>  SWAPIN      IO    COMMAND                                                                                       
    436 be/4 root         12.44 M      6.49 G  ?unavailable?  [btrfs-transaction]
    252 be/4 root        304.00 K    844.02 M  ?unavailable?  [btrfs-transaction]
   3082 be/4 yuan         26.58 M    380.68 M  ?unavailable?  chromium --force-dark-mode --enable-crashpad
    284 be/4 root          0.00 B    190.99 M  ?unavailable?  systemd-journald
   3101 be/4 yuan          0.00 B     44.14 M  ?unavailable?  chromium --force-dark-mode --enable-crashpad [Chrome_IOThread]
   1006 be/4 postgres      0.00 B     30.74 M  ?unavailable?  postgres: stats collector
   2160 be/4 yuan          0.00 B     30.52 M  ?unavailable?  python /usr/bin/ulauncher --hide-window --hide-window
  13212 be/4 root         32.00 K     27.92 M  ?unavailable?  [kworker/u16:5-btrfs-worker]
   1684 be/4 yuan          2.68 M     16.69 M  ?unavailable?  fcitx5
  16863 be/4 root         16.00 K     14.52 M  ?unavailable?  [kworker/u16:12-events_freezable_power_]
   1718 be/4 yuan          0.00 B     14.50 M  ?unavailable?  dropbox [APEX_CONTEXT_WO]
  17412 be/4 root         16.00 K     13.17 M  ?unavailable?  [kworker/u16:8-events_unbound]
   1543 be/4 yuan          0.00 B     13.00 M  ?unavailable?  onedrive --monitor


网上搜了一会没找到相差资料,有一篇文章说是 btrfs 的 autodefrag 在运行,我在 /etc/fstab 里把 noautodefrag 挂载选项加上重启了,但并没有什么效果。请问有朋友知道这玩意是啥,为啥一直在写磁盘吗?

最近编辑记录 yuan (2022-04-26 20:18:10)


达无先后

离线

#2 2022-04-26 20:37:24

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 7,017
个人网站

Re: 有没有朋友知道 btrfs-transaction 这玩意是啥?

btrfs-transaction 就是 btrfs 的线程啊。你不用管它。是有别的程序在往 btrfs 里写入数据导致的。
建议用 bcc-tools 里的 btrfsslower 来看哪些程序在写什么文件。

离线

#3 2022-04-26 20:41:17

yuan
会员
所在地: 尤溪
注册时间: 2013-07-26
帖子: 49
个人网站

Re: 有没有朋友知道 btrfs-transaction 这玩意是啥?

依云 说:

btrfs-transaction 就是 btrfs 的线程啊。你不用管它。是有别的程序在往 btrfs 里写入数据导致的。
建议用 bcc-tools 里的 btrfsslower 来看哪些程序在写什么文件。

原来如此,多谢多谢。我试试。


达无先后

离线

#4 2022-04-26 21:17:21

yuan
会员
所在地: 尤溪
注册时间: 2013-07-26
帖子: 49
个人网站

Re: 有没有朋友知道 btrfs-transaction 这玩意是啥?

依云 说:

btrfs-transaction 就是 btrfs 的线程啊。你不用管它。是有别的程序在往 btrfs 里写入数据导致的。
建议用 bcc-tools 里的 btrfsslower 来看哪些程序在写什么文件。

试了一下跑不起来…
ModuleNotFoundError: No module named 'bcc'

想跟 Linux 好好玩看来不得不学 Python.

但我有个疑问是,如果有其它程序在写数据,iotop 不会把它列出来吗?下面那些程序加起来的总和都没有 btrf-transction 的多呀。


达无先后

离线

#5 2022-04-26 21:58:46

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 7,017
个人网站

Re: 有没有朋友知道 btrfs-transaction 这玩意是啥?

啊,不是直接装 bcc-tools-git 这个包就好了吗?
我也不知道 iotop 是怎么搞的,感觉很多时候跟踪不到具体的程序,只会落到文件系统的线程上。btrfs 就是 btrf-transction,ext4 就是 jbd2。

离线

#6 2022-04-27 01:04:47

yuan
会员
所在地: 尤溪
注册时间: 2013-07-26
帖子: 49
个人网站

Re: 有没有朋友知道 btrfs-transaction 这玩意是啥?

依云 说:

啊,不是直接装 bcc-tools-git 这个包就好了吗?
我也不知道 iotop 是怎么搞的,感觉很多时候跟踪不到具体的程序,只会落到文件系统的线程上。btrfs 就是 btrf-transction,ext4 就是 jbd2。

好吧,我装的是 community/bcc-tools, 晚点再试试。
---------------------------------
试了,也一样…  T_T

最近编辑记录 yuan (2022-04-27 02:08:00)


达无先后

离线

#7 2022-04-30 13:24:55

yuan
会员
所在地: 尤溪
注册时间: 2013-07-26
帖子: 49
个人网站

Re: 有没有朋友知道 btrfs-transaction 这玩意是啥?

依云 说:

啊,不是直接装 bcc-tools-git 这个包就好了吗?
我也不知道 iotop 是怎么搞的,感觉很多时候跟踪不到具体的程序,只会落到文件系统的线程上。btrfs 就是 btrf-transction,ext4 就是 jbd2。

观察了一下,似乎进程结束 iotop 就没有了。比如我开着 chromium, 用 iotop -a 能看见它的 IO 一直在涨,然后我把 chromium 关了,数据就从 iotop 上面消失了。再打开 chromium 它的 IO 又重新从 0 开始。


达无先后

离线

页脚