Example Case on Netway26 Problem : Can not restart cagefs service or CloudLinux LVE Manager in WHM Error Log : root@netway26 [~]# /etc/init.d/cagefs restart Restarting CageFS: Traceback (most recent call last): File "/usr/sbin/lvectl", line 19, in from cllimits_validator import LimitsValidator, ENTITY_USER, ENTITY_PACKAGE, ENTITY_RESELLER,ENTITY_DEFAULTS File "/opt/alt/python27/lib/python2.7/site-packages/cllimits_validator/__init__.py", line 8, in from limits_validator import LimitsValidator File "/opt/alt/python27/lib/python2.7/site-packages/cllimits_validator/limits_validator.py", line 9, in from cllimitslib_v2 import LimitsDataStorage, DEFAULTS File "/opt/alt/python27/lib/python2.7/site-packages/cllimitslib_v2/__init__.py", line 8, in from lve_storage import ( File "/opt/alt/python27/lib/python2.7/site-packages/cllimitslib_v2/lve_storage.py", line 11, in from lvectllib import paneluserslist, panelpackagesdict, LVP_DEFAULT, LVE_DEFAULT, DEFAULT_PACKAGE File "/opt/alt/python27/lib/python2.7/site-packages/lvectllib.py", line 316, in CPUINFO_DATA = _get_cpu_data_from_env() or get_cpu_data() File "/opt/alt/python27/lib/python2.7/site-packages/lvectllib.py", line 314, in get_cpu_data return [nprocs, cpuinfo['proc0']['cpu MHz']] KeyError: 'cpu MHz' [FAILED] Workaround: Edit file : /opt/alt/python27/lib/python2.7/site-packages/lvectllib.py go to line 316 and change variable follow below -->> CPUINFO_DATA = _get_cpu_data_from_env() or get_cpu_data() to -->> CPUINFO_DATA = [4, '2400'] root@netway26 [~]# /etc/init.d/cagefs restartRestarting CageFS: [ OK ]
ปัญหา เนื่องจากก่อนหน้านี้ได้มีการ Convert Easy apache 3 เป็น Easy apache 4 จึงส่งผลค่า disable_function ในไฟล์ php.ini หายไปครับ จึงได้มีการแก้ไขโดยการเพิ่มค่าเข้าไปทั้งหมด หากพบปัญหาในการใช้งาน Website สามารถดำเนินการได้ตามข้อมูลด้านล่างครับ วิธีการแก้ไขปัญหา1. ตรวจสอบ Version Mutiphp ว่าลูกค้าใช้งานอยู่ใน Version ใด WHM >> Software >> MultiPHP Manager 2. เมื่อทราบ Version ที่ลูกค้าใช้งานแล้วสามารถดำเนินการ Enable Function ได้โดย 2.1 ดำเนินการค้นหาคำว่า disable_function จากนั้นให้ทำการลบข้อมูลที่ลูกค้าต้องการใช้งานออกเช่น phpinfo , popen , system ตาม Part version ที่ลูกค้าใช้งานดังนี้ Cloudlinux alt-php44 >> /opt/alt/php44/etc/php.ini alt-php51 >> /opt/alt/php51/etc/php.ini alt-php52 >> /opt/alt/php52/etc/php.ini alt-php53 >> /opt/alt/php53/etc/php.ini alt-php54 >> /opt/alt/php54/etc/php.ini alt-php55 >> /opt/alt/php55/etc/php.ini alt-php56 >> /opt/alt/php56/etc/php.ini alt-php70 >> /opt/alt/php70/etc/php.ini alt-php71 >> /opt/alt/php71/etc/php.ini alt-php72 >> /opt/alt/php72/etc/php.ini alt-php73 >> /opt/alt/php73/etc/php.ini Easy apache ea-php54 >> /opt/cpanel/ea-php54/root/etc/php.ini ea-php56 >> /opt/cpanel/ea-php56/root/etc/php.ini ea-php70 >> /opt/cpanel/ea-php70/root/etc/php.ini ea-php71 >> /opt/cpanel/ea-php71/root/etc/php.ini ea-php72 >> /opt/cpanel/ea-php72/root/etc/php.ini
ปัญหา เนื่องจากใน Mysql version 5.7 เป็นต้นไปจะมีการเปิดการใช้งาน Function : ONLY_FULL_GROUP_BY และNO_ZERO_DATE โดย Default ส่งผลให้ Website ของลูกค้าไม่สามารถใช้งานได้ วิธีการแก้ไข 1. Access SSH เข้าไปที่ Server ที่ต้องการ 2. ทำการตรวจสอบว่ามีการเปิด Function : ONLY_FULL_GROUP_BY และ NO_ZERO_DATE ไว้อยู่หรือไม่โดยการ Run command : mysql จากนั้นใส่ข้อมูล SELECT @@sql_mode; [root@system ~]# mysql Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 4330Server version: 5.7.25-log MySQL Community Server (GPL) Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>SELECT @@sql_mode; 3. จะแสดงข้อมูล Function ที่มีการเปิดการใช้งานทั้งหมด mysql> SELECT @@sql_mode;+------------------------------------------------------------------------------------------------------------------------+| @@sql_mode |+------------------------------------------------------------------------------------------------------------------------+| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |+------------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec) mysql> 4. หากพบว่ามีการเปิดการใช้งาน Function : ONLY_FULL_GROUP_BY และ NO_ZERO_DATE ให้ทำการปิดโดยให้ไปดำเนินการที่ไฟล์ /etc/my.cnf [root@system ~]# nano -w /etc/my.cnf 5. ทำการเพิ่มข้อมูลตามรายละเอียดด้านล่าง [mysqld]sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 6. ทำการ Restart service mysql [root@system ~]# /scripts/restartsrv_mysql
วิธีติดตั้ง free SSL tool ของ LetsEncrypt บน DirectAdmin 1. สำหรับ Server ที่เป็น CentOS 6 หรือที่ใหม่กว่า จะต้องทำการตั้งค่าให้ DA to allow SNI โดยจะต้องเข้าไปเพิ่มค่า enable_ssl_sni=1 ในไฟล์ /usr/local/directadmin/conf/directadmin.conf 2. ทำการ Enable letsencrypt=1 ในไฟล์ /usr/local/directadmin/conf/directadmin.conf 3. Restart DirectAdmin run command : echo "action=directadmin&value=restart" >> /usr/local/directadmin/data/task.queue; /usr/local/directadmin/dataskq d2000 4. Add the /.well-known Alias cd /usr/local/directadmin/custombuild ./build rewrite_confs 5. จากนั้นให้ run script cd /usr/local/directadmin/custombuild ./build update ./build letsencrypt 6. เมื่อเสร็จแล้วให้ login User Level -> SSL Certificates เข้าไปติดตั้ง อ้างอิง : https://help.directadmin.com/item.php?id=648 https://help.directadmin.com/item.php?id=641&in1=letsencrypt&in2=1
ตรวจสอบที่ Part : /etc/usersdata ก่อนทุกครั้งว่ามีข้อมูลหรือไม่ ปัญหา ไม่สามารถตรวจสอบ Account ของลูกค้าผ่านหน้า WHM >> List account ได้ วิธีการแก้ไข 1. Access SSH เข้าไปที่ Server ที่ต้องการ 2. ทำการย้าย Directory ในส่วนของ /var/cpanel/userdata โดยใช้คำสั่ง [root@vps ~]#mv /var/cpanel/userdata /var/cpanel/userdata.orig 3. ทำการสร้าง Directory ขึ้นมาใหม่โดยใช้คำสั่ง [root@vps ~]# cd /var/cpanel/ [root@vps cpanel]# mkdir /var/cpanel/userdata 4. ทำการ run script เพื่อทำการสร้างข้อมูลของ User ทั้งหมดขึ้นมาใหม่ [root@vps cpanel]# /usr/local/cpanel/bin/userdata_update --reset 5. ทำการตรวจสอบความถูกต้องของการตั้งค่า [root@vps ~]# /usr/local/cpanel/bin/fix_userdata_perms 6. ทำการ Update cache [root@vps ~]# /scripts/updateuserdatacache 7. Rebuild Apache [root@vps ~]# /scripts/rebuildhttpdconf ตรวจสอบการใช้งานอีกครั้งว่าสามารถ list account ได้แล้วหรือไม่