| Server IP : 88.99.149.37 / Your IP : 216.73.216.141 Web Server : nginx/1.31.2 System : Linux server-88-99-149-37 6.12.0-124.56.5.el10_1.x86_64 #1 SMP PREEMPT_DYNAMIC Fri May 15 06:12:08 EDT 2026 x86_64 User : muralimurth ( 1015) PHP Version : 8.4.23 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/self/root/proc/1/root/usr/local/directadmin/scripts/ |
Upload File : |
#!/bin/sh
#This script will ensure that the quotas are set in the fstab file
echo "Checking quotas...";
FSTAB="/etc/fstab"
if [ -s ${FSTAB} ]; then
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+ext3[\ \t]+defaults[\ \t]+/\t\t\/home\t\t\text3\tdefaults,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+ext3[\ \t]+defaults[\ \t]+/\t\t\t\/\t\t\text3\tdefaults,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+ext4[\ \t]+defaults[\ \t]+/\t\t\/home\t\t\text4\tdefaults,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+ext4[\ \t]+defaults[\ \t]+/\t\t\t\/\t\t\text4\tdefaults,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+ext4[\ \t]+defaults,errors=continue[\ \t]+/\t\t\/home\t\t\text4\tdefaults,errors=continue,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+ext4[\ \t]+defaults,errors=continue[\ \t]+/\t\t\t\/\t\t\text4\tdefaults,errors=continue,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+ext3[\ \t]+errors=remount-ro[\ \t]+/\t\t\/home\t\t\text3\terrors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+ext3[\ \t]+errors=remount-ro[\ \t]+/\t\t\t\/\t\t\text3\terrors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+ext4[\ \t]+defaults,errors=remount-ro[\ \t]+/\t\t\/home\t\t\text4\tdefaults,errors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+ext4[\ \t]+defaults,errors=remount-ro[\ \t]+/\t\t\t\/\t\t\text4\tdefaults,errors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+ext4[\ \t]+errors=remount-ro[\ \t]+/\t\t\/home\t\t\text4\terrors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+ext4[\ \t]+errors=remount-ro[\ \t]+/\t\t\t\/\t\t\text4\terrors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+ext4[\ \t]+defaults[\ \t]+/\t\t\/home\t\t\text4\tdefaults,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+ext4[\ \t]+defaults[\ \t]+/\t\t\t\/\t\t\text4\tdefaults,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+xfs[\ \t]+defaults[\ \t]+/\t\t\/home\t\t\txfs\tdefaults,uquota,gquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+xfs[\ \t]+defaults[\ \t]+/\t\t\t\/\t\t\txfs\tdefaults,uquota,gquota\t/' $FSTAB
#run it again with a variance
if [ -e /etc/debian_version ]; then
/usr/bin/perl -pi -e 's/[\ \t]+\/home[\ \t]+ext3[\ \t]+defaults,errors=remount-ro[\ \t]+/\t\t\/home\t\t\text3\tdefaults,errors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/[\ \t]+\/[\ \t]+ext3[\ \t]+defaults,errors=remount-ro[\ \t]+/\t\t\t\/\t\t\text3\tdefaults,errors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/(\s)+\/home(\s)+ext4(\s)+errors=remount-ro(\s)+/\t\t\t\/home\t\t\text4\terrors=remount-ro,usrquota,grpquota\t/' $FSTAB
/usr/bin/perl -pi -e 's/(\s)+\/(\s)+ext4(\s)+errors=remount-ro(\s)+/\t\t\t\/\t\t\text4\terrors=remount-ro,usrquota,grpquota\t/' $FSTAB
fi
#hide the errors, it was confusing people
/bin/mount -o remount,rw /home 2> /dev/null 1> /dev/null
/bin/mount -o remount,rw / 2> /dev/null 1> /dev/null
echo "Running quotacheck"
/sbin/quotaoff -a 2> /dev/null
/sbin/quotacheck -cavugmf 2> /dev/null
/sbin/quotaon -a
echo "Done quotacheck"
fi
exit 0