Timo Sirainen wrote:
On Mon, 2006-06-12 at 17:12 +0300, Dumitru Negara wrote:
# repquota -u /dev/sda9
Could you run it through strace and show me the quotactl() call it does? Or does it do a quotactl() call at all?
# strace -tt repquota -u /dev/sda9
17:44:30.978591 execve("/usr/sbin/repquota", ["repquota", "-u",
"/dev/sda9"], [/* 20 vars */]) = 0
17:44:30.978804 uname({sys="Linux", node="debian", ...}) = 0
17:44:30.979041 brk(0) = 0x806b000
17:44:30.979112 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fcb000
17:44:30.979221 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such
file or directory)
17:44:30.979341 open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No
such file or directory)
17:44:30.979453 open("/etc/ld.so.cache", O_RDONLY) = 4
17:44:30.979539 fstat64(4, {st_mode=S_IFREG|0644, st_size=53743, ...}) = 0
17:44:30.979669 old_mmap(NULL, 53743, PROT_READ, MAP_PRIVATE, 4, 0) =
0xb7fbd000
17:44:30.979788 close(4) = 0
17:44:30.979850 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such
file or directory)
17:44:30.979946 open("/lib/tls/libc.so.6", O_RDONLY) = 4
17:44:30.980041 read(4,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`Z\1\000"..., 512) = 512
17:44:30.980156 fstat64(4, {st_mode=S_IFREG|0755, st_size=1254660, ...}) = 0
17:44:30.980285 old_mmap(NULL, 1264972, PROT_READ|PROT_EXEC,
MAP_PRIVATE, 4, 0) = 0xb7e88000
17:44:30.980412 old_mmap(0xb7fb2000, 36864, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 4, 0x129000) = 0xb7fb2000
17:44:30.980536 old_mmap(0xb7fbb000, 7500, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fbb000
17:44:30.980663 close(4) = 0
17:44:30.980754 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7e87000
17:44:30.980970 set_thread_area({entry_number:-1 -> 6,
base_addr:0xb7e87460, limit:1048575, seg_32bit:1, contents:0,
read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
17:44:30.981057 munmap(0xb7fbd000, 53743) = 0
17:44:30.981187 open("/usr/lib/locale/locale-archive",
O_RDONLY|O_LARGEFILE) = 4
17:44:30.981293 fstat64(4, {st_mode=S_IFREG|0644, st_size=290576, ...}) = 0
17:44:30.981412 mmap2(NULL, 290576, PROT_READ, MAP_PRIVATE, 4, 0) =
0xb7e40000
17:44:30.981502 close(4) = 0
17:44:30.981583 brk(0) = 0x806b000
17:44:30.981636 brk(0x808c000) = 0x808c000
17:44:30.981714 brk(0) = 0x808c000
17:44:30.981848 open("/etc/nsswitch.conf", O_RDONLY|O_LARGEFILE) = 4
17:44:30.982005 fstat64(4, {st_mode=S_IFREG|0644, st_size=465, ...}) = 0
17:44:30.982120 mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fca000
17:44:30.982208 read(4, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 465
17:44:30.982307 close(4) = 0
17:44:30.982361 munmap(0xb7fca000, 4096) = 0
17:44:30.982459 rt_sigaction(SIGSEGV, {SIG_DFL}, {SIG_DFL}, 8) = 0
17:44:30.982567 stat64("/proc/fs/xfs/stat", {st_mode=S_IFREG|0444,
st_size=0, ...}) = 0
17:44:30.982721 stat64("/proc/sys/fs/quota", {st_mode=S_IFDIR|0555,
st_size=0, ...}) = 0
17:44:30.982871 rt_sigaction(SIGSEGV, {SIG_DFL}, NULL, 8) = 0
17:44:30.982958 open("/etc/mtab", O_RDONLY) = 4
17:44:30.983040 fstat64(4, {st_mode=S_IFREG|0644, st_size=355, ...}) = 0
17:44:30.983176 mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fca000
17:44:30.983242 read(4, "/dev/sda1 / ext3 rw,errors=remou"..., 4096) = 355
17:44:30.983393 quotactl(Q_XGETQSTAT|USRQUOTA, "/dev/sda9", 0,
0xbf89efd0) = 0
17:44:30.983482 lstat64("/home", {st_mode=S_IFDIR|0755, st_size=8192,
...}) = 0
17:44:30.983608 statfs64("/home", 84, {f_type=0x58465342, f_bsize=4096,
f_blocks=363377600, f_bfree=210609614, f_bavail=210609614,
f_files=1453641472, f_ffree=1449674596, f_fsid={2057, 0}, f_namelen=255,
f_frsize=4096}) = 0
17:44:30.983744 stat64("/dev/sda9", {st_mode=S_IFBLK|0660,
st_rdev=makedev(8, 9), ...}) = 0
17:44:30.983959 stat64("/home", {st_mode=S_IFDIR|0755, st_size=8192,
...}) = 0
17:44:30.984106 read(4, "", 4096) = 0
17:44:30.984189 close(4) = 0
17:44:30.984257 munmap(0xb7fca000, 4096) = 0
17:44:30.984318 stat64("/dev/sda9", {st_mode=S_IFBLK|0660,
st_rdev=makedev(8, 9), ...}) = 0
17:44:30.984487 quotactl(Q_XGETQSTAT|USRQUOTA, "/dev/sda9", 0,
0xbf8e10d0) = 0
17:44:30.984560 stat64("/dev/sda9", {st_mode=S_IFBLK|0660,
st_rdev=makedev(8, 9), ...}) = 0
17:44:30.984703 quotactl(Q_XGETQSTAT|USRQUOTA, "/dev/sda9", 0,
0xbf8e10d0) = 0
17:44:30.984793 open("/usr/share/locale/locale.alias", O_RDONLY) = 4
17:44:30.984887 fstat64(4, {st_mode=S_IFREG|0644, st_size=2539, ...}) = 0
17:44:30.985005 mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fca000
17:44:30.985088 read(4, "# Locale name alias data base.\n#"..., 4096) = 2539
17:44:30.985241 read(4, "", 4096) = 0
17:44:30.985298 close(4) = 0
17:44:30.985352 munmap(0xb7fca000, 4096) = 0
17:44:30.985487 open("/usr/share/locale/en_RO/LC_MESSAGES/quota.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
17:44:30.985594 open("/usr/share/locale/en/LC_MESSAGES/quota.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
17:44:30.985710 open("/usr/share/locale/en_US/LC_MESSAGES/quota.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
17:44:30.985821 open("/usr/share/locale/en_GB/LC_MESSAGES/quota.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
17:44:30.985940 fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136,
2), ...}) = 0
17:44:30.986077 mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fca000
17:44:30.986164 write(1, "*** Report for user quotas on de"..., 47***
Report for user quotas on device /dev/sda9) = 47
17:44:30.986293 write(1, "Block grace time: 7days; Inode g"..., 49Block
grace time: 7days; Inode grace time: 7days) = 49
17:44:30.986381 write(1, " Block li"...,
64 Block limits File limits) = 64
17:44:30.986475 write(1, "User used soft "...,
71User used soft hard grace used soft hard
grace) = 71
17:44:30.986570 write(1, "--------------------------------"...,
71----------------------------------------------------------------------)
= 71
17:44:30.986669 open("/etc/nsswitch.conf", O_RDONLY) = 4
17:44:30.986788 fstat64(4, {st_mode=S_IFREG|0644, st_size=465, ...}) = 0
17:44:30.986940 mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fc9000
17:44:30.987046 read(4, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 465
17:44:30.987157 read(4, "", 4096) = 0
17:44:30.987214 close(4) = 0
17:44:30.987309 munmap(0xb7fc9000, 4096) = 0
17:44:30.987398 open("/etc/ld.so.cache", O_RDONLY) = 4
17:44:30.987470 fstat64(4, {st_mode=S_IFREG|0644, st_size=53743, ...}) = 0
17:44:30.987603 old_mmap(NULL, 53743, PROT_READ, MAP_PRIVATE, 4, 0) =
0xb7e32000
17:44:30.987728 close(4) = 0
17:44:30.987807 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such
file or directory)
17:44:30.987928 open("/lib/tls/libnss_compat.so.2", O_RDONLY) = 4
17:44:30.988025 read(4,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\22\0"..., 512) = 512
17:44:30.988138 fstat64(4, {st_mode=S_IFREG|0644, st_size=28616, ...}) = 0
17:44:30.988272 old_mmap(NULL, 31628, PROT_READ|PROT_EXEC, MAP_PRIVATE,
4, 0) = 0xb7fc2000
17:44:30.988374 old_mmap(0xb7fc9000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 4, 0x6000) = 0xb7fc9000
17:44:30.988507 close(4) = 0
17:44:30.988572 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such
file or directory)
17:44:30.988668 open("/lib/tls/libnsl.so.1", O_RDONLY) = 4
17:44:30.988762 read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0
<\0\000"..., 512) = 512
17:44:30.988881 fstat64(4, {st_mode=S_IFREG|0644, st_size=73304, ...}) = 0
17:44:30.989014 old_mmap(NULL, 80544, PROT_READ|PROT_EXEC, MAP_PRIVATE,
4, 0) = 0xb7e1e000
17:44:30.989142 old_mmap(0xb7e2f000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 4, 0x11000) = 0xb7e2f000
17:44:30.989265 old_mmap(0xb7e30000, 6816, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7e30000
17:44:30.989398 close(4) = 0
17:44:30.989538 munmap(0xb7e32000, 53743) = 0
17:44:30.989639 open("/etc/ld.so.cache", O_RDONLY) = 4
17:44:30.989713 fstat64(4, {st_mode=S_IFREG|0644, st_size=53743, ...}) = 0
17:44:30.989826 old_mmap(NULL, 53743, PROT_READ, MAP_PRIVATE, 4, 0) =
0xb7e32000
17:44:30.989938 close(4) = 0
17:44:30.990010 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such
file or directory)
17:44:30.990097 open("/lib/tls/libnss_nis.so.2", O_RDONLY) = 4
17:44:30.990182 read(4,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\34\0"..., 512) = 512
17:44:30.990304 fstat64(4, {st_mode=S_IFREG|0644, st_size=33440, ...}) = 0
17:44:30.990424 old_mmap(NULL, 36620, PROT_READ|PROT_EXEC, MAP_PRIVATE,
4, 0) = 0xb7e15000
17:44:30.990520 old_mmap(0xb7e1d000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 4, 0x7000) = 0xb7e1d000
17:44:30.990621 close(4) = 0
17:44:30.990708 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such
file or directory)
17:44:30.990816 open("/lib/tls/libnss_files.so.2", O_RDONLY) = 4
17:44:30.990898 read(4,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\35"..., 512) = 512
17:44:30.990997 fstat64(4, {st_mode=S_IFREG|0644, st_size=34748, ...}) = 0
17:44:30.991117 old_mmap(NULL, 38044, PROT_READ|PROT_EXEC, MAP_PRIVATE,
4, 0) = 0xb7e0b000
17:44:30.991234 old_mmap(0xb7e14000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 4, 0x8000) = 0xb7e14000
17:44:30.991334 close(4) = 0
17:44:30.991429 munmap(0xb7e32000, 53743) = 0
17:44:30.991525 open("/etc/passwd", O_RDONLY) = 4
17:44:30.991623 fcntl64(4, F_GETFD) = 0
17:44:30.991679 fcntl64(4, F_SETFD, FD_CLOEXEC) = 0
17:44:30.991772 _llseek(4, 0, [0], SEEK_CUR) = 0
17:44:30.991859 fstat64(4, {st_mode=S_IFREG|0644, st_size=1363, ...}) = 0
17:44:30.991977 mmap2(NULL, 1363, PROT_READ, MAP_SHARED, 4, 0) = 0xb7fc1000
17:44:30.992071 _llseek(4, 1363, [1363], SEEK_SET) = 0
17:44:30.992169 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 0,
0xbf8e1090) = 0
17:44:30.992283 write(1, "root -- 608085656 0 "...,
73root -- 608085656 0 0 3938317 0 0) = 73
17:44:30.992366 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 1,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.992461 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 2,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.992546 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 3,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.992628 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 4,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.992710 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 5,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.992791 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 6,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.992875 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 7,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.992977 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 8,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993063 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 9,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993148 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 10,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993233 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 13,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993314 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 33,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993395 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 34,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993500 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 38,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993603 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 39,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993686 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 41,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993770 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 65534,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993854 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 102,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.993960 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 100,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994047 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 101,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994146 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 103,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994227 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 106,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994308 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 109,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994386 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 104,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994489 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 1000,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994575 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 111,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994656 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 105,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.994739 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 1048,
0xbf8e1090) = 0
17:44:30.994863 write(1, "dumitru -- 1964720 5242880 545"...,
71dumitru -- 1964720 5242880 5451776 28558 0 0) = 71
17:44:30.994946 quotactl(Q_XGETQUOTA|USRQUOTA, "/dev/sda9", 113,
0xbf8e1090) = -1 ENOENT (No such file or directory)
17:44:30.995026 fstat64(4, {st_mode=S_IFREG|0644, st_size=1363, ...}) = 0
17:44:30.995170 munmap(0xb7fc1000, 1363) = 0
17:44:30.995227 close(4) = 0
17:44:30.995286 write(1, "\n", 1) = 1
17:44:30.995407 write(1, "\n", 1) = 1
17:44:30.995482 munmap(0xb7fca000, 4096) = 0
17:44:30.995545 exit_group(0) = ?
Jun 12 17:06:07 debian dovecot: IMAP(dumitru): quotactl(Q_GETQUOTA, /dev/sda9) failed: Invalid argument
I guess this is wrong or something. I don't have quota enabled anywhere so I can't really test the code myself.
Regards, Dumitru