خطایابی ارورها

بعضی مواقع هنگام Start کردن Admin Server با خطای زیر(BackendRoot) مواجه می‌شویم.

برای دانستن علت این موضوع و نحوه حل این مشکل در ادامه با ما همراه باشید.

java.lang.ClassCastException: com.octetstring.vde.backend.BackendRoot cannot be cast to com.octetstring.vde.backend.standard.BackendStandard

خطای اشاره شده هنگامی رخ می‌دهد که Admin Server توسط کاربر root استارت شود.

 

راه حل خطای BackendRoot:

بدین منظور به مسیر DOMAIN_HOME/servers/AdminServer/data/ldap/ldapfiles$ رفته و دستور زیر را اجرا می‌کنیم.

#chown oracle:oracle EmbeddedLDAP.tran

نکته ۱: در صورتی که Admin Server با کاربر root استارت شده شده باشد مالکیت این فایل (EmbeddedLDAP.tran) به کاربر و گروه root تغییر می‌کند و به همین منظور دستور بالا باید توسط Superuser اجرا شود.

نکته ۲: در دستور فوق فرض بر آن بوده است که کاربری که هنگام نصب در نظر گرفته‌ایم oracle و از گروه oracle بوده است.

به منظور محکم کاری و اجتناب از هر گونه خطای احتمالی پیشنهاد می‌کنیم دستور بالا را بر روی کل Domain و به صورت Recursive اجرا کنید.

#chown -R oracle:oracle [$DOMAIN_HOME]

 

نکته ۳: در صورتی که باز هم خطای مشابهی دریافت کردید؛ دایرکتوری‌های Cache و tmp سرور مربوطه را خالی کنید. احتمال خیلی زیاد تا اینجا مشکل حل شده باشد. در غیر اینصورت از دایرکتوری ldap نسخه پشتیبان تهیه بفرمایید و محتویات آن را خالی کنید(با قبول مسئولیت و خطرات) و مجددا اقدام به Start کردن Admin Server فرمایید.

 

پیشگیری:

در صورتی ناآگاهی کاربرانی که با سیستم در ارتباطند؛ احتمال بروز خطای بالا به دفعات فراوان می‌رود.

جهت جلوگیری از ایجاد این خلل در روند اجرای کار و مشکلات بعدی٬ راه حل مناسبی در زیر ارائه کرده‌ایم.

 

تمامی اسکریپت‌های اجرایی که کاریران آن را اجرا می‌کنند اعم از startWeblogic و startNodeManager و غیره را در محیط ویرایشگر متن باز کنید.

دستورات زیر را در ابتدای اسکریپت وارد فرمایید.

#Recommended by IranWeblogic.ir
 if [[ $EUID -eq 0 ]]; then
         echo "Do Not run the script under root user"
         exit 1
 fi
#


مطابق شکل زیر

جلوگیری از اجرای اسکریپت توسط یوزر root و ایجاد خطای BackendRoot
جلوگیری از اجرای اسکریپت توسط یوزر root و ایجاد خطای BackendRoot توسط ایران وبلاجیک

نکته ۴: راه حل ارایه شده جهت پیشگیری بهترین راه حل ممکن می‌باشد؛ که در جایی به آن اشاره نشده است.

One thought on “رفع خطای com.octetstring.vde.backend.BackendRoot”

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

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