hi there, i got a minor issue with my installation. quotaon -apv tells me that quotas are succesfully enabled on the partition the website dirs reside on. repquota -aus even shows the quotas set up correctly for the web users. but this is not reflected on the web interface. navigating to "website quota (harddisk)" lists no websites at all. i fired up a fresh ec2 instance and installed ispc just to check and of course it works with this vanilla installation. so the error s gotta be on my side. any ideas?
Is quota enabled for the partition that contains the websites? ISPConfig queries the quota values with: repquota -avug
the setup is as follows. root partition with no quota. second partition with luks container mounted after boot cause ec2 instances aint givin me no console. services are programmatically started after this initial manual mount. quota on that second ext4 partition, containing vmail and www. bindmout /path/{vmail,www} to /var/{vmail,www}. repquota -augs shows the correct lmits for the clients-web on that partition. do i have to enable quotas on root as well, even though there is no client data?
i see. well, i guess i ll have to digg a little for myself. just to speed up that very process. i suppose ispc checks the quota via cronjob (which php script does it exactly?is it checked daily or minutely?). afterwards the results should be written to database, right? what are the relation(s) in dbispconfig where quotas are stored?
The php script is the server.php, it runs once a minute, but the monitor part nside is only executed every 5 minutes. You can find the code of the monitoring functions in /usr/local/ispconfig/server/lib/classes/monitor_tools.inc.php. Yes, the table is named monitor_data The quota is stored as serailized php array like all monitor data. So there are no direct database relations. The realtion between the website and quota is the username of the website.
ok. we have a public method monitorHDQuota, which is executing repquota -au and repquota -ag respectively. the first 5 lines are cut off, first field is taken as username, substing must match web, empty lines are ignored. per user quotas are then added to a multidim array $data and returned. just a guess. repquota -a spits out quotas for all filesystems. so lets say you have two fs with quotas, p.e. /home and /var/www. repquota would first show quotas for home, no customer data there. then you get two empty lines and the quotas for the next fs, in this case the device which is mounted on /var/www. does the method parse the string data in this case as intended? (i guess it does as it is trying to sum up userquotas) i do have entries in relation "monitor_data" though. i got a tuple with type "harddisk_quota" and a serialized "data" value for the "web*" users dated back an hour ago. unserializing shows the correct quota. so it should show that data on the website, no?
Yes, it should show the quota in the interface then as the monitor_data table is the source of the quota view. the script that displays the quota is /usr/local/ispconfig/interface/web/sites/user_quota_stats.php
i do get the below error in my logs: "mod_fcgid: stderr: PHP Warning: vlibTemplate Warning: Invalid loop structure passed to vlibTemplate::setLoop() (loop name: records). in /usr/loc al/ispconfig/interface/lib/classes/tpl_error.inc.php on line 83" is this somehow related?