Add to Favourites Add to Favourites    Print this Article Print this Article

Disk Usage is showing 0.00 or is too low

*** Note: If you're running a VPS with a "simfs" file system, quotas usually cannot be enabled with normal means.  Contact your VPS provider to enable quotas for you.

First type:

df -h

to see your partitions.
If you have a /home partition, then your quota_partition value will be /home.
If you have no /home partition, then your quota partition will likely be /.
In some cases, you might have a sybolic link:  /home -> /usr/home, in which case your quota_partition will be /usr.
Set the partition value here, as needed:

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 (do not make your's look identical if it's different, this is one example from a specific OS):

# Device                Mountpoint      FStype  Options            Dump    Pass#
/dev/ad0s1a             /               ext3     rw,usrquota,grpquota 1       1
/dev/ad0s1e             /tmp            ext3     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.

Or you may consider switching to journaled quota to avoid running quotacheck after an unclean shutdown.
In that case instead of ",usrquota,grpquota", add ",usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0" to your fstab file.

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


This task.queue command will get picked up by the dataskq binary.   It calls the repquota command and dumps it into /home/tmp/quota-dump.
Check /var/log/directadmin/errortaskq.log for any errors with this.
Running the tally manually for a User can also help with debugging these issues.



Information for a Support Request


If you're completely confused and are going to be contacting some support department about the issue, run these commands and paste them the full output from them:

cat /etc/fstab
df -h
mount
/usr/local/directadmin/directadmin c | grep quota_partition
/usr/local/directadmin/directadmin c | grep use_xfs_quota
repquota `/usr/local/directadmin/directadmin c | grep quota_partition= | cut -d= -f2`
ls -lad /home/tmp
ls -la /home/tmp


Was this answer helpful?

Also Read