مشکل استارت نشدن خودکار سرویسها
گاهی پس از ریبوت سرور، سرویسهایی مانند Apache، MySQL، Exim یا خود دایرکت ادمین بهصورت خودکار استارت نمیشوند. این مشکل باعث میشود سایتها و ایمیلها پس از هر ریبوت از دسترس خارج شوند.
بررسی وضعیت
# لیست سرویسهای فعال
systemctl list-unit-files | grep enabled
# بررسی یک سرویس خاص
systemctl is-enabled httpd
systemctl is-enabled mysqld
systemctl is-enabled directadmin
فعالسازی Auto-Start
با systemctl
systemctl enable httpd
systemctl enable mysqld
systemctl enable exim
systemctl enable directadmin
systemctl enable named
systemctl enable dovecot
systemctl enable proftpd
بررسی صحت
systemctl is-enabled httpd
# خروجی باید "enabled" باشد
تنظیم در دایرکت ادمین
دایرکت ادمین از فایل /usr/local/directadmin/data/admin/services.status برای مدیریت سرویسها استفاده میکند. این فایل را بررسی کنید:
cat /usr/local/directadmin/data/admin/services.status
مقادیر باید ON باشند.
اسکریپت startips
دایرکت ادمین اسکریپت startips را هنگام بوت اجرا میکند:
/usr/local/directadmin/scripts/startips
مطمئن شوید این اسکریپت در startup قرار دارد.
Cron Job پشتیبان
به عنوان لایه امنیتی اضافه، یک cron job تنظیم کنید که سرویسهای حیاتی را بررسی و در صورت نیاز ریاستارت کند:
*/5 * * * * systemctl is-active httpd || systemctl start httpd
*/5 * * * * systemctl is-active mysqld || systemctl start mysqld
Monit
ابزار Monit میتواند سرویسها را مانیتور و در صورت خاموش شدن خودکار ریاستارت کند.
سرور مجازی با مانیتورینگ ۲۴/۷. کانفیگ سرور شامل تنظیم auto-start و Monit. هاست وردپرس بدون نیاز به مدیریت سرویسها.