I've hacked on QuotaMonitorMenu to better suit our own needs. The original version only supported "quotas" for network drives where each home directory was it's own volume. In other words, it just checked the disk/volume size of the home folder and used that as the "quota".
While this works in many settings, it doesn't work with actual OS X disk quotas, and it doesn't work with NFS quotas based on rquotad. In our environment, all home directories are subdirectories of a single volume, and so disk or volume size isn't useful. We use netapps, which use rquotad.
Fortunately, the system call for checking quotas, quotactl(), seems to have internal support for rquotad as of 10.5. Putting aside issues of high-level protocols built into system calls, this is great (or at least really convenient). This version of QuotaMenuMonitor uses both quotactl() to check quotas, although it still supports disk size if no quotas are implemented. It works with separate hard and soft quotas, and it also works if only hard quotas are implemented.
Preferences have also been added, allowing you to set levels for the alert pop-up, and for the change to red color. These can be set as a percentage of the quota, or in kilobytes or megabytes. You can also specify polling times.
And cosmetically, the long text in the menu bar has been replaced with a house icon, with the percentage in side of it.
Alerts now move to the top of all other windows when the alert occurs, (but not when disk is rechecked; next version) and when the user clicks on the menu.
Proper Spaces support is lacking at this time.
No quotas, just report volume size
Only Hard Quotas, also shows red icon used when above warning limit.
Soft and Hard quotas in place
With soft quotas, the percentage is relative to the soft limit,
so it can be over 100%.
QMM notices if the disk is smaller than the quota. Also note
the varying units.
The Alert dialog. The text varies slightly depending on type of quota.
Preferences
"What is this" dialog. Text varies depending on type of quota.
We install it on all machines so that it is started for all logins. To do this we put in create a plist file in /Library/LaunchAgents. Here is a copy of the .plist we use. Note that we install the Application in /Library/Application Support - if you install it elsewhere then you'll need to edit that part of the plist file.
No comments
More Mac OS X Stuff
Fine's Home |
|
Send Me Email |