У меня есть отдельный / домашний раздел с файловой системой ext4. У меня около 200 пользователей, чьи имена имеют общий префикс (например, 2010 ...). Мне нужно выделить 500 МБ пространства (жесткое ограничение) для домашнего каталога каждого пользователя. Вместо того, чтобы указывать пробелы один за другим, я хочу установить лимит за один раз, используя префикс имени пользователя. Как это сделать?
Один из способов - создать пользователя шаблона, используя edquota, чтобы установить квоту для этого пользователя шаблона. Затем используйте setquota -p template_user -u real_user /filesystem
назначить настройки квоты template_user
к real_user
:
Что-то вроде этого может сработать для вас.
cat /etc/passwd | cut -d: -f 1 | grep ^prefix | \
xargs -I{} -n 1 setquota -p template_user -u {} /filesystem
Вы можете создать файл со списком пользователей и настройками, чтобы использовать параметр --batch. Создайте файл, который выглядит как
user1 block-softlimit block-hardlimit inode-softlimit inode-hardlimit
user2 block-softlimit block-hardlimit inode-softlimit inode-hardlimit
user4 block-softlimit block-hardlimit inode-softlimit inode-hardlimit
user5 block-softlimit block-hardlimit inode-softlimit inode-hardlimit
user5 block-softlimit block-hardlimit inode-softlimit inode-hardlimit
Затем используйте команду вроде cat above_file | setquota--batch /filesystem
Есть много разных способов взломать быстрый скрипт, просто проверьте страница руководства setquota.