اگر در صفحه List Accounts پنل WHM، ستون Quota برای همه اکانت ها عبارت Unlimited را نشان می دهد، در حالی که پکیج های 2 یا 5 گیگابایتی تعریف کرده اید، باید وضعیت سهمیه دیسک در سیستم عامل را بررسی کنید. وقتی هم زمان ستون Disk Used نیز مصرف را بسیار کمتر از اندازه واقعی فایل ها نمایش می دهد، غیرفعال بودن Quota روی پارتیشن اکانت ها یکی از علت های مهم است. برای مثال، اکانتی که حدود 500 مگابایت فایل دارد ممکن است در WHM تنها 10 مگابایت مصرف نشان دهد.
راه حل کوتاه برای سناریوی XFS: ابتدا با findmnt و xfs_quota وضعیت پارتیشن را بخوانید. اگر noquota دیده می شود، ابزار رسمی fixquotas را اجرا کنید. در صورت درخواست سی پنل، سرور را در زمان مناسب ریبوت کنید؛ سپس فعال بودن Accounting و Enforcement را تایید و سهمیه اکانت ها را همگام کنید. رفع مشکل Quota در سی پنل بدون این تایید نهایی کامل نیست.
این راهنما بر پایه یک نمونه واقعی با پارتیشن جداگانه /home از نوع XFS و محیط CloudLinux تهیه شده است. خروجی های تشخیص و اجرای ابزار اصلاح واقعی هستند؛ خروجی سالم بعد از ریبوت در این مقاله، نمونه مورد انتظار است و گزارش نتیجه نهایی همان سرور محسوب نمی شود.
Quota در سی پنل چیست و چه تفاوتی با Disk Used دارد؟
Quota سقف فضای مجاز یک حساب است و Disk Used مقدار مصرف گزارش شده آن حساب را نشان می دهد. پکیج در WHM الگوی محدودیت ها را مشخص می کند، اما اعمال سهمیه فایل ها به پشتیبانی هسته و وضعیت فایل سیستم نیز وابسته است. بنابراین ساخت یک پکیج 2048 مگابایتی به تنهایی ثابت نمی کند که سیستم عامل این محدودیت را اجرا می کند.
این تفاوت برای مدیران نمایندگی هاست cPanel مهم است: تنظیم پلن در WHM با فعال بودن Quota در سطح سرور دو موضوع جدا هستند. اگر همه حساب ها ناگهان Unlimited شده اند، تغییر دستی تک تک پکیج ها اولین قدم مناسبی نیست؛ ابتدا لایه مشترک یعنی پارتیشن و سیستم عامل را بررسی کنید.
| نشانه | احتمال مهم | بررسی اولیه |
|---|---|---|
| همه حساب ها Unlimited و مصرف ها غیرواقعی هستند | Quota روی پارتیشن اکانت ها فعال نیست | findmnt و xfs_quota |
| فقط یک حساب Unlimited است | سهمیه همان حساب یا پکیج آن متفاوت است | Quota Modification و پکیج حساب |
| سهمیه درست است، اما مصرف یک حساب کم است | مالکیت فایل ها، مسیر ذخیره یا اختلاف روش محاسبه | du، quota و بررسی مالک فایل |
| مصرف پایگاه داده با ابزار سیستم عامل فرق دارد | فایل های دیتابیس به کاربر mysql تعلق دارند | گزارش Database Disk Usage در cPanel |
پیش از رفع مشکل Quota در سی پنل چه چیزهایی لازم است؟
دستورهای اصلاح سرور به دسترسی root از طریق SSH یا Terminal در WHM نیاز دارند. کاربر عادی هاست و اغلب نمایندگان نمی توانند mount، تنظیم بوت یا سهمیه کل سیستم را تغییر دهند. اگر نمایندگی هاست لینوکس دارید و دسترسی شما محدود است، خروجی و نشانه ها را برای مدیر اصلی سرور ارسال کنید.
پیش از تغییری که به بوت یا ریبوت مربوط می شود، از وجود بکاپ معتبر و راه دسترسی به کنسول سرور مطمئن شوید. ریبوت همه سایت ها، ایمیل و اتصال SSH را موقتاً قطع می کند؛ آن را هنگام بکاپ، انتقال حساب یا عملیات حساس اجرا نکنید. همچنین با df -hT وضعیت فضای آزاد را بخوانید تا پر بودن واقعی دیسک را با خطای نمایش سهمیه اشتباه نگیرید.
نوع سیستم عامل و فایل سیستم، مسیر اصلاح را تعیین می کند. این آموزش برای XFS است و نباید دستورهای اختصاصی آن را روی ext4 یا محیط های کانتینری اجرا کرد. اگر به تفاوت محیط های هاستینگ نیاز دارید، راهنمای توزیع های لینوکس مناسب سرور به شناخت سیستم عامل کمک می کند.
مرحله اول: پارتیشن واقعی اکانت ها را پیدا کنید
این دستور فقط اطلاعات mount را می خواند:
findmnt -T /home -o SOURCE,TARGET,FSTYPE,OPTIONS
در نمونه مورد بررسی، خروجی به این شکل بود؛ گزینه های غیرضروری برای خوانایی کوتاه شده اند:
SOURCE TARGET FSTYPE OPTIONS
/dev/mapper/almalinux-home /home xfs rw,relatime,...,noquota
noquota نشان می دهد Quota روی این mount فعال نیست. ستون TARGET نیز ثابت می کند که /home یک پارتیشن جداگانه است. اگر TARGET برابر / باشد، home داخل فایل سیستم ریشه قرار دارد و باید وضعیت Quota ریشه را هم بررسی کنید. برای اکانت هایی که روی /home2 یا مسیر دیگری هستند، دستور را با مسیر واقعی همان اکانت اجرا کنید.
مرحله دوم: Accounting و Enforcement را بررسی کنید
xfs_quota -x -c 'state' /home
در نمونه واقعی، این دستور هیچ گزارشی نمایش نداد و همراه با noquota غیرفعال بودن سهمیه روی پارتیشن را تایید کرد. اگر خروجی خالی است اما دستور قبلی را ندارید، به تنهایی نتیجه گیری نکنید؛ وجود ابزار، فایل سیستم و مسیر mount را نیز کنترل کنید.
در گزارش سالم User quota، Accounting: ON یعنی سیستم مصرف را ثبت می کند و Enforcement: ON یعنی محدودیت ها را اعمال می کند. Group quota یا Project quota ممکن است خاموش باشند؛ برای این سناریوی حساب های cPanel، وضعیت User quota محور بررسی است.
مرحله سوم: تفاوت fstab با وضعیت فعلی را تشخیص دهید
cat /etc/fstab
در همان سرور، تنظیمات دائمی این دو خط را داشت:
/dev/mapper/almalinux-root / xfs defaults,uquota 0 0
/dev/mapper/almalinux-home /home xfs defaults,uquota 0 0
با وجود uquota در فایل، mount فعال هنوز noquota بود. پس نوشتن تنظیم دائمی با فعال شدن آن در نشست فعلی یکسان نیست. وقتی حسابداری Quota در XFS خاموش است، یک remount ساده آن را روشن نمی کند؛ فایل سیستم باید با گزینه مناسب از نو mount شود. روی سرور فعال، جدا کردن home بدون مدیریت سرویس ها می تواند سایت ها را مختل کند.
برای سناریویی که fstab از قبل درست است، نیازی به ویرایش دوباره آن نیست. اگر گزینه ها یا مسیرها متفاوت هستند، ابتدا همان اختلاف را بررسی کنید. تنظیم بوت ریشه نیز با پارتیشن جداگانه home تفاوت دارد؛ دستورهای عمومی برای بازنویسی GRUB را بدون شناخت نسخه سیستم عامل و روش بوت اجرا نکنید.
مرحله چهارم: ابزار رسمی fixquotas را اجرا کنید
/usr/local/cpanel/scripts/fixquotas
این ابزار مسیر رسمی سی پنل برای بررسی و اصلاح زیرساخت سهمیه هاست. در خروجی واقعی، سی پنل وجود پشتیبانی هسته و ابزارهای کاربری را تشخیص داد، تنظیمات پارتیشن ها را بررسی کرد و سپس برای CloudLinux تنظیم سهمیه در بوت را به روز کرد. بخش های مهم خروجی چنین بودند:
Updating Quota Files..........Done
Quotas have been enabled and updated.
CloudLinux system detected: adding/checking 'rootflags=uquota' ...
Adding arguments to every kernel's boot entry using the "grubby" command...
The '/' partition uses the XFS filesystem.
You must reboot the server to enable quotas.
عبارت Quotas have been enabled and updated را جدا از انتهای گزارش نخوانید. وقتی ابزار درخواست ریبوت می کند، آماده سازی تنظیمات انجام شده ولی تایید فعال شدن Quota در اجرا هنوز باقی مانده است. اگر ابزار خطای دیگری می دهد، ابتدا همان خطا را رفع کنید؛ تکرار پشت سر هم دستور جای تشخیص را نمی گیرد.
مرحله پنجم: در صورت نیاز، ریبوت برنامه ریزی شده انجام دهید
در نمونه حاضر، ابزار صریحاً ریبوت را لازم دانست. پس از پایان عملیات حساس و اطلاع از وقفه سرویس، دستور زیر سرور را راه اندازی مجدد می کند:
reboot
زمان بازگشت به سخت افزار، سرویس ها و بررسی های هنگام بوت وابسته است؛ زمان ثابت برای همه سرورها وجود ندارد. هنگام بالا آمدن سیستم، XFS حسابداری سهمیه را برای mount دارای گزینه مناسب آماده می کند. اگر اتصال برنگشت، وضعیت بوت را از کنسول بررسی کنید و با تغییرهای حدسی در فایل سیستم ادامه ندهید.
مرحله ششم: فعال شدن واقعی Quota را تایید کنید
بعد از اتصال دوباره، همان دو دستور تشخیص را اجرا کنید:
findmnt -T /home -o SOURCE,TARGET,FSTYPE,OPTIONS
xfs_quota -x -c 'state' /home
در خروجی mount باید uquota یا usrquota دیده شود. در بخش User quota نیز انتظار داریم:
Accounting: ON
Enforcement: ON
اگر همچنان noquota دیده می شود، مرحله اصلاح کامل نشده است. mount واقعی، تنظیمات بوت، هسته فعال و گزارش اجرای fixquotas را بررسی کنید. برای پارتیشن ریشه، دستور findmnt -T / -o SOURCE,TARGET,FSTYPE,OPTIONS و محتوای /proc/cmdline نیز به تشخیص کمک می کنند. از تکرار بی دلیل ریبوت پرهیز کنید.

مرحله هفتم: سهمیه اکانت ها را همگام و WHM را بررسی کنید
پس از تایید فعال بودن Quota، سهمیه های ثبت شده حساب ها را با این ابزار همگام کنید:
/usr/local/cpanel/scripts/resetquotas
صفحه WHM → Account Information → List Accounts را تازه کنید و چند حساب از پکیج های مختلف را ببینید. برای پکیج های تعریف شده با 2048 و 5120 مگابایت، سهمیه همان مقادیر را بررسی کنید. حسابی که عمداً Unlimited تعریف شده، باید مطابق تنظیم خودش باقی بماند.
اگر سیستم عامل سهمیه را درست اعمال می کند اما سهمیه اکانت با پکیج آن همخوان نیست، سی پنل گزینه زیر را برای بازگرداندن سهمیه ها به مقادیر پکیج معرفی کرده است:
/usr/local/cpanel/scripts/resetquotas --useplanquotas
این گزینه را فقط وقتی اجرا کنید که واقعاً می خواهید سهمیه حساب ها مطابق پکیج ها بازنشانی شود. حساب های دارای سهمیه سفارشی را پیش از آن بررسی کنید. خاموش بودن Quota روی mount با ناهماهنگی مقدار پکیج یک مشکل واحد نیست.
اگر Disk Used هنوز اشتباه بود چه کنیم؟
اندازه پوشه را با سهمیه کاربر مقایسه کنید
در مثال زیر، CPANELUSER را با نام واقعی حساب جایگزین کنید:
du -xsh /home/CPANELUSER
quota -s -u CPANELUSER
df -hT /home/CPANELUSER
du حجم فایل های قابل پیمایش در آن مسیر را محاسبه می کند؛ quota مصرف متعلق به کاربر را روی فایل سیستم های سهمیه دار گزارش می دهد و df ظرفیت پارتیشن را نشان می دهد. این سه ابزار دقیقاً یک چیز را اندازه نمی گیرند. برای جزئیات حساب نیز بخش cPanel → Files → Disk Usage را ببینید.
مالکیت فایل ها را بررسی کنید
قرار گرفتن فایل در پوشه یک حساب الزاماً به معنی تعلق آن به همان کاربر نیست. اگر هنگام انتقال یا استخراج بکاپ، فایل ها با مالک root ساخته شده باشند، سهمیه کاربر ممکن است آن ها را به مصرف همان حساب اضافه نکند. برای بررسی چند فایل بزرگ یا مهم، مالکیت را با دستور زیر بخوانید:
ls -lah /home/CPANELUSER/public_html
اصلاح مالکیت باید بر اساس ساختار حساب و قواعد cPanel انجام شود. تغییر بازگشتی مالک همه مسیر home بدون بررسی، راه حل مناسبی نیست؛ گروه و مالک بعضی مسیرها می توانند عمداً متفاوت باشند. پایش درست مالکیت و منابع بخشی از کیفیت هاست لینوکس حرفه ای است.
مصرف دیتابیس و فایل های خارج از home را جدا ببینید
فایل های MySQL و MariaDB معمولاً متعلق به کاربر سیستمی mysql هستند. به همین دلیل مصرف دیتابیس حساب در گزارش Quota سیستم عامل مانند فایل های متعلق به کاربر cPanel دیده نمی شود. سی پنل اطلاعات دیتابیس را جداگانه محاسبه می کند؛ سهمیه فایل سیستم نیز رشد دیتابیس را به همان شکل فایل های حساب محدود نمی کند.
از طرف دیگر، فایل هایی که بیرون از پوشه حساب هستند ولی به همان کاربر تعلق دارند می توانند در مصرف او موثر باشند. اندازه ظاهری فایل با بلوک های تخصیص یافته نیز ممکن است تفاوت داشته باشد. بنابراین اختلاف کوچک با du همیشه خطا نیست، اما اختلافی مانند 500 مگابایت در برابر 10 مگابایت نیازمند بررسی دقیق است.
برای سایت های وردپرسی، رسانه ها، نسخه های پشتیبان افزونه ها، لاگ ها و دیتابیس را جداگانه بررسی کنید. هنگام انتخاب هاست وردپرس نیز تعریف فضای قابل محاسبه، محدودیت inode و سهم منابع را از میزبان بخواهید؛ عدد فضای دیسک به تنهایی کافی نیست.
چگونه از تکرار مشکل جلوگیری کنیم؟
پس از تغییر دیسک، ایجاد home2، انتقال اکانت ها، تغییر هسته یا به روز رسانی های سیستم عامل، وضعیت Quota را روی همه پارتیشن های دارای حساب کنترل کنید. مقدار پکیج، گزارش mount و مصرف چند حساب نمونه را کنار هم ثبت کنید. هشدار ظرفیت کل دیسک و هشدار سهمیه کاربران را جدا تنظیم کنید تا خرابی گزارش کاربر، مانیتورینگ ظرفیت سرور را از کار نیندازد.
محدودیت های CPU، RAM و I/O در CloudLinux را با Quota فضای دیسک اشتباه نگیرید؛ درست بودن یکی، فعال بودن دیگری را ثابت نمی کند. برای فروشگاه هایی که فایل و دیتابیس آن ها سریع رشد می کند، انتخاب هاست ووکامرس باید با بررسی ظرفیت، بکاپ و پایش مصرف همراه باشد.
سوالات متداول رفع مشکل Quota در سی پنل
چرا پکیج 2 گیگ دارم ولی WHM سهمیه را Unlimited نشان می دهد؟
ممکن است Quota روی پارتیشن حساب فعال نباشد یا سهمیه خود حساب با پکیج همخوان نباشد. اگر همه حساب ها درگیر هستند، ابتدا وضعیت فایل سیستم را بررسی کنید.
آیا fixquotas به تنهایی مشکل را حل می کند؟
همیشه نه. اگر ابزار درخواست ریبوت کند، باید آن مرحله را انجام دهید و سپس فعال بودن Accounting و Enforcement را تایید کنید.
آیا برای این مشکل باید وردپرس یا دیتابیس را حذف کنم؟
خیر. غیرفعال بودن Quota مشکل تنظیمات زیرساخت است. حذف فایل های سایت یا نصب دوباره وردپرس آن را فعال نمی کند.
آیا remount ساده، Quota خاموش در XFS را فعال می کند؟
خیر؛ فعال سازی حسابداری Quota به mount تازه نیاز دارد. روی سرور فعال، ریبوت برنامه ریزی شده می تواند این کار را بدون جدا کردن دستی home انجام دهد.
چرا بعد از اصلاح، عدد du با Disk Used کاملاً برابر نیست؟
مالکیت فایل، مصرف دیتابیس، فایل های خارج از home و تفاوت اندازه ظاهری با فضای تخصیص یافته می توانند اختلاف ایجاد کنند.
معیار پایان کار و دریافت پشتیبانی
رفع مشکل Quota در سی پنل زمانی تایید می شود که پارتیشن با سهمیه فعال mount شده باشد، User quota حسابداری و اعمال محدودیت را روشن نشان دهد، سقف حساب ها درست باشد و مصرف چند اکانت نمونه با بررسی فایل ها و دیتابیس قابل توضیح باشد. پیام موفقیت یک اسکریپت به تنهایی این چهار معیار را جایگزین نمی کند.
اگر برای تشخیص Quota، ناهماهنگی مصرف دیسک یا بررسی تنظیمات سرور به کمک نیاز دارید، از طریق تماس با ارومیا سرور موضوع را مطرح کنید. نوع سیستم عامل، خروجی findmnt، وضعیت User quota و گزارش fixquotas را ارسال کنید؛ رمز root، توکن، IP خصوصی یا لینک دارای شناسه نشست WHM را در پیام عمومی قرار ندهید.
این راهنما بر اساس مستندات رسمی cPanel درباره Initial Quota Setup، fixquotas، بازنشانی سهمیه پکیج و محاسبه مصرف دیسک، و مستندات XFS درباره فعال سازی سهمیه تهیه شده است. مسیر اجرای آن به وضعیت واقعی فایل سیستم و نسخه محیط شما وابسته است.


هیچ نظری ثبت نشده است