خطای zbx_mem_malloc(): out of memory (requested x bytes) در زبیکس

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

service zabbix-server start
tail -n 50 /var/log/zabbix/zabbix_server.log

اگر خطایی مشابه آنچه در زیر عیان است مشاهده فرمودید:

using configuration file: /etc/zabbix/zabbix_server.conf
current database version (mandatory/optional): 04020000/04020000
required mandatory version: 04020000
__mem_malloc: skipped 0 asked 64 skip_min 18446744073709551615 skip_max 0
[file:dbconfig.c,line:94] __zbx_mem_malloc(): out of memory (requested 64 bytes)
[file:dbconfig.c,line:94] __zbx_mem_malloc(): please increase CacheSize configuration parameter

لکن لازم است حجم پارامتر کش را در کانفیگ زبیکس افزایش دهید، به چه سان؟ محبت فرموده فایل کانفیگ زبیکس رو ویرایش کنید:

nano /etc/zabbix/zabbix_server.conf

بخشی مطابق زیر ملاحظه خواهید فرمود:

### Option: CacheSize
#       Size of configuration cache, in bytes.
#       Shared memory size for storing host, item and trigger data.
#       
# Mandatory: no
# Range: 128K-8G
# Default:
# CacheSize=8M

عبارت # رو از ابتدای لاین CacheSize حذف کرده و مقدار اون رو افزایش بدید مثلا بصورت زیر:

CacheSize=32M

با استفاده از ctrl+x تغییرات رو ذخیره کرده و در نهایت سرویس زبیکس سرور رو ریستارت کنید:

service zabbix-server start

و تمام

مشکل HTTP Error حین آپلود در وردپرس

اگر برای آپلود تصاویر، فایل‌ها و … روی وردپرسی که در وب سرور nginx هاست شده مشکل دارید و در ارورلاگ nginx که در مسیر زیر لاگ می‌شه:

/var/log/nginx/error.log

خطای زیر رو دارید:

[error] 11310#11310: *154 client intended to send too large body: X bytes

فایل کانفیگ nginx رو ویرایش کنید:

 nano /etc/nginx/nginx.conf

و مقدار client_max_body_size که احتمالا بر حسب مگابایت هست رو افزایش بدید. و در نهایت nginx رو ریستارت کنید:

service nignx restart

و تمام

عدم شناسایی فایل سیستم توسط زبیکس

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

همونطور که می‌تونید پارتیشن‌های سرورهای لینوکسی توسط Discovery rules بصورت خودکار روی زبیکس شناسایی می‌شن، مثلا دایرکتوری / رو به عنوان دایرکتوری اصلی سرور اضافه و مانیتور می‌کنه. این شناسایی خودکار هر یک ساعت یک‌بار انجام می‌شه، یعنی اگر شما همین الان یک سرور رو به زبیکس اضافه کنید، باید حداقل تا یک ساعت دیگه آیتم‌های فایل سیستم براتون اضافه بشن. با این حال اگر سرورهای شما با استفاده از مجازی‌ساز virtuozzo ایجاد شده باشن، ممکنه نوع فایل سیستم سرور توسط زبیکس شناسایی نشه و در بخش items از اپلیکیشن Filesystems هیچ مقداری نمایش داده نشه. چون نوع فایل سیستم مورد استفاده در virtuozzo ممکنه خیلی استاندارد و فراگیر نباشه.

خب، برای این که بدونید فایل سیستم استفاده شده در سرور شما چیه، کافیه مسیر زیر رو یه بررسی داشته باشید:

cat /proc/mounts

روی سرور من فایل سیستم مورد استفاده سرور simfs بود که توسط زبیکس بصورت پیش‌فرض قابل شناسایی نبود.

/dev/simfs / simfs rw,relatime,usrquota,grpquota 0 0

برای این که این فایل سیستم توسط زبیکس شناسایی بشه رو اینترفیس زبیکس از منوی Administration وارد تب General بشید و از منوی کشویی سمت راست گزینه Regular expressions رو انتخاب کنید. پس از ورود به این بخش روی File systems for discovery کلیک کنید و تو بخش Expression فایل سیستم موردنظر خودتون رو که برای من simfs بود و برای شما هرچیز دیگری که هست وارد کنید و تغییرات رو آپدیت کنید.

اضافه کردن فایل سیستم به زبیکس

و تمام

اضافه کردن یوزر در دایرکت ادمین از طریق خط فرمان

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

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

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

با استفاده از این اسکریپت و کامند ایجاد یوزر در لینوکس می‌تونیم یک یوزر با دامنه موردنظرمون از طریق ترمینال لینوکس روی دایرکت ادمین ایجاد کنیم.

ادامه خواندن اضافه کردن یوزر در دایرکت ادمین از طریق خط فرمان

خطای Error: Package: zabbix-web-mysql-x.x.x-x.x.noarch (zabbix) در نصب زبیکس

زبیکس یک سیستم مانیتورینگ سرور رایگان بسیار پیشرفته‌ست، اگر هنگام نصب زبیکس روی Centos7 برای نصب zabbix-web-mysql با خطاهایی مثل خطاهایی زیر مواجه شدید:

yum install zabbix-web-mysql
Loaded plugins: fastestmirror
Determining fastest mirrors
epel/x86_64/metalink                                                                                                    |  24 kB  00:00:00     
 * base: mirror.wiuwiu.de
 * epel: mirror.wiuwiu.de
 * extras: mirror.alpix.eu
 * remi-php71: mirror.23media.com
 * remi-safe: mirror.23media.com
 * updates: mirror.wiuwiu.de
base                                                                                                                    | 3.6 kB  00:00:00     
epel                                                                                                                    | 5.3 kB  00:00:00     
extras                                                                                                                  | 3.4 kB  00:00:00     
remi-php71                                                                                                              | 3.0 kB  00:00:00     
remi-safe                                                                                                               | 3.0 kB  00:00:00     
updates                                                                                                                 | 3.4 kB  00:00:00     
zabbix                                                                                                                  | 2.9 kB  00:00:00     
zabbix-non-supported                                                                                                    |  951 B  00:00:00     
(1/10): base/7/x86_64/group_gz                                                                                          | 166 kB  00:00:00     
(2/10): epel/x86_64/group_gz                                                                                            |  88 kB  00:00:00     
(3/10): base/7/x86_64/primary_db                                                                                        | 6.0 MB  00:00:00     
(4/10): epel/x86_64/updateinfo                                                                                          | 975 kB  00:00:00     
(5/10): epel/x86_64/primary_db                                                                                          | 6.7 MB  00:00:00     
(6/10): extras/7/x86_64/primary_db                                                                                      | 205 kB  00:00:00     
(7/10): remi-php71/primary_db                                                                                           | 239 kB  00:00:00     
(8/10): remi-safe/primary_db                                                                                            | 1.6 MB  00:00:00     
(9/10): updates/7/x86_64/primary_db                                                                                     | 6.4 MB  00:00:00     
(10/10): zabbix/x86_64/primary_db                                                                                       |  39 kB  00:00:00     
zabbix-non-supported/x86_64/primary                                                                                     | 1.6 kB  00:00:00     
zabbix-non-supported                                                                                                                       4/4
Resolving Dependencies
--> Running transaction check
---> Package zabbix-web-mysql.noarch 0:4.2.3-2.el7 will be installed
--> Processing Dependency: zabbix-web = 4.2.3-2.el7 for package: zabbix-web-mysql-4.2.3-2.el7.noarch
--> Processing Dependency: php-mysql for package: zabbix-web-mysql-4.2.3-2.el7.noarch
Package php-mysql-5.4.16-46.el7.x86_64 is obsoleted by php-mysqlnd-7.1.30-1.el7.remi.x86_64 which is already installed
--> Running transaction check
---> Package zabbix-web.noarch 0:4.2.3-2.el7 will be installed
--> Processing Dependency: php-ldap for package: zabbix-web-4.2.3-2.el7.noarch
---> Package zabbix-web-mysql.noarch 0:4.2.3-2.el7 will be installed
--> Processing Dependency: php-mysql for package: zabbix-web-mysql-4.2.3-2.el7.noarch
Package php-mysql-5.4.16-46.el7.x86_64 is obsoleted by php-mysqlnd-7.1.30-1.el7.remi.x86_64 which is already installed
--> Running transaction check
---> Package php-ldap.x86_64 0:7.1.30-1.el7.remi will be installed
---> Package zabbix-web-mysql.noarch 0:4.2.3-2.el7 will be installed
--> Processing Dependency: php-mysql for package: zabbix-web-mysql-4.2.3-2.el7.noarch
Package php-mysql-5.4.16-46.el7.x86_64 is obsoleted by php-mysqlnd-7.1.30-1.el7.remi.x86_64 which is already installed
--> Finished Dependency Resolution
Error: Package: zabbix-web-mysql-4.2.3-2.el7.noarch (zabbix)
           Requires: php-mysql
           Available: php-mysql-5.4.16-46.el7.x86_64 (base)
               php-mysql = 5.4.16-46.el7
           Available: php-mysqlnd-5.4.16-46.el7.x86_64 (base)
               php-mysql = 5.4.16-46.el7
           Available: php-pecl-mysql-1.0.0-0.14.20160428git45881bd.el7.remi.7.1.x86_64 (remi-php71)
               php-mysql = 1:1.0.0
           Available: php-pecl-mysql-1.0.0-0.15.20160812git230a828.el7.remi.7.1.x86_64 (remi-php71)
               php-mysql = 1:1.0.0
           Installed: php-mysqlnd-7.1.30-1.el7.remi.x86_64 (@remi-php71)
               Not found
           Available: php-mysqlnd-7.1.29-1.el7.remi.x86_64 (remi-php71)
               Not found
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

احتمالا شما از نسخه‌ای جز php استاندارد سرور که 5.4 هست استفاده می‌‌کنید که خب با توجه به قدیمی بودن php 5.4 و باگ‌های اون منطقی هم هست.

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

ادامه خواندن خطای Error: Package: zabbix-web-mysql-x.x.x-x.x.noarch (zabbix) در نصب زبیکس

خطای Job for sshd.service failed because the control process exited with error code در centos 7

لکن اگر پس تغییر پورت دیفالت ssh در توزیع centos 7 لینوکس، با خطای زیر حین ریستارت سرویس مواجه شدید:

Redirecting to /bin/systemctl restart sshd.service
Job for sshd.service failed because the control process exited with error code. See "systemctl status sshd.service" and "journalctl -xe" for details.

با دستورات زیر خطا را رفع کنید (بجای 1234 پورت موردنظر خودتون رو وارد کنید):

yum install -y policycoreutils-python
semanage port -a -t ssh_port_t -p tcp 1234

و در نهایت:

service sshd restart

خطای Your PHP installation does not support PostgreSQL. You need to recompile PHP using the — with-pgsql configure option

اگر پس از نصب phppgadmin روی اوبونتو که دسترسی به اینترفیس از آدرس localhost/phppgadmin فراهم می‌شه با خطای زیر مواجه شدید:

Your PHP installation does not support PostgreSQL. You need to recompile PHP using the — with-pgsql configure option

اول پکیج pgsql رو روی php با دستور زیر نصب کنید:

sudo apt-get install php7.1-pgsql

طبیعتا اگر نسخه php شما به جای 7.1 نسخه دیگری باشه باید جایگزین کنید تو دستور بالا.

بعد از نصب پکیج، فایل php.ini رو با دستور php –ini روی شل لینوکس پیدا و ویرایش کنید و مقادیر زیر رو با حذف سمی کالن (;) از ابتدای فایل از کامنت خارج کنید.

extension=php_pdo_pgsql.dll
extension=php_pgsql.dll

و در نهایت یکبار سرویس‌های آپاچی و pgsql رو ریستارت کنید.

sudo service apache2 restart
sudo service postgresql restart

ایام بکام، دیوید بکام …