زيمبرا هو كل شيء لدينا

لقد حدث هنا بطريقة أو بأخرى نقل هذه المعجزة من آلة حديد إلى أخرى افتراضية. هذا الموقف محبط بصراحة - فقد تم التخطيط لإصدار دبيان القديم بإصدار kernel 2 و Zimbra 6.0.4 Relocation في CentOS 7 و ZImbra 8.8.

يجب أن أقول على الفور أنه لإكمال هذا الحدث ، يجب أن تحب BDSM بالكامل ، وليس الضوء ، ولكن المتشددين مع يضرب تحت الحزام. خلاف ذلك ، لن ينجح أي شيء بالنسبة لك وسيبقى كل شيء في منتصف الطريق.

لذلك دعونا نحصل عليه بالترتيب.

في البداية ، كنا بحاجة إلى نشر إصدار من Zimbra مماثل للخادم القديم ، في حالتي كان Zimbra 6.0.4 لـ CentOS 5 ، لسوء الحظ ، كان الإصدار الأكثر تقدمًا من نظام التشغيل لهذا البرنامج في ذلك الوقت.

تحميل من هنا zimbra.

wget https://files2.zimbra.com/downloads/6.0.4_GA/zcs-6.0.4_GA_2038.RHEL5_64.20091214192925.tgz 

وفك:

 tar -xvf https://files2.zimbra.com/downloads/6.0.4_GA/zcs-6.0.4_GA_2038.RHEL5_64.20091214192925.tgz 

قبل تثبيته ، قم بتكوين CentOS. في الإصدار 5 ، قم بتعطيل Selinux و Postfix / Sendmail (إما) وإعداد اللفت ليوم.

 vi /etc/sysconfig/selinux 

هناك نضع القيمة:

 SELINUX=disabled 

نقوم بإيقاف الخدمات وإيقافها حتى لا تتداخل معنا أثناء التثبيت والتحديث:

 service iptables stop chkconfig iptables off service sendmail stop chkconfig sendmail off service postfix stop chkconfig postfix off 

أنشأنا اللفت ليوم. في هذا الملف ، يلزمك التعليق على الأسطر التي تبدأ بمرآة:

 vi /etc/yum.repos.d/CentOS-Base.repo 

وتحرير

 'baseurl=' 

بدلا من 5.11 ، وضعنا نسختنا.

 baseurl=http://vault.centos.org/5.11/os/$basearch/ 

بعد ذلك ، قم بتحديث CentOS

 yum update 

بعد قيامنا بتحديث نظام التشغيل ، يبقى إعداد إعداد واحد فقط ، لأن zimbra غيور جدًا على DNS ، هذا إعداد مهم للغاية وبدون ذلك لن تنجح عملية التثبيت.

 vi /etc/hosts 

في ذلك نسجل الملكية الفكرية واسم الخادم الكامل - IP FQNS NS.

كل شيء في هذا النظام ، وإلا مرة أخرى خطأ. في حالتي ، تم استدعاء الخادم srvmail (أو بالأحرى ، سجل mx الخاص به).

 192.168.0.2 srvmail.domail.local srvmail 

بعد ذلك ، يمكنك متابعة التثبيت والانتقال إلى الدليل مع تفريغ zimbra مسبقًا وتنفيذه:

 ./install.sh --platform-override 

علم

 "--platform-override" 

يخبر المثبت ما يجب تثبيته في أي حال (إعادة كتابة النظام الأساسي بالقوة).

علامة مفيدة أخرى هي "-s" تخبر هذه العلامة المثبت أننا نريد تثبيت الحزم القابلة للتنفيذ فقط وليس التهيئة.

بعد ذلك ، سيبدأ برنامج التثبيت التثبيت وإذا كان كل شيء قد تم بشكل صحيح ، فلن يكون هناك أي أخطاء. في نهاية التثبيت ، تحقق من حالة خدمة zimbra:

 zmcontrol status 

إذا كانت جميع الخدمات في حالة Running ، فكل شيء على ما يرام ، ثم تابع.

وقف لدينا zimbru:

 zmcontrol stop 

بعد تثبيت zimbra ، نحتاج إلى نقل قاعدة البيانات ، وكذلك ملف التكوين من خادم zimbra القديم إلى الجديد.

نحتاج مجلدات

 db data index 

تقع في

 /opt/zimbra 

وكذلك الملف

 /opt/zimbra/conf/localconfig.xml 

يمكن حذف بيانات المجلد الموجودة على الخادم الجديد أو نسخها احتياطيًا.

نظرًا لأن المجلدات والملفات أثناء النقل يمكن أن تغير المضيف (الأذونات) ، نحتاج إلى إصلاح هذا الشيء:

 chown -R zimbra.zimbra /opt/zimbra /opt/zimbra/libexec/zmfixperms 

أيضًا ، قبل إجراء الاختبار ، من الضروري التحقق من قاعدة بيانات sql بحثًا عن الأخطاء ، يمكنك القيام بذلك باستخدام الأداة المساعدة القياسية

 mysqlcheck 

أو باستخدام الأداة المساعدة Zimbro المضمنة

 zmdbintegrityreport 

تشغيل mysql وتشغيل البرنامج النصي:

 /opt/zimbra/bin/mysql.server start /opt/zimbra/libexec/zmdbintegrityreport /opt/zimbra/libexec/zmdbintegrityreport -r 

يبحث السطر الأول عن الأخطاء ، بينما يتحقق الخط الثاني ويحاول إصلاحه على الفور.

إذا لم تحدث أي أخطاء ، فصفق يديك وانظر أدناه ، إذا كانت هناك أخطاء:

 mysql.general_log Error : You can't use locks with log tables. mysql.slow_log Error : You can't use locks with log tables. 

ثم عليك القيام بما يلي:

 cd /opt/zimbra/db/data/mysql ls -al *log.frm mv *log.frm /tmp/ /opt/zimbra/libexec/zmdbintegrityreport 

إذا كان الأخير يكتمل دون أخطاء ، ثم إيقاف mysql والمضي قدما.

 /opt/zimbra/bin/mysql.server stop 

نحن الآن بحاجة إلى تغيير كلمات المرور إلى قاعدة ldap. نبدأ ldap:

 ldap start 

في الإصدار الأول بعلامة "r" ، نقوم بتغيير كلمة المرور للمستخدم الجذر ، وفي السطر الثاني لمستخدم zimbra ، نتوقف عن ldap مرة أخرى:

 zmldappasswd -r newrootpass zmldappasswd newpass ldap stop 

إذا كنت تحب BDSM والتنجيم ، فاقرأ الفقرة التالية بعناية. إذا لم يكن كذلك ، فلا تتردد في تخطي.

لمحبي BDSM
الآن اختناق قليلاً)) أفهم أنك متعب بالفعل وأن هذه البلاغة مزعجة بعض الشيء ، لكن اسمحوا لي أن أشرح لك شيئًا ما. عندما نقلنا القواعد (ldap و sql) ، نقلنا أيضًا وصولهم (المستخدمين وكلمات المرور) ، عندما نضع zimbru جديدًا ، فإنه ينشئ كلمات مرور للقواعد تلقائيًا ويتم تخزينها في الملف /opt/zimbra/conf/localconfig.xml. وإذا حاولنا نقل القواعد وبدء تشغيل خدمات Zimbra على الفور ، فسوف يرسلون لنا nafig ولن نبدأ ، لأن كلمات المرور لن تتطابق. من حيث المبدأ ، يمكنك الذهاب في الاتجاه الآخر دون نسخ ملف الإعدادات ، ولكن عليك مقارنة الإعدادات مع الخادم القديم لتغييرها على الجديد. هناك أمر خاص zmlocalconfig لهذا الغرض.

ننظر إلى الإعدادات على سبيل المثال ldap:

 zmlocalconfig -s | grep ldap 

نستخدمها على الخادم الجديد:

 zmlocalconfig -e < >=< > 

الشيء الأكثر أهمية هو تغيير كلمات المرور لجميع ldap و mysql.

مع mysql ، كل شيء أكثر تعقيدًا ، تحتاج إلى بدء تشغيل الخدمة من خلال إعادة تعيين جدول الامتيازات ثم تطبيق كلمة المرور المساوية لتكوينات zimbra القديمة:

 vi /opt/zimbra/bin/mysql.server 

العثور على الخط هناك

 (--ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 &) 

وتغييره إلى

 (--ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 --skip-grant-tables &) 

تحقق مما إذا كان mysql يعمل ، إذا كان الجواب نعم ، فإننا نطفئه

 /opt/zimbra/bin/mysql.server stop 

بعد ذلك ، قم بتشغيل عظام الخد على شكل جديد

 mysql.server start 

بعد ذلك ، انتقل إلى mysql بدون كلمة مرور (mysql) وقم بتعيين كلمات مرور مساوية zimbra القديمة (!!! تحتاج إلى تشغيل zimbra القديم !!!!!!!!!!)

 zmlocalconfig -s | grep mysql_root_password zmlocalconfig -s | grep zimbra_mysql_password 

 mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; ----> Root user. mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='zimbra'; ----> Zimbra user 


نكتب التغييرات والخروج

 FLUSH PRIVILEGES; exit; 

بعد ذلك ، أعد تشغيل عظام الخد عن طريق التوقف والبدء

 mysql.server stop  mysql.server start 

تحقق الصيانة

 mysql zimbra 

إذا سارت الأمور دون أخطاء ، ففرح.

وقف mysql

 /opt/zimbra/bin/mysql.server stop 


بعد ذلك ، نتأكد مرة أخرى من أن خدمات zimbra, mysql, ldap لا تعمل:

 ps -aux |grep slapd ps -aux |grep sql zmcontrol status 

إذا حدث شيء ما فجأة ، فأنت بحاجة إلى القتل أو التوقف.

حسنًا ، لقد حان الوقت لإطلاق أول خادم جديد. نثني أصابعنا بصليب ولا نتركها حتى يتم إطلاقها بالكامل ، إذا كنت بحاجة إلى استخدام الدف في متناول اليد:

 zmcontrol start 

هناك 2 خيارات لتطوير الأحداث:

عند بدء التشغيل ، figdit فواصل والانحناءات LDAP
تحقق من كلمة المرور zimbra والجذر مرة أخرى. أو في إطلاق ldap كان يعمل بالفعل وأنت فقط غاب عن الماشية غاب عن شيء.

عند بدء فواصل figachit والانحناءات mysql ، راجع النقطة 1
حسنا ، الخيار عندما لا يبدأ علبة البريد

لذلك تحتاج إلى إنشاء شهادة جديدة:

قبل ذلك ، تحتاج إلى حذف لوحة المفاتيح القديمة ، وإلا فإن FAIL في انتظارك:

 rm -rf /opt/zimbra/mailboxd/etc/keystone cd /opt/zimbra/bin ./zmcertmgr createca -new ./zmcertmgr createcrt -new -days 1825 ./zmcertmgr deploycrt self ./zmcertmgr deployca 

وقف وتشغيل zimbra بطريقة جديدة:

 zmcontrol stop zmcontrol start 

إذا رأيت SUKES ، فقفز واستمتع (يجب أن تكون جميع الخدمات في وضع التشغيل).

يمكنك محاولة الانهيار في WEB ، إذا لم يتم تحميله ، فلا تشعر باليأس.

يتم حل هذه المشاكل عن طريق الترقية إلى الإصدار نفسه !!!
الحذر يجب أن تبدأ خدمات عند الترقية ، وإلا فاشل!


نذهب إلى المجلد باستخدام zimbra الذي تم تنزيله وأدخل:

 ./install.sh --platform-override 

سوف يطلب زيمبرا عدة مرات إذا كنا نريد تحديثًا ، فنقول نعم ونستمر. بالمناسبة ، سوف يلتقط إعدادات النظام من localconfig.xml الذي قمنا بنقله. فكر في الأمر كاختراق صغير :-)

بعد التثبيت ، تحقق من حالة المرسل:

 zmcontrol status 

إذا كان كل شيء على ما يرام ، فيمكنك الدخول إلى WEB وتسجيل الدخول كأي مستخدم من الخادم القديم ، ستكون كلمات المرور هي نفسها.

علاوة على ذلك ، كما هو الحال في الإبهام ، قم بتنزيل أحدث إصدار من الإصدار 7.x.x.x ، وقم بفك ضغطه ومرة ​​أخرى:

 ./install.sh --platform-override 

في هذه المرحلة ، نحن على استعداد لتصنيف نظام التشغيل الخاص بنا إلى الخطوة التالية.

لكن عليك أولاً التحقق من قاعدة البيانات الخاصة بنا بحثًا عن الفساد:

 /opt/zimbra/libexec/zmdbintegrityreport 

إذا لم تكن هناك أخطاء ، فتابع ، إذا كانت أخطاء mboxgroup

  mboxgroup1.appointment error : Table upgrade required. Please do "REPAIR TABLE `appointment`" or dump/reload to fix it! mboxgroup1.data_source_item error : Table upgrade required. Please do "REPAIR TABLE `data_source_item`" or dump/reload to fix it! mboxgroup1.imap_folder error : Table upgrade required. Please do "REPAIR TABLE `imap_folder`" or dump/reload to fix it! mboxgroup1.mail_item error : Table upgrade required. Please do "REPAIR TABLE `mail_item`" or dump/reload to fix it! mboxgroup1.pop3_message ........ error : Table upgrade required. Please do "REPAIR TABLE `volume`" or dump/reload to fix it! 

فأنت بحاجة إلى تحديث إصدار قاعدة البيانات:

 /opt/zimbra/libexec/scripts/migrate20100913-Mysql51.pl 

في هذه اللحظة المثيرة ، خذ الدف في يدك اليمنى والصلاة ...

بعد التحديث ، نتحقق من قواعد البيانات مرة أخرى ونصلحها إذا لزم الأمر:

 /opt/zimbra/libexec/zmdbintegrityreport /opt/zimbra/libexec/zmdbintegrityreport -r 

إذا مرة أخرى خطأ القفل العام والبطيء ، فراجع أعلاه كيفية إصلاحه.

حسنًا ، آخر ما يجب فعله قبل ترقية نظام التشغيل هو:

تحميل المتغيرات zimbra:

 source /opt/zimbra/bin/zmshutil zmsetvars 

ماي احتياطية:

 /opt/zimbra/mysql/bin/mysqldump --user=root --password=$mysql_root_password --socket=$mysql_socket --all-databases --single-transaction --master-data --flush-logs > {name dump}.sql 

إذا عاد الخطأ ، فإن الخيار أدناه:

 /opt/zimbra/mysql/bin/mysqldump --user=root --password=$mysql_root_password --socket=$mysql_socket --all-databases --single-transaction --flush-logs > {name dump}.sql 

ldap النسخ الاحتياطي:

 /opt/zimbra/libexec/zmslapcat /opt/zimbra/libexec/zmslapcat -c /opt/zimbra/libexec/zmslapcat -a 

بعد ذلك ، نقوم مرة أخرى بنقل المجلدات db, data, index, localconfig.xml وكذلك النسخ الاحتياطية
 sql  ldap</code>   ,            ,     scsi 

? / , CentOS6.

, .. , :

6 Centos zimbra 7..., , 8.0.8 8.0.0!!!

8.0.8 CentOS7 ----> 8.5.1 ----> 8.6.0 :

zmprov ms <zimbraserverhostname> zimbraReverseProxyMailEnabled TRUE zimbraReverseProxyHttpEnabled TRUE
--->8.7.9 ------> 8.8.9.

.
sql ldap</code> , , scsi

? / , CentOS6.

, .. , :

6 Centos zimbra 7..., , 8.0.8 8.0.0!!!

8.0.8 CentOS7 ----> 8.5.1 ----> 8.6.0 :

zmprov ms <zimbraserverhostname> zimbraReverseProxyMailEnabled TRUE zimbraReverseProxyHttpEnabled TRUE

--->8.7.9 ------> 8.8.9.

.

Source: https://habr.com/ru/post/ar474164/


All Articles