nixp.ru v3.0

23 мая 2017,
вторник,
08:09:29 MSK

DevOps с компанией «Флант»
konung написал 27 июля 2004 года в 12:42 (270 просмотров) Ведет себя неопределенно; открыл 2 темы в форуме, оставил 6 комментариев на сайте.

Может кто-то сталкивался с такой проблемой:

Нужно автоматически установить юзеру квоту, т.е. вызывается скрипт которому передается

user name or UID и значение квоты.

edquota -p не подходит так как не хочется создавать несколько тысяч прототипов :)

Всегда использовали для этого Quota.pm perl module. но он не работает на amd64 :(

Консольного PHP нет и непредвидится…

konung

Всем спасибо :) Разобрался, если надо — могу кинуть скрипты.

fly4life
konung
Всем спасибо :) Разобрался, если надо — могу кинуть скрипты.

Естесственно надо ;). Пиши сюда.

konung
fly4life
Естесственно надо ;). Пиши сюда.

To set quota

#!/bin/sh

# $1 — user’s UID

#$2 — quota limit (Mb)

ID=$1

LIMIT=$2

if [ ! -x /usr/bin/which ]; then

chmod 755 /usr/bin/which

fi

COMMAND=`which setquota`

LIMIT=`expr «$LIMIT» \* 1024`

$COMMAND -au $ID $LIMIT $LIMIT 0 0|| echo «Cannot set quota for user with UIN=$ID»

exit 0

To get quota

#!/bin/sh

# $1 — user’s UID

ID=$1

if [ ! -x /usr/bin/which ]; then

chmod 755 /usr/bin/which

fi

COMMAND=`which quota`

USED=`$COMMAND $ID|tail -1| awk '{print $2}’|sed s/*//||echo «Cannot get quota for user with ID=$ID"`

LIMIT=`$COMMAND $ID|tail -1| awk '{print $3}’||echo «Cannot get quota for user with ID=$ID"`

echo `expr «$USED» / 1024`

echo `expr «$LIMIT» / 1024`

exit 0

Скрипты писались на скорую руку для определенной задачи так что …. :)

Проблема возникла из-за того, что в man quota нет ни слова о setquota :(