I think this is a bug. I was trying quota on 32bits VE's. The HN is 64bits. Now I installed a 64bit VE and quota worked. To make sure this have to do with the problem, i download both ubuntu precreated images (amd64 and i386 - on openvz.org). Quota works fine on amd64 and does not work on i386.
Here is the last lines of the strace output on a i386 VE:
open("/etc/mtab", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=258, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fdf000
read(3, "/dev/simfs / reiserfs rw,usrquot"..., 4096) = 258
statfs64("/", 84, {f_type="EXT2_SUPER_MAGIC", f_bsize=4096, f_blocks=2097152, f_bfree=2058467, f_bavail=2058467, f_files=800000, f_ffree=791992, f_fsid={-1891294066, 1551446465}, f_namelen=255, f_frsize=4096}) = 0
stat64("/dev/simfs", {st_mode=S_IFBLK|010, st_rdev=makedev(0, 18), ...}) = 0
stat64("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
read(3, "", 4096) = 0
close(3) = 0
munmap(0xb7fdf000, 4096) = 0
stat64("/dev/simfs", {st_mode=S_IFBLK|010, st_rdev=makedev(0, 18), ...}) = 0
getuid32() = 0
quotactl(0xd00 /* Q_??? */|USRQUOTA, "/dev/simfs", 0, 0xbfcd49d4) = 0
quotactl(0x900 /* Q_??? */|USRQUOTA, "/dev/simfs", 0, 0xbfcd4e0c) = 0
geteuid32() = 0
quotactl(0xd00 /* Q_??? */|USRQUOTA, "/dev/simfs", 0, 0xbfc94de8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Process 439 detached
|