一个特定的 UID 会导致性能非常低

一个特定的 UID 会导致性能非常低

我们在一台 CentOS 7 机器上的一个帐户的磁盘读/写速度非常慢。我开始研究这个问题是因为这台机器上的 1007 用户运行wget速度比其他用户/机器慢得多。

ID
用户标识=1007(test.dd) gid=1001(xxx) groups=1001(xxx),10(wheel)

ulimit -m 100000000; sudo dd if=/dev/zero of=/tmp/test1.img bs=1G count=1 oflag=dsync
[sudo] test.dd 的密码:
1+0 条记录
1+0记录输出
复制 1073741824 字节 (1.1 GB),25.6939 秒,41.8 MB/秒

1007 似乎是这里的罪魁祸首,因为我删除了用户并使用相同的 UID 重新创建了另一个用户,或者将现有用户更改为相同的 UID,并得到了相同的结果。此外,我还确保没有其他用户/etc/passwd具有 UID 或 GID = 1007。

事实证明,在相同的命令下,所有其他用户的速度都是原来的 4 倍。

id
uid=1008(yyy) gid=1001(xxx) groups=1001(xxx),10(wheel),994(docker)

ulimit -m 100000000; sudo dd if=/dev/zero of=/tmp/test1.img bs=1G count=1 oflag=dsync 
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB) copied, 6.61231 s, 162 MB/s

可能出了什么问题?

更新:替换of=/tmp/test1.img为之后of=/dev/null,我发现 1007 和其他用户之间的性能差距类似:

ID
用户标识=1007(test.dd) gid=1001(xxx) groups=1001(xxx),10(wheel)

ulimit -m 100000000; sudo dd if=/dev/zero of=/dev/null bs=1G count=1 oflag=dsync
1+0 条记录
1+0记录输出
复制 1073741824 字节 (1.1 GB),4.31788 秒,249 MB/秒
id
uid=1008(yyy) gid=1001(xxx) groups=1001(xxx),10(wheel),994(docker)

ulimit -m 100000000; sudo dd if=/dev/zero of=/dev/null bs=1G count=1 oflag=dsync
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB) copied, 0.309438 s, 3.5 GB/s

更新2:更改/dev/zero为后/tmp/test1.img,两个用户最终获得相同的速度。因此,看起来/dev挂载点对用户 1007 和其他用户的处理方式有所不同。关于为什么会出现这种情况的任何线索吗?

相关内容