خطای Your license OS (CentOS 6) does not match the OS installed (CentOS 7) دایرکت ادمین

با تغییر سیاست لایسنس‌دهی سی‌پنل و افزایش بی‌رویه و ددمنشانه قیمت لایسنس، احتمالا شما هم جزو اون دسته از افردای باشید که بخواید کنترل‌پنل سرورهای لینوکسی‌تون رو به مناسب‌ترین و مقرون‌به‌صرفه‌ترین پلن که از نظر محققان دایرکت ادمین هست تغییر بدید.

خب، طبیعتا اگر شما سرورهای زیادی داشته باشید، به جای نصب و کانفیگ دایرکت‌ادمین برای تک تک سرورها، روی یک سرور دایرکت ادمین رو نصب می‌کنید و پس از اعمال کانفیگ‌های لازم از سرور مذکور ایمیج گرفته و روی باقی سرورها از همون تمپلیت برای نصب استفاده می‌کنید.

یکی از اشکالاتی که در این خصوص ممکنه ایجاد بشه این هست که ممکنه مشکل ناهماهنگ بودن ورژن لایسنس دایرکت ‌ادمین و نسخه سرور ایجاد بشه. برای من مشکل ایجاد شده اینطور بود که لایسنس دایرکت ادمین هماهنگ با centos 6 روی سروری با نسخه 7 از سیستم عامل centos نصب شده بود، و برای اجرای آپدیت‌های کاستوم بیلد هشدار زیر دریافت می‌شد:

Your license OS (CentOS 6) does not match the OS installed (CentOS 7).

این هشدار ممکنه در ظاهر باعث بروز اشکالی نشه، اما در عمل اشکالات جدی ایجاد می‌کنه، فرضا اگر شما بخواید طبق دستورالعمل زیر دیتابیس‌تون رو آپدیت کنید:

https://help.directadmin.com/item.php?id=240

با خطایی مطابق زیر مواجه خواهید شد:

MariaDB 10.4 does not support CentOS6.

حتی اگر به نسخه‌ای از mariadb آپگرید کنید که روی centos 6 هم قابل پشتیبانی باشه، در نهایت خطاهای زیر مانع از تکمیل پروسه آپگرید خواهند شد:

Your license OS (CentOS 6) does not match the OS installed (CentOS 7).
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
Found /usr/local/directadmin/custombuild/mysql/MariaDB-10.3.17-centos6-x86_64-client.rpm
Found /usr/local/directadmin/custombuild/mysql/MariaDB-10.3.17-centos6-x86_64-devel.rpm
Found /usr/local/directadmin/custombuild/mysql/MariaDB-10.3.17-centos6-x86_64-server.rpm
Found /usr/local/directadmin/custombuild/mysql/MariaDB-10.3.17-centos6-x86_64-shared.rpm
Found /usr/local/directadmin/custombuild/mysql/MariaDB-10.3.17-centos6-x86_64-common.rpm
Found /usr/local/directadmin/custombuild/mysql/MariaDB-10.3.17-centos6-x86_64-compat.rpm
Found /usr/local/directadmin/custombuild/mysql/MariaDB-10.3.17-centos6-x86_64-backup.rpm
Installing dependencies...
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.crazyfrogs.org
 * extras: mirror.checkdomain.de
 * updates: mirror.alpix.eu
Package boost-program-options-1.53.0-27.el7.x86_64 already installed and latest version
Package perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64 already installed and latest version
Package 1:perl-Compress-Raw-Zlib-2.061-4.el7.x86_64 already installed and latest version
Package perl-DBI-1.627-4.el7.x86_64 already installed and latest version
Package lsof-4.87-6.el7.x86_64 already installed and latest version
Package 2:nmap-6.40-16.el7.x86_64 already installed and latest version
No package compat-readline5 available.
Nothing to do
Installing libjemalloc...
Found /usr/local/directadmin/custombuild/mysql/jemalloc-3.6.0-1.el6.x86_64.rpm
Found /usr/local/directadmin/custombuild/mysql/jemalloc-devel-3.6.0-1.el6.x86_64.rpm
warning: /usr/local/directadmin/custombuild/mysql/jemalloc-3.6.0-1.el6.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 1bb943db: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:jemalloc-3.6.0-1.el6             ################################# [ 50%]
   2:jemalloc-devel-3.6.0-1.el6       ################################# [100%]
Installing galera...
Found /usr/local/directadmin/custombuild/mysql/galera-25.3.26-1.rhel6.el6.x86_64.rpm
warning: /usr/local/directadmin/custombuild/mysql/galera-25.3.26-1.rhel6.el6.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 1bb943db: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:galera-25.3.26-1.rhel6.el6       ################################# [100%]
Stopping mysqld ...
Updating MariaDB 10.3.17 to 10.3.17
warning: MariaDB-10.3.17-centos6-x86_64-client.rpm: Header V4 DSA/SHA1 Signature, key ID 1bb943db: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:MariaDB-compat-10.3.17-1.el6     ################################# [ 14%]
   2:MariaDB-common-10.3.17-1.el6     ################################# [ 29%]
   3:MariaDB-client-10.3.17-1.el6     ################################# [ 43%]
   4:MariaDB-server-10.3.17-1.el6     ################################# [ 57%]
Failed to resolve typeattributeset statement at /etc/selinux/targeted/tmp/modules/400/mariadb/cil:1
/usr/sbin/semodule:  Failed!
   5:MariaDB-devel-10.3.17-1.el6      ################################# [ 71%]
   6:MariaDB-shared-10.3.17-1.el6     ################################# [ 86%]
   7:MariaDB-backup-10.3.17-1.el6     ################################# [100%]
Failed to execute operation: Invalid argument
Removed symlink /etc/systemd/system/multi-user.target.wants/mysqld.service.
Removed symlink /etc/systemd/system/mariadb.service.
Removed symlink /etc/systemd/system/mysql.service.
mv: cannot stat ‘/etc/systemd/system/mysql.service’: No such file or directory
Created symlink from /etc/systemd/system/mysql.service to /etc/systemd/system/mysqld.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/mysqld.service to /etc/systemd/system/mysqld.service.
Ensuring local-infile is disabled for security reasons in MySQL configuration file...
Job for mysqld.service failed because a timeout was exceeded. See "systemctl status mysqld.service" and "journalctl -xe" for details.
Giving mysqld a few seconds to start up...
Version check failed. Got the following error when calling the 'mysql' command line client
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
FATAL ERROR: Upgrade failed
/usr/bin/mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) when trying to connect
cp: ‘/usr/lib/libmysqlclient.so’ and ‘/usr/lib/mysql/libmysqlclient.so’ are the same file
Restarting MySQL.
Job for mysqld.service failed because a timeout was exceeded. See "systemctl status mysqld.service" and "journalctl -xe" for details.
Installation completed.

در این حالت دیتابیس سرور شما کلا به مشکل می‌خوره و نه نسخه قدیمی و نه جدید، هیچکدوم قابلیت انتفاع نخواهند داشت.

و اما چه باید کرد؟ وقتی که حتی در صورتی که روی پنل لایسنسینگ دایرکت ادمین هم سیستم عامل سرور رو به centos 7 تغییر بدید، باز هم این مشکل رفع نمی‌شه!

در حال حاضر خروجی دستور زیر روی سرور شما:

/usr/local/directadmin/directadmin o

باید شبیه به اُن‌چه که در زیر ملاحظه می‌کنید باشه:

Compiled on 'CentOS 6.0 64-Bit'
Compile time: Jul 12 2019 at 09:37:56
Timestamp: '1562943748'
Compiled with IPv6

طبیعتا وقتی ما centos 7 استفاده می‌کنیم دریافت این خروجی نه تنها منطقی نیست، بلکه جزو گناهان کبیره به حساب میاد.

خب، برای رفع مشکل اسکریپتی تهیه شده که مطابق دستورات زیر اون رو نصب و اجرا می‌کنیم:

wget https://raw.githubusercontent.com/poralix/directadmin-utils/master/core/updateda.sh -O updateda.sh
chmod 755 updateda.sh
./updateda.sh stable
 

بعد از اجرای این اسکریپت، مجددا دستور زیر رو اجرا کنید:

/usr/local/directadmin/directadmin o

خروجی باید شبیه به اُن‌چه که در زیر نمایان هست باشه:

Compiled on 'CentOS 7.0 64-Bit'
Compile time: Jul 12 2019 at 09:37:52
Timestamp: '1562945823'
Compiled with IPv6 

اگر باز هم مشکل رفع نشد دیگه آخرین سنگر ریبیلد سرور با centos 7 تازه و نصب و کانفیگ دایرکت ادمین با لایسنس صحیح از ابتدا هست.

نکته کنکوری: هر اسکریپتی رو روی سرورتون اجرا نکنید، حتما قبلش کامل اسکریپت رو بخونید و مطمئن بشید امنیت سرور به خطر نمی‌افته. این اسکریپت هم قبل از اجرا شدن خونده شده و صحتش مورد تاییده.

و تمام

منتشرشده توسط

FaЯshid

وب‌هاستینگ شغل مورد علاقمه و سعی می‌کنم بیشتر توی این حوزه بنویسم

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *