DirectAdmin relies on the system quotas to return a value for how much space is being used. DirectAdmin will run
| /usr/sbin/repquota /home |
Where /home is the quota_partition value set in the /usr/local/directadmin/conf/directadmin.conf file (eg, /home, / or /usr). The command should output a large list of numbers, eg
| [root@server]# /usr/sbin/repquota /home *** Report for user quotas on device /dev/hda3 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ———————————————————————- root — 417796 0 0 7446 0 0 nobody — 4 0 0 1 0 0 bin — 56880 0 0 510 0 0 majordomo — 8 0 0 2 0 0 diradmin — 8 0 0 2 0 0 admin — 200 0 0 44 0 0 user123 — 100 0 0 22 0 0 user456 — 100 0 0 22 0 0 |
If the “used” column is not showing anything, or users are not in the list, then you’ll need to run the quotacheck program:
Redhat:
| /sbin/quotaoff -a; /sbin/quotacheck -avugm; /sbin/quotaon -a; |
FreeBSD:
| /usr/sbin/quotaoff -a; /sbin/quotacheck -avug; /usr/sbin/quotaon -a; |
If are getting errors and no output is displayed for the repquota command, you’ll need to check your /etc/fstab file to make sure that it contains the rw,userquota,groupquota line beside the partition that is using the quotas.
*Important: On Linux (Redhat/Debian), it’s usrquota,grpquota, and on FreeBSD it’s userquota,groupquota.
Sample /etc/fstab:
| # Device Mountpoint FStype Options Dump Pass# /dev/ad0s1a / ufs rw,userquota,groupquota 1 1 /dev/ad0s1e /tmp ufs rw 2 2 proc /proc procfs rw 0 0 |
In this case, the quota_partition is /. The quota partition should be the partition that holds your users. Generally, this will be one of /home, / or /usr.
Once the repquota program is returning a normal value, then you can run the tally to get the correct usage to show up in DirectAdmin:
| echo “action=tally&value=all” >> /usr/local/directadmin/data/task.queue |