Manpages

NOME

quotactl − manipula as quotas de disco

SINOPSE

#include <sys/types.h>
#include <sys/quota.h>

int quotactl (int cmd, const char *special, int id , caddr_t addr);

#include <linux/unistd.h>

_syscall4(int, quotactl, int, cmd, const char *, special , int, id, caddr_t, addr);

DESCRIÇÃO

O sistema de quotas define para cada usuário e/ou grupo um limite flexível e um limite inflexível restringindo a quantidade de espaço em disco que pode ser usado em um sistema de arquivos. O limite inflexível não pode ser cruzado. O limite flexível pode ser cruzado, mas avisos virão. Além disso, o usuário não pode ficar acima do limite flexível por mais que uma semana (padrão) em um determinado tempo: depois desta semana o limite flexível funciona com um limite inflexível.

A chamada de sistema quotactl manipula esta quota. Seu primeiro argumento é da forma QCMD(subcmd,type) onde type é um dos dois USRQUOTA ou GRPQUOTA (para quota de usuário e grupo, respectivamente), e subcmd é descrito abaixo.

O segundo argumento special é um dispositivo de bloco onde será aplicada a quota. Ele deve estar montado.

O terçeiro argumento id é a ID do usuário ou grupo que esta quota será aplicada (quando relevante).

o quarto argumento addr é o endereço da estrutura de dados, dependendo do comando.

O subcmd é um dos

Q_QUOTAON

Habilita quotas. O addr argumento é o caminho de busca do arquivo contendo as quotas para o sistema de arquivos.

Q_QUOTAOFF

Desabilita quotas.

Q_GETQUOTA

Obtém limites e uso corrente do espaço de disco. o argumento addr é um ponteiro para uma estrutura dqblk (definida em <sys/quota.h>).

Q_SETQUOTA

Seleciona limites e uso atual; addr é como antes.

Q_SETQLIM

Seleciona limites; addr é como antes.

Q_SETUSE

Seleciona o uso.

Q_SYNC

Sincroniza uma cópia do disco para um sistema de arquivos quota.

Q_GETSTATS

Obtém estatísticas.

VALORES RETORNADOS

Em caso de sucesso, quotactl retorna 0. Caso contrário, −1 é retornado, e errno é selecionado adequadamente.

ERROS

ENOPKG

O kernel foi compilado sem suporte para quotas.

EFAULT

Valor addr ruim.

EINVAL

tipo não é um tipo de quota conhecido. Ou, special não pode ser achado.

ENOTBLK

special não é dispostivo de bloco.

ENODEV

special não pode ser achado na tabela de montagem.

EACCES

O arquivo quota não é um arquivo ordinário.

EIO

Não se pode ler ou escrever no arquivo quota.

EMFILE

Muitos arquivos abertos: não pode abrir o arquivo de quota.

EBUSY

Q_QUOTAON foi questionado, mas quota já está habilitado.

ESRCH

Q_GETQUOTA ou Q_SETQUOTA ou Q_SETUSE ou Q_SETQLIM foi questionado por um sistema de arquivos que não tem quota habilitada.

EPERM

O processo não é do super-usuário (para o sistema de arquivos), e Q_GETQUOTA foi questionado por outra id que aquele mesmo do processo, ou qualquer coisa a não ser Q_GETSTATS ou Q_SYNC foi questionada.

DE ACORDO COM

BSD

VEJA TAMBÉM

quota(1), getrlimit(2), setrlimit(2), ulimit(2), quotacheck(8), quotaon(8)

TRADUZIDO POR LDP-BR em 21/08/2000

André L. Fassone Canova <lonelywolf [AT] blv.br> (tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx [AT] xxxxxx.xx> (revisão)