Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set storage quotas for Groups #51

Open
enoch85 opened this issue Apr 10, 2017 · 23 comments
Open

Set storage quotas for Groups #51

enoch85 opened this issue Apr 10, 2017 · 23 comments
Labels
2. developing Work in progress enhancement New feature or request

Comments

@enoch85
Copy link
Member

enoch85 commented Apr 10, 2017

It would be nice if we could implement quiotas for Groups in the same way as it's possible to set quotas for users.

-----------

EXAMPLE
User A belongs to Group A
User B belongs to Group A
User C belongs to Group B
User D belongs to group B
User E has no group but is limited to 20 GB

Group Quota Group B = 50 GB
Group Quota Group A = 100 GB

User A + B shares 100 GB among themselves
User C +D shares 50 GB among themselves
User E is limited to 20 GB for him/herself

-----------

This is previously a requested feature in ownCloud since 2013: owncloud/core#1347

@enoch85 enoch85 added the enhancement New feature or request label Apr 10, 2017
@rullzer
Copy link
Member

rullzer commented Apr 10, 2017

How would this look then if User F is a member of Group A and Group B.

  • Is the quota the max?
  • Does it add up?
  • And more importantly from which group quota is the quota deducted if they upload a file?

@enoch85
Copy link
Member Author

enoch85 commented Apr 10, 2017

@rullzer

Is the quota the max?

The quota is the maximum, yes

Does it add up?

Not sure what you mean by "add up", but if User F joins Group A and Group B then User F get totally 150 GB shared among the other users in those Groups.

And more importantly from which Group quota is the quota deducted if they upload a file?

Didn't think of that, but what about a master Group? I know that @jancborchardt isn't a fan of settings but it should be controllable somehow. Or maybe equally from each Group, so that if User F is a member of three Groups (100 GB in total among the three Groups) and uploads a file of 9 GB to his user, it would deduct 3 GB from each Group he is a member of. Still all files would be saved to the users data folder, so if he/she leaves the Group the quota would disappear and be re-set to the specific user instead. Idk, brainstorming here.

Anyway, a first step would be to develop the possibility to do quotas for Groups in general, and in the first stage it should only be possible to add a user to 1 Group that has a set quota.

What I'm getting at here is that if you have a shared cloud, you want to divide users into their company and set the quota for the company rather than the specific user.

@cal940
Copy link

cal940 commented Apr 13, 2017

Does it add up?

I would say no. I have an Synology NAS at home and only the highest qroup quota counts (if no user quota is set).

Example: User A is in group A and group B.

  • Group A: 10 GB
  • Group B: 5 GB

The quota from group A (10 GB) counts.

Also it's possible to set a custom user quota. If you do so only this user quota counts.

And more importantly from which Group quota is the quota deducted if they upload a file?

  • No user quota: highest group quota
  • with user qouta: only the user quota

Does it add up?

No, only the highest group quota or the user quota counts.

@cal940
Copy link

cal940 commented Apr 16, 2017

Also nice would be an option to assign groups admin privileges to a group and not only to a user (see nextcloud/server#4360)

@styx-tdo
Copy link

styx-tdo commented Apr 25, 2017

i think the group model needs revaming.
Suggestion: Groups give a specific limit and are limited to x users (e.g. group A 10G, 10 users -> max 100G usage in total)
In create user or user view, add "maximum (group has xxx GB) in the dropdown for admins
so, User X is an admin of group A and can add users with 10G limit.
User X may be a member of group D, that has 100G limit, nevertheless

I think groups have: limit per user, user limit
only superadmins can create groups and assign one (or more) admins
admins can create users in a group with max the group limit

if user Y is admin of group a (10G,10 users) and b (50G, 5 users), he can set the quota of all A users to up to 10G, all B users up to 100. Also, he can add himself to group a or b.

Highest limit counds - if someone is member of a and b, the max is 50G

Group change: on group change, quota needs to be recalculated. If a user has exceeded the new limit, he should be notified.

@Matthewcloud

This comment was marked as duplicate.

@ynott

This comment was marked as duplicate.

@manwegit
Copy link

Just to add my 2cents worth.
I'm already using owncloud and nextcloud with quota restricted "groups".
The user home is either with really low quota or read-only (with owncloud app).
I have "diskusers" that don't belong to any particular user. These users have quotas depending on the type of usage and folders from them are shared for a group.
Now when you add user to a group it automatically gets the shared folder and inside that folder is the origin "diskusers" quota.

User can belong to multiple groups and all of them have different limits.
So the available space for real user is sum of what is left of the quota limit on all shares/groups the user belongs to.

@GitHubUser4234
Copy link

GitHubUser4234 commented May 26, 2017

In my case I would like to have group quotas that are shared in a way that all group members get a slice of the group quota. The group admin decides how big a slice a group member gets by setting the member's user quota. The goal is to avoid certain members to eat up all the group quota at the expense of others.

From the above discussion alone it can be seen that there are various requirements and ideas on how group quotas should be implemented. It would certainly be great to see some configuration options in that regard.

@bpcurse
Copy link

bpcurse commented Jun 9, 2017

I have submitted a similar request regarding the app "groupfolders", with another example how the management of storage quotas for folders could be done. The principle is similar.

nextcloud/groupfolders#17

@MorrisJobke
Copy link
Member

Similar to the quota for the whole instance: nextcloud/server#2016

@DrEVILish
Copy link

I'd like to Request this feature again, I have a use case where I have 3 User Groups each with different levels of available storage/permissions.
I currently have to set each users quota manually. I'd like to say each member of a Group gets X GB Quota

User levels:
Standard - 1GB
Pro - 5GB
Ultimate - 100GB

@cl4x
Copy link

cl4x commented Feb 2, 2019

I have similar request, because if more users share few large folder, the managing of single user quota is difficulty, i prefer manage a group TOTAL SUM quota.
A little asynchronous method with OCC_Web is in nextcloud/server#13993

@joe-average-user
Copy link

My 2cts:
A plain and simple solution should be possible:
Group quota as a maximum for all included users.
User A Group X
User B Group X
User C Group Y
User D Group X,Y

Group quota X 100 GB
Group quota Y 200 GB

Quota for A + B MAX 100 GB
Quota for C MAX 200 GB
Quota for D MAX 200 GB
All users are summed at the highest Group quota, the lower Group Quota is simply ignored.
If D uses 150 GB and leaves Group Y, he stays in Group X and fills the quota.
Drawback: The Quotas in sum can be overridden in such a case, nevertheless every corner case is clearly managed.

@joe-average-user
Copy link

BTW the groupquota app (0.1.0) does not work. Shows correct values in the User Admin Interface, but fails during uploads.

@sachaz

This comment was marked as duplicate.

@bpcurse
Copy link

bpcurse commented Jan 27, 2020

FTR: The above mentioned app can be found here and is v0.1.2 as of now:
https://github.com/nextcloud/groupquota

@michel-thomas
Copy link

Integrated but when using it, it replace personnal quota in UI. So impossible to see what is personnal quota, and the whole group shows the same quota and usage.

I suggest to have a separate view for group quota instead of replacing personnal quota view.

@chiragob
Copy link

Add GroupQuota as App

Create two group Company1, Company2 and set quota to each group using OCS-APIRequest

curl -u admin:admin -H 'OCS-APIRequest: true' http://localhost/nextcloud/index.php/apps/groupquota/quota/Company1 -X POST -d 'quota=2MB'
curl -u admin:admin -H 'OCS-APIRequest: true' http://localhost/nextcloud/index.php/apps/groupquota/quota/Company2 -X POST -d 'quota=3MB'

its works for me

@GoudronViande24
Copy link

The GroupQuota app does not work for me, and there is no easy way to manage it since you have to update the settings through curl... And it also does not work for me, curl always gives me an error when I want to change the quota.

@luminous706
Copy link

The GroupQuota app does not work for me either, can't set a quota of 0, and managed through API is painful.

@purejosh
Copy link

purejosh commented Sep 5, 2024

Unfortunately, GroupQuota is not a good solution. Managing something through API is ridiculous, when the entire system is UI based. I believe a group quota should be added natively.

@joshtrichards joshtrichards transferred this issue from nextcloud/server Sep 23, 2024
@joshtrichards joshtrichards added the 2. developing Work in progress label Sep 23, 2024
@joshtrichards
Copy link
Member

Unfortunately, GroupQuota is not a good solution. Managing something through API is ridiculous, when the entire system is UI based. I believe a group quota should be added natively.

Subscribe/upvote #9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2. developing Work in progress enhancement New feature or request
Projects
None yet
Development

No branches or pull requests