*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> quotactl (2)              
Title
Content
Arch
Section
 

quotactl(2)

Contents


NAME    [Toc]    [Back]

       quotactl - Manipulate disk quotas

SYNOPSIS    [Toc]    [Back]

       #include <sys/quota.h>

       int quotactl(
               char *path,
               int cmd,
               int id,
               char *addr );

PARAMETERS    [Toc]    [Back]

       Specifies the pathname of any file within the mounted file
       system.  Specifies  a  command  for  interpreting  the  id
       parameter.  Specifies the user or group identifier.  Specifies
 the address of an  optional,  command-specific  data
       structure  that  is  copied  in  or out of the system. The
       interpretation of the addr parameter is  given  with  each
       command.

DESCRIPTION    [Toc]    [Back]

       The quotactl() function is used to enable and disable quotas
 and to manipulate disk  quotas  for  file  systems  on
       which quotas have been enabled.

       Quotas  are  supported  for the UNIX file system (UFS) and
       the Advanced File System (AdvFS).

       A command is composed of a primary command (see below) and
       a command type that is used to interpret the id parameter.
       Types are supported for interpretation of user identifiers
       (type USRQUOTA) and group identifiers (type GRPQUOTA). The
       cmd argument is composed from a type and a  specific  command
  with  the  QCMD macro. For example, to get the quota
       limits and usage for a group, the cmd  argument  would  be
       formed by:

       cmd=QCMD(Q_GETQUOTA, GRPQUOTA);

       Note that block sizes are in DEV_BSIZE (that is, 512) byte
       blocks.

       The specific commands are: Enable disk quotas for the file
       system  specified by the path parameter.  The command type
       specifies the type of the quotas being enabled.  The  addr
       parameter  specifies a file from which to take the quotas.
       The quota file must exist; it is normally created with the
       quotacheck program. The id parameter is unused. Only users
       with superuser privilege can turn on quotas.  Disable disk
       quotas  for  the file system specified by the path parameter.
  The command type specifies the type  of  the  quotas
       being  disabled.  The  addr  and id parameters are unused.
       Only users with superuser privilege can turn  off  quotas.
       Get  disk  quota  limits and current usage for the user or
       group (as determined by the command type) with  identifier
       id.  The  addr  parameter  points  to a dqblk32 structure,
       which is defined in the  <quota.h>  header  file.   Quotas
       must  be  enabled  on  the file system for this command to
       work.  Set disk quota limits for the  user  or  group  (as
       determined  by  the  command type) with identifier id. The
       addr parameter points to a  dqblk32  structure,  which  is
       defined  in  the  <quota.h>  header  file.  Quotas must be
       enabled on the file system for this command to  work.  The
       usage  fields  of  the dqblk32 structure are ignored. This
       function is restricted to processes with superuser  privilege.
   Set  disk  usage  limits for the user or group (as
       determined by the command type) with  identifier  id.  The
       addr  parameter  points  to  a dqblk32 structure, which is
       defined in the  <quota.h>  header  file.  Only  the  usage
       fields  are used. This function is restricted to processes
       with superuser privilege.   Update  the  on-disk  copy  of
       quota  usages.  The  command  type specifies which type of
       quotas are to be updated. The id and addr  parameters  are
       ignored.   Returns  quota information for the file system,
       including flags that specify whether user quotas or  group
       quotas are enabled and whether large quotas are supported.
       The addr parameter points to an int value, and  the  flags
       are  defined in the <quota.h> header file.  Get disk quota
       limits and current usage for the user or group (as  determined
  by  the  command type) with identifier id. The addr
       parameter points to a dQBlk64 structure, which is  defined
       in  the  <quota.h> header file.  Set disk quota limits for
       the user or group (as determined by the command type) with
       identifier  id.  The  addr  parameter  points to a dQBlk64
       structure, which is defined in the <quota.h> header  file.
       Set disk usage limits for the user or group (as determined
       by the command type) with identifier id. The addr  parameter
 points to a dQBlk64 structure, which is defined in the
       <quota.h> header file.

NOTES    [Toc]    [Back]

       AdvFS file domains created by Tru64 UNIX  Version  5.0  or
       higher  systems  can  support filesets with increased user
       and group quota limits,  as  the  on-disk  structure  that
       holds  the  limits  has increased from 4 bytes to 8 bytes.
       However, AdvFS file domains created by Tru64 UNIX  systems
       earlier  than  Version  5.0 can only support filesets with
       the smaller user and group quota limits. For  example,  if
       you  add a fileset to an AdvFS file domain that itself was
       created by Digital UNIX Version 4.0, the fileset  has  the
       smaller user and group quota limits.

       The root user can exceed user and group quotas.

RETURN VALUES    [Toc]    [Back]

       Upon  successful completion, 0 (zero) is returned.  Otherwise,
 -1 is returned and errno  is  set  to  indicate  the
       error.

ERRORS    [Toc]    [Back]

       If  the quotactl() function fails, errno may be set to one
       of the following values: Q_QUOTAON: the quota file is  not
       a plain file.

              Search  permission  is  denied for a component of a
              path prefix.  Q_QUOTAOFF: an attempt has been  made
              to remove a file during this operation.  Q_QUOTAON:
              the quota file resides on a read-only file  system.
              Q_GETQUOTA:  one  or more of the quota limits being
              returned is larger than 2 Tb.

              Q_SETQUOTA64 or Q_SETUSE64:  an  attempt  has  been
              made  to set one or more of the quota limits larger
              than 4 bytes on a fileset  that  does  not  support
              larger  quota limits.  An invalid addr is supplied;
              the associated structure could not be copied in  or
              out of the kernel.

              The  path  parameter  points  outside the process's
              allocated address space.  The cmd parameter or  the
              command type is invalid.

              A pathname contains a character with the high-order
              bit set.

              Q_GETQUOTA or Q_SETQUOTA: the command was attempted
              on  a file system that did not have quotas enabled.
              An I/O error occurred while reading from or writing
              to  a  file  containing  quotas.  Too many symbolic
              links were encountered in translating  a  pathname.
              A  component  of the pathname exceeded NAME_MAX, or
              the  entire  length  of   the   pathname   exceeded
              PATH_MAX.  A file name does not exist.  A component
              of a path prefix is not a  directory.   The  kernel
              has  not  been compiled with the QUOTA option.  The
              call is privileged and the  caller  does  not  have
              appropriate  privilege.   The quota table cannot be
              expanded.

SEE ALSO    [Toc]    [Back]

      
      
       Commands: quota(1), edquota(8), quotacheck(8), quotaon(8),
       repquota(8)



                                                      quotactl(2)
[ Back ]
 Similar pages
Name OS Title
quota HP-UX disk quotas
edquota HP-UX edit user disk quotas
quotactl NetBSD manipulate filesystem quotas
quotactl OpenBSD manipulate filesystem quotas
quotactl FreeBSD manipulate file system quotas
VFS_QUOTACTL FreeBSD manipulate file system quotas
edquota Tru64 Edits quotas.
disklabel Tru64 Reads and writes a disk pack label and formats disk partitions
edquota FreeBSD edit user quotas
quotaon OpenBSD turn filesystem quotas on and off
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service