我编辑了/etc/security/limits.conf文件以限制用户“学生”可以创建的文件大小:
@student hard fsize 3001
@student soft fsize 2001
现在,当我以“学生”身份登录并尝试创建一些文件以查看我可以创建多大的文件时,我遇到了这种奇怪的行为:
student@node1:~$ ulimit -f
2001
student@node1:~$ dd if=/dev/zero of=file1 bs=1KB count=2049
2049+0 records in
2049+0 records out
2049000 bytes (2.0 MB, 2.0 MiB) copied, 0.0127504 s, 161 MB/s
student@node1:~$ dd if=/dev/zero of=file2 bs=1KB count=2050
File size limit exceeded (core dumped)
然后我检查它们的尺寸:
student@node1:~$ ls -l
-rw-rw-r-- 1 student student 2049000 Dec 4 16:56 file1
-rw-rw-r-- 1 student student 2049024 Dec 4 16:57 file2
为什么允许我创建这么大的文件?在dd命令中,我可以将最大大小描述为bs=1KB count=2049。不应该是bs=1KB count=2001,因为我在/etc/security/limits.conf中放了“2001”吗?