Server IP : 85.214.239.14 / Your IP : 3.139.67.67 Web Server : Apache/2.4.62 (Debian) System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.18 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /proc/2/task/2/root/proc/3/root/proc/self/root/proc/2/cwd/usr/share/doc/quota/ |
Upload File : |
#include "config.h" #include <sys/types.h> #include <sys/quota.h> #include <errno.h> #include <stdio.h> #include "pot.h" static int copy_user_quota_limits(const char *block_device, uid_t from, uid_t to) { struct dqblk dq; if (quotactl(QCMD(Q_GETQUOTA, USRQUOTA), block_device, from, (caddr_t) & dq) == 0) { if (quotactl(QCMD(Q_SETQLIM, USRQUOTA), block_device, to, (caddr_t) & dq) == 0) { return (0); } else { errstr( _("copy_user_quota_limits: Failed to set userquota for uid %ld : %s\n"), to, strerror(errno)); return (1); } } else { errstr( _("copy_user_quota_limits: Failed to get userquota for uid %ld : %s\n"), from, strerror(errno)); return (1); } } tatic int copy_group_quota_limits(const char *block_device, gid_t from, gid_t to) { struct dqblk dq; if (quotactl(QCMD(Q_GETQUOTA, GRPQUOTA), block_device, from, (caddr_t) & dq) == 0) { if (quotactl(QCMD(Q_SETQLIM, GRPQUOTA), block_device, to, (caddr_t) & dq) == 0) { return (0); } else { errstr( _("copy_group_quota_limits: Failed to set groupquota for gid %ld : %s\n"), to, strerror(errno)); return (1); } } else { errstr( _("copy_group_quota_limits: Failed to get groupquota for gid %ld : %s\n"), from, strerror(errno)); return (1); } } main(int argc, char **argv) { gettexton(); copy_user_quota_limits("/dev/hda8", 152, 151); }