السلام عليكم ورحمة الله وبركاته
الموضوع عن مشكلة اخد باك اب لموقع على سيرفر او مشكلة استرجاع الباك اب على سيرفر
ممكن المشكلة دي من اسباب كتير
- اول حاجة ، ممكن ملف الباك اب معطوب أوغير كامل وخاصة لو كان مساحة الموقع كبيرة ، ف ممكن يكون الباك مكتملش
ومن وجهة نظري لما تحب تاخد باك اب لموقع كبير خلى الفولدرات اللى فيها داتا مساحتها كبيرة و مستخدمة مساحة كبيرة خارج الباك اب ، يعني خرجها خارج اليوزر خالص (فى الهوم مثلا /home) وبعدين خد الباك اب بتاعك ، وبعدها رجع داخل اليوزر واضغط الفولدرات دي لوحدها فولدر فولدر ، وبعد ما تنقل الباك للسيرفر اللى عايز تنقله ليه وتسترجع الباك اب ، ادخل فى www من الشيل واسحب الملفات المضغوطة دي (ملفات الفولدرات اللى ضغطناها) وفك ضغطها عادي .
احنا عندنا سيرفر رقم 1 (ودا عليه موقع العميل اللى عايزين ننقله لسيرفر تاني) ، وفيه سيرفر رقم 2 (ودا اللى العميل عايز ينقل ليه)
انت صاحب استضافة وصاحب السيرفر رقم 1 ( والعميل عايز ينقل من عندك ) ، يروح لواحد تاني صاحب استضافة وصاحب سيرفر رقم 2 (والعميل عايز ينقل موقعه عنده) ، وفى كلتا الحالتين العميل موقعه مساحته كبيرة جداً .
علشان انت لا تسوي ضغط على سيرفرك كصاحب سيرفر رقم 1 وانت بتعمل للعميل الباك اب الخاص بموقعه ، وايضاً الاخ الكريم صاحب السيرفر رقم 2 لا يريد ضغط على سيرفره اثناء عملية استرجاع باك اب موقع العميل ، يبقى من الصح ان يكون فيه تنسيق بينكم او لو مفيش مثلاً طريقة اتصال بينكم ، ممكن يقوم العميل بحلقة الوصل دي ، ويوصل المعلومات الخاصة بـ باك اب موقعه من صاحب السيرفر رقم 1 الى صاحب السيرفر رقم 2
يعني مثلا على سبيل المثال عندنا موقع (example.com) اليوزر بتاعه اسمه user و اليوزر دا مستخدم حوالى 6 جيجا او اكتر ، والمساحة دي اغلبها مثلاً ، مثلاً فى المجلد الخاص بمركز التحميل (up) ، الملفات اللى داخل مجلد uploads اللى جوا مركز التحميل دا مستخدمة مساحة كبيرة جدا نقول مثلاً 5 جيجا ، دا غير انه فيه مجلدات لسكربتات تانية و قواعد بيانات على الموقع دا مثلاً هي كمان مساحتها كبيرة ، يعني نلاقي مساحة الموقع دا داخله فى 10 جيجا توتال مثلاً ، طيب يبقى حرام علينا نعمل باك اب للموقع دا من السي بانل او باستخدام الامر :
أولا : ممكن الباك اب يبقى مش كامل وحصل فيه أخطاء
ثانياً : لود وضغط على السيرفر وهو بيعمل الباك اب دا
ثالثاً : ممكن نيجي نسترجع الباك دا على سيرفر تاني متكتملش العملية دي
يبقى احنا ناخد الملفات اللى مستخدمه مساحة دي خارج المسار بتاع اليوزر دا خالص وبعدين ناخد له الباك اب وبعدين نرجعها تاني ونضغطها لوحدها ، مثلاً ، مجلد uploads داخل مجلد up فى الموقع اللى اليوزر بتاعه user مساحتة كبيرة وعايزين ناخد الباك من غيره ونبقى ننقله بعد ما ناخد الباك ، دا المسار بتاع المجلد دا :
انتهى الباك اب وصغير ولذيذ ومعملناش لود ولا ضغط على سيرفرنا ، موجود الباك عندنا فى الهوم :
اخدنا الباك ونقلناه وجاهز للسحب من سيرفر تاني او للتحميل (احنا نقلناه داخل www لليوزر user واللى الدومين بتاعه example.com ) يبقى لو هنسحب ملف الباك دا من سيرفر تاني هنستخدم الرابط دا :
كدا خلصنا من الباك للموقع اتاخد واتنقل بقواعد بياناته بكل حاجه ، ما عدا المجلدات اللى طلعناها خارج الموقع (اللى مساحتها كبيرة دي )
ننقل بقى تاني المجلد uploads اللى نقلناه دا للموقع بتاعنا
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
بقى دلوقتي عندنا المجلد uploads مضغوط داخل مجلد up
http://www.example.com/up/uploads.tar.gz
دا بخصوص اخد نسخة باك اب لموقع كبير ونقله واسترجاعه على السيرفر المنقول اليه ، وبدون اي مشاكل .
-------------------------------------------------------
نيجي بقى لبعض مشاكل استرجاع باك اب لموقع وبعض حلولها :
فيه مشكلة فى استرجاع الباك اب وانت متأكد ان الباك اب اتاخد صح ، لكن كمان عارف ان الباك اب مساحته كبيرة
- ممكن مفيش مساحة على سيرفرك ، بس لو كانت المشكلة من المساحة كان هيظهر لك رسالة خطأ ان disk executed ، فموضوع المساحة دا بسيط واكيد كمان انت عارف المساحة المستخدمة والخالية على سيرفرك .
- حاجة تانية تصريح فك الملفات عندك على السيرفر
التصريح الصحيح لها 755 ، وعشان تعرف التصريح مظبوط ولا لأ ،
وشوف التصريح امام tar المفروض بيكون
وهو 755 ، r=4 ، w=2 ، x=1 ، لو عندك التصريح مظبوط ، يعني زي ماهو فى الكود فوق يبقى كدا تمام
لو التصريح غير كدا يبقى نفذ الامر دا عشان تديله التصريح 755
- ولو سيرفرك vps ممكن ايضاً تكون المشكلة عندك من الميموري انه مش كافى لإتمام عملية استرجاع الباك اب ، وعشان تعرف اذا كانت المشكلة منها او لأ ، قبل ما تعمل استرجاع للباك اب، ادخل الشيل و نفذ الامر :
هتلاقي عندك تحت resource حاجه اسمها privvmpages وهي المحدد لك من استهلاك الرام امامها هتركز قبل استرجاع الباك اب على الرقم اللى تحت failcnt هو الطبيعي بتاعه 0 (failcnt دا عدد الوحدات اللى سيرفرك محدد له حاجه معينه من الـ resource وهو تعدي الحاجه دي ، الوحدات اللى تجاوزها او تعداها اثناء عملية ما بتظهر في failctnt وطبعا العملية اللى كان بيعملها وقتها وتعدي الـ limit بتاعه بيتعمل لها kill او قتل ) او لو موجود اي رقم ، فيبقى هو بيتعدى المحدد له من الرام اثناء عمليات على السيرفر ، المهم هتركز عليها قبل استرجاع الباك اب واعرف الرقم كويس ، واعمل استرجاع للباك اب ، ونفذ نفس الامر مرة تانية ، ولو لقيت الرقم الموجود امامprivvmpages تحت خانة failcnt زاد عن ما كان قبل عملية استرجاع الباك اب ، يبقى كدا بيتعدي السموح له من الرام وبيكون استهلك الرام استهلاك كامل والعملية محتاجة لاكتر عشان تكتمل، لو انت صاحب النود الرئيسي تقدر تزود للفي بي اس دا privvmpages
اعرف الـ uid الخاص بالفي بي اس اللى عايز تزود له privvmpagesمن خلال نفس الامر السابق هتلاقي حاجه اسمها uid وتحتها رقم ، الرقم دا هو ال uid الخاص بالفي بي اس ، وليكن مثلا على سبيل المثال 100
هتدخل الشيل للنود الرئيسي ، هديلك اكتر من قيمة تحددها للرام للفي بي اس ( 1024 او 2048)
لو هتحدد له 1 جيجا من الرام (1024 M) وكما ذكرت [على سبيل المثال رقم 100 هو رقم ال uid للفي بي اس ]:
هتحدد له 2 جيجا (2048 M ) :
الموضوع عن مشكلة اخد باك اب لموقع على سيرفر او مشكلة استرجاع الباك اب على سيرفر
ممكن المشكلة دي من اسباب كتير
- اول حاجة ، ممكن ملف الباك اب معطوب أوغير كامل وخاصة لو كان مساحة الموقع كبيرة ، ف ممكن يكون الباك مكتملش
ومن وجهة نظري لما تحب تاخد باك اب لموقع كبير خلى الفولدرات اللى فيها داتا مساحتها كبيرة و مستخدمة مساحة كبيرة خارج الباك اب ، يعني خرجها خارج اليوزر خالص (فى الهوم مثلا /home) وبعدين خد الباك اب بتاعك ، وبعدها رجع داخل اليوزر واضغط الفولدرات دي لوحدها فولدر فولدر ، وبعد ما تنقل الباك للسيرفر اللى عايز تنقله ليه وتسترجع الباك اب ، ادخل فى www من الشيل واسحب الملفات المضغوطة دي (ملفات الفولدرات اللى ضغطناها) وفك ضغطها عادي .
احنا عندنا سيرفر رقم 1 (ودا عليه موقع العميل اللى عايزين ننقله لسيرفر تاني) ، وفيه سيرفر رقم 2 (ودا اللى العميل عايز ينقل ليه)
انت صاحب استضافة وصاحب السيرفر رقم 1 ( والعميل عايز ينقل من عندك ) ، يروح لواحد تاني صاحب استضافة وصاحب سيرفر رقم 2 (والعميل عايز ينقل موقعه عنده) ، وفى كلتا الحالتين العميل موقعه مساحته كبيرة جداً .
علشان انت لا تسوي ضغط على سيرفرك كصاحب سيرفر رقم 1 وانت بتعمل للعميل الباك اب الخاص بموقعه ، وايضاً الاخ الكريم صاحب السيرفر رقم 2 لا يريد ضغط على سيرفره اثناء عملية استرجاع باك اب موقع العميل ، يبقى من الصح ان يكون فيه تنسيق بينكم او لو مفيش مثلاً طريقة اتصال بينكم ، ممكن يقوم العميل بحلقة الوصل دي ، ويوصل المعلومات الخاصة بـ باك اب موقعه من صاحب السيرفر رقم 1 الى صاحب السيرفر رقم 2
يعني مثلا على سبيل المثال عندنا موقع (example.com) اليوزر بتاعه اسمه user و اليوزر دا مستخدم حوالى 6 جيجا او اكتر ، والمساحة دي اغلبها مثلاً ، مثلاً فى المجلد الخاص بمركز التحميل (up) ، الملفات اللى داخل مجلد uploads اللى جوا مركز التحميل دا مستخدمة مساحة كبيرة جدا نقول مثلاً 5 جيجا ، دا غير انه فيه مجلدات لسكربتات تانية و قواعد بيانات على الموقع دا مثلاً هي كمان مساحتها كبيرة ، يعني نلاقي مساحة الموقع دا داخله فى 10 جيجا توتال مثلاً ، طيب يبقى حرام علينا نعمل باك اب للموقع دا من السي بانل او باستخدام الامر :
كود:
/scripts/pkgacct user
أولا : ممكن الباك اب يبقى مش كامل وحصل فيه أخطاء
ثانياً : لود وضغط على السيرفر وهو بيعمل الباك اب دا
ثالثاً : ممكن نيجي نسترجع الباك دا على سيرفر تاني متكتملش العملية دي
يبقى احنا ناخد الملفات اللى مستخدمه مساحة دي خارج المسار بتاع اليوزر دا خالص وبعدين ناخد له الباك اب وبعدين نرجعها تاني ونضغطها لوحدها ، مثلاً ، مجلد uploads داخل مجلد up فى الموقع اللى اليوزر بتاعه user مساحتة كبيرة وعايزين ناخد الباك من غيره ونبقى ننقله بعد ما ناخد الباك ، دا المسار بتاع المجلد دا :
كود:
/home/[COLOR=Red]user[/COLOR]/www/up/uploads
طيب نخرجه بره اليوزر ، نضعه فى الهوم مثلا ، بس الافضل تنشأ فولدر فى الهوم تحط داخله الحاجات دي ، ونسميه مثلا اسم مميز يكون واضح بين مجلدات اليوزرات :
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
كود:
mkdir /home/USERBACKUP
وبعدها ننقل بقى مجلد uploads للفولدر دا :
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
كود:
cd /home/[COLOR=Red]user[/COLOR]/www/up
mv uploads /home/USERBACKUP/uploads
ونطبق موضوع النقل دا على الفولدرات اللى مساحتها كبيرة جدا فى الموقع دا بنفس الطريقة ، وبعدها ناخد باك اب للموقع :
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
كود:
/scripts/pkgacct [COLOR=Red]user[/COLOR]
انتهى الباك اب وصغير ولذيذ ومعملناش لود ولا ضغط على سيرفرنا ، موجود الباك عندنا فى الهوم :
كود:
/home/cpmove-[COLOR=Red]user[/COLOR].tar.gz
طيب هننقل ملف الباك دا جوا الموقع ونديله تصريح علشان نقدر نسحب الملف دا من السيرفر التاني :
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
كود:
cd /home
chmod 666 cpmove-[COLOR=Red]user[/COLOR].tar.gz
mv cpmove-[COLOR=Red]user[/COLOR].tar.gz /home/[COLOR=Red]user[/COLOR]/www/cpmove-[COLOR=Red]user[/COLOR].tar.gz
اخدنا الباك ونقلناه وجاهز للسحب من سيرفر تاني او للتحميل (احنا نقلناه داخل www لليوزر user واللى الدومين بتاعه example.com ) يبقى لو هنسحب ملف الباك دا من سيرفر تاني هنستخدم الرابط دا :
http://www.example.com/cpmove-user.tar.gz
يعني هناخد الملف من السيرفر التاني ب wget ، ادخل السيرفر التاني اللى هتنقل له الباك دا :
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
كود:
cd /home
wget http://www.[COLOR=Red]example.com[/COLOR]/cpmove-[COLOR=Red]user[/COLOR].tar.gz
اعمل استرجاع للباك اب :
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
كود:
/scripts/restorepkg [COLOR=Red]user[/COLOR]
كدا خلصنا من الباك للموقع اتاخد واتنقل بقواعد بياناته بكل حاجه ، ما عدا المجلدات اللى طلعناها خارج الموقع (اللى مساحتها كبيرة دي )
ننقل بقى تاني المجلد uploads اللى نقلناه دا للموقع بتاعنا
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
كود:
cd /home/USERBACKUP
mv uploads /home/[COLOR=Red]user[/COLOR]/www/up/uploads
ونضغط المجلد :
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
(الامر بيتنفذ على سيرفر رقم 1 اللى عليه الموقع)
كود:
cd /home/[COLOR=Red]user[/COLOR]/www/up
tar -czvf uploads.tar.gz uploads
بقى دلوقتي عندنا المجلد uploads مضغوط داخل مجلد up
كود:
/home/[COLOR=Red]user[/COLOR]/www/up/uploads.tar.gz
أو بطريقة تانية :
http://www.example.com/up/uploads.tar.gz
ادخل السيرفر التاني اللى انت نقلت ليه الباك اب بتاع الموقع وعملت له استرجاع والموقع عايز يكمل بقية ملفاته ، لسه باقي له مجلد بره ، دا اهم مجلد عند العميل ، دا 6 جيجا ، طيب نجيب للعميل بقية موقعه :
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
كود:
cd /home/[COLOR=Red]user[/COLOR]/www/up
wget http://www.[COLOR=Red]example.com[/COLOR]/up/uploads.tar.gz
فك ضغط الملف :
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
كود:
tar -zxvf uploads.tar.gz
بقى موجود عندنا المجلد uploads خلاص داخل مجلد up على سيرفر 2 ، نحذف بقى الملف المضغوط بتاعه عشان المساحة ، بس بعد ما تتأكد بالفعل من وجود المجلد ومساحته :
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
كود:
rm -rf uploads.tar.gz
اظبط التصاريح لليوزر على كافة محتوياته من ملفات ومجلدات :
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
(الامر بيتنفذ على سيرفر رقم 2 اللى هيتنقل ليه الموقع)
كود:
chmod +s /bin/pwd
/scripts/enablefileprotect
/scripts/chownpublichtmls
/scripts/fixeverything
دا بخصوص اخد نسخة باك اب لموقع كبير ونقله واسترجاعه على السيرفر المنقول اليه ، وبدون اي مشاكل .
-------------------------------------------------------
نيجي بقى لبعض مشاكل استرجاع باك اب لموقع وبعض حلولها :
فيه مشكلة فى استرجاع الباك اب وانت متأكد ان الباك اب اتاخد صح ، لكن كمان عارف ان الباك اب مساحته كبيرة
- ممكن مفيش مساحة على سيرفرك ، بس لو كانت المشكلة من المساحة كان هيظهر لك رسالة خطأ ان disk executed ، فموضوع المساحة دا بسيط واكيد كمان انت عارف المساحة المستخدمة والخالية على سيرفرك .
- حاجة تانية تصريح فك الملفات عندك على السيرفر
كود:
/bin/tar
التصريح الصحيح لها 755 ، وعشان تعرف التصريح مظبوط ولا لأ ،
كود:
cd /bin
كود:
ls -la
وشوف التصريح امام tar المفروض بيكون
كود:
rwxr-xr-x
وهو 755 ، r=4 ، w=2 ، x=1 ، لو عندك التصريح مظبوط ، يعني زي ماهو فى الكود فوق يبقى كدا تمام
كود:
rwx = 4 + 2 + 1 = 7
r-x = 4 + 1 = 5
r-x = 4 + 1 = 5
لو التصريح غير كدا يبقى نفذ الامر دا عشان تديله التصريح 755
كود:
chmod 755 /bin/tar
- ولو سيرفرك vps ممكن ايضاً تكون المشكلة عندك من الميموري انه مش كافى لإتمام عملية استرجاع الباك اب ، وعشان تعرف اذا كانت المشكلة منها او لأ ، قبل ما تعمل استرجاع للباك اب، ادخل الشيل و نفذ الامر :
كود:
cat /proc/user_beancounters
هتلاقي عندك تحت resource حاجه اسمها privvmpages وهي المحدد لك من استهلاك الرام امامها هتركز قبل استرجاع الباك اب على الرقم اللى تحت failcnt هو الطبيعي بتاعه 0 (failcnt دا عدد الوحدات اللى سيرفرك محدد له حاجه معينه من الـ resource وهو تعدي الحاجه دي ، الوحدات اللى تجاوزها او تعداها اثناء عملية ما بتظهر في failctnt وطبعا العملية اللى كان بيعملها وقتها وتعدي الـ limit بتاعه بيتعمل لها kill او قتل ) او لو موجود اي رقم ، فيبقى هو بيتعدى المحدد له من الرام اثناء عمليات على السيرفر ، المهم هتركز عليها قبل استرجاع الباك اب واعرف الرقم كويس ، واعمل استرجاع للباك اب ، ونفذ نفس الامر مرة تانية ، ولو لقيت الرقم الموجود امامprivvmpages تحت خانة failcnt زاد عن ما كان قبل عملية استرجاع الباك اب ، يبقى كدا بيتعدي السموح له من الرام وبيكون استهلك الرام استهلاك كامل والعملية محتاجة لاكتر عشان تكتمل، لو انت صاحب النود الرئيسي تقدر تزود للفي بي اس دا privvmpages
اعرف الـ uid الخاص بالفي بي اس اللى عايز تزود له privvmpagesمن خلال نفس الامر السابق هتلاقي حاجه اسمها uid وتحتها رقم ، الرقم دا هو ال uid الخاص بالفي بي اس ، وليكن مثلا على سبيل المثال 100
هتدخل الشيل للنود الرئيسي ، هديلك اكتر من قيمة تحددها للرام للفي بي اس ( 1024 او 2048)
لو هتحدد له 1 جيجا من الرام (1024 M) وكما ذكرت [على سبيل المثال رقم 100 هو رقم ال uid للفي بي اس ]:
كود:
vzctl set [COLOR=Red]100 [/COLOR]--privvmpages 262144:262144 --save
هتحدد له 2 جيجا (2048 M ) :
كود:
vzctl set [COLOR=Red]100 [/COLOR]--privvmpages 524288:524288 --save
بعدها ريستارت للفي بي اس
كود:
vzctl restart [COLOR=Red]100[/COLOR]
- حاجه تانية خالص ، انك تسترجع الباك اب يدوي
نقول مثلا ان الباك اب اسمه cpmove-user.tar.gz وموجود على السيرفر فى الهوم
من الافضل انك تكريت له فولدر وتضعه بداخله ، يعني مثلا :
نقول مثلا ان الباك اب اسمه cpmove-user.tar.gz وموجود على السيرفر فى الهوم
كود:
/home/cpmove-[COLOR=Red]user[/COLOR].tar.gz
من الافضل انك تكريت له فولدر وتضعه بداخله ، يعني مثلا :
كود:
mkdir /home/aabbcc
انقل ملف الباك اب للفولدر اللى كريته فى الهوم :
كود:
mv /home/cpmove-[COLOR=Red]user[/COLOR].tar.gz /home/aabbcc/cpmove-[COLOR=Red]user[/COLOR].tar.gz
بعد كدا هتدخل للفولدر عشان تبدأ تفك ملف الباك اب :
كود:
cd /home/aabbcc
هتبدأ فك ضغط الملف :
كود:
tar -zxvf cpmove-[COLOR=Red]user[/COLOR].tar.gz
بعد ما ينتهي ادخل الفولدر اللى اتفك :
كود:
cd cpmove-[COLOR=Red]user[/COLOR]
لو عملت استعراض للملفات المجلدات بداخله من خلال الامر ls ، هتلاقي ملف بإسم homedir.tar ، هتفك ضغط الملف :
كود:
tar -xvf homedir.tar
طبعا عملية فك الملف سواء الاخيرة او اللى قبلها ممكن تاخد وقت كبير على حسب مساحة الباك اب دا .
بعد ما ينتهي اعمل استعراض للملفات الموجودة من خلال الامر ls .
كدا بقى عندك اهم حاجتين عايزينهم فى الباك اب دا :
- الداتا الموجودة الخاصة بالموقع ، ودي موجودة فى مجلد www
- قواعد البيانات الخاصة بالموقع ، ودي موجودة فى مجلد mysql
- طيب احنا كدا الداتا موجودة والقواعد ، لكن ازاي هنركبها >> بسيطة ، هتكريت اكونت جديد على سيرفرك ويكون اليوزر بتاعه نفس اسم اليوزر الخاص بالموقع اللى فكيت الباك اب بتاعه (عشان حاجه واحدة بس ، لو الموقع عليه سكربتات كتير متعدلش فى كونفيج كل سكربت من اليوزر الموجود فى الملف لليوزر الجديد) ، يعني الافضل انك تنشأ اكونت بنفس اليوزر ، وطبعا احنا المثال بتاعنا هنا اليوزر اسمه user ، يعني كدا بعد انشاء الاكونت هيكون مساره كدا :
كويس جدا ، هنبدأ بنقل الداتا لليوزر اللى انشأناه ، هتدخل على مجلد www او public_html (الاتنين نفس محتوياتهم واحده) :
بعد ما ينتهي اعمل استعراض للملفات الموجودة من خلال الامر ls .
كدا بقى عندك اهم حاجتين عايزينهم فى الباك اب دا :
- الداتا الموجودة الخاصة بالموقع ، ودي موجودة فى مجلد www
- قواعد البيانات الخاصة بالموقع ، ودي موجودة فى مجلد mysql
- طيب احنا كدا الداتا موجودة والقواعد ، لكن ازاي هنركبها >> بسيطة ، هتكريت اكونت جديد على سيرفرك ويكون اليوزر بتاعه نفس اسم اليوزر الخاص بالموقع اللى فكيت الباك اب بتاعه (عشان حاجه واحدة بس ، لو الموقع عليه سكربتات كتير متعدلش فى كونفيج كل سكربت من اليوزر الموجود فى الملف لليوزر الجديد) ، يعني الافضل انك تنشأ اكونت بنفس اليوزر ، وطبعا احنا المثال بتاعنا هنا اليوزر اسمه user ، يعني كدا بعد انشاء الاكونت هيكون مساره كدا :
كود:
/home/[COLOR=Red]user[/COLOR]
كويس جدا ، هنبدأ بنقل الداتا لليوزر اللى انشأناه ، هتدخل على مجلد www او public_html (الاتنين نفس محتوياتهم واحده) :
كود:
cd www
جوا المجلد دا كل الملفات الخاصة بالموقع وتقدر تتأكد من وجودها من خلال الامر ls ، هنبدأ ننقلها للاكونت اللى كريتناه على السيرفر :
كدا نقلنا الملفات لليوزر ، بس ناقص اننا نعطي لليوزر دا الصلاحيات على الملفات والمجلدات دي انه يقدر يعدل او يحذف فيها ، لان طبعا انت نقلت له ملفات وانت بستخدم صلاحية روت مش يوزر ، بكدا اليوزر دا لو دخلت السي بانل بتاعته او الاف تي بي وحاولت انك تعدل على او تحذف او تغير مسمي اي ملف مش هيقبل منك الكلام دا ، طيب دلوقتي نسيب التصريحات دي للاخر ونبدأ فى المهمة الكبيرة ، وهي تركيب قواعد البيانات الخاصة بالاكونت اللى احنا فكينا الباك اب بتاعه يدوي >> على الاكونت الجديد اللى كريتناه على السيرفر ، يعن احنا نقلنا الملفات ومجلدات السكربتات فى الخطوة السابقة ، لكن لسه باقى القواعد ، ال mysql يابطل .
دي اللى ممكن تاخد منك وقت فعلاً لو الباك دا فيه قواعد كتيرة او بمعني تاني عنده سكربتات كتيرة شغالة باستخدام قواعد بيانات ، المهم نيجي لتركيب القواعد دي ، احنا دلوقتي جوا فولدر www ، اللى هو دا :
هنرجع خطوة للخلف عشان ندخل على فولدر mysql اللى فيه القواعد :
تقدر تشوف القواعد الموجودة فى الباك اب دا بعد دخولك لمجلد mysql من خلال امر :
استبدل ip بـ أي بي سيرفرك ، هيطلب منك اليوزر والباس ، هتدخل له بيانات اليوزر اللى انت أنشأته على السيرفر واللى هو فى مثالنا هنا user والباسورد اللى عملته لليوزر دا .
بعدها هتدخل على ادارة الملفات او File Manager ، وتدخل www ، ونشوف اللى قلنا عليه ، مثلا سكربت من ضمن السكربت هو vb ، ندخل نشوف فى الكونفيج بتاعه هو كان بيانات القاعدة بتاعته ايه ، ودي الحاجات اللى محتاجينها (اسم القاعدة ، واليوزر الخاص بالقاعدة دي ، وباسورد اليوزر دا) :
تمام عرفنا بيانات القاعدة ، ولتكن مثلا على سبيل المثال :
كود:
mv * /home/[COLOR=Red]user[/COLOR]/www/
كدا نقلنا الملفات لليوزر ، بس ناقص اننا نعطي لليوزر دا الصلاحيات على الملفات والمجلدات دي انه يقدر يعدل او يحذف فيها ، لان طبعا انت نقلت له ملفات وانت بستخدم صلاحية روت مش يوزر ، بكدا اليوزر دا لو دخلت السي بانل بتاعته او الاف تي بي وحاولت انك تعدل على او تحذف او تغير مسمي اي ملف مش هيقبل منك الكلام دا ، طيب دلوقتي نسيب التصريحات دي للاخر ونبدأ فى المهمة الكبيرة ، وهي تركيب قواعد البيانات الخاصة بالاكونت اللى احنا فكينا الباك اب بتاعه يدوي >> على الاكونت الجديد اللى كريتناه على السيرفر ، يعن احنا نقلنا الملفات ومجلدات السكربتات فى الخطوة السابقة ، لكن لسه باقى القواعد ، ال mysql يابطل .
دي اللى ممكن تاخد منك وقت فعلاً لو الباك دا فيه قواعد كتيرة او بمعني تاني عنده سكربتات كتيرة شغالة باستخدام قواعد بيانات ، المهم نيجي لتركيب القواعد دي ، احنا دلوقتي جوا فولدر www ، اللى هو دا :
كود:
/home/aabbcc/cpmove-user/www
هنرجع خطوة للخلف عشان ندخل على فولدر mysql اللى فيه القواعد :
كود:
cd ..
cd mysql
تقدر تشوف القواعد الموجودة فى الباك اب دا بعد دخولك لمجلد mysql من خلال امر :
كود:
ls
هتظهر لك بعدها كل قواعد البيانات واللى بتبدأ بإسم اليوزر :
و بتنتهي بـ .sql
ونقول مثلا انك لقيت القواعد دي اللى موجودة
دا مثلا يعني ممكن ما تلاقيش غير قاعدة واحدة او اتنين او تلاته وممكن تلاقي اللى تلاقيه هو كان صاحب الموقع مركب سكربتات كتير ملناش دعوه
طيب عشان لو القواعد دي كتير ومنعدلش فى ملف كونفيج كل سكربت ، من الافضل انك تدخل السي بانل للاكونت اللى انت كريته على السيرفر وتدخل على www وتدخل على مجلد كل سكربت وتشوف القاعدة دي كانت شغاله ببيانات ايه على اليوزر دا قبل كدا ، طبعا مش هتدخل بالدومين (ممكن يكون لسه متفعلش) ، هتدخل بـ أي بي سيرفرك :
كود:
[COLOR=Red]user[/COLOR]_
و بتنتهي بـ .sql
ونقول مثلا انك لقيت القواعد دي اللى موجودة
كود:
user_games.sql user_up.sql user_video.sql
user_mob.sql user_vb.sql
دا مثلا يعني ممكن ما تلاقيش غير قاعدة واحدة او اتنين او تلاته وممكن تلاقي اللى تلاقيه هو كان صاحب الموقع مركب سكربتات كتير ملناش دعوه
طيب عشان لو القواعد دي كتير ومنعدلش فى ملف كونفيج كل سكربت ، من الافضل انك تدخل السي بانل للاكونت اللى انت كريته على السيرفر وتدخل على www وتدخل على مجلد كل سكربت وتشوف القاعدة دي كانت شغاله ببيانات ايه على اليوزر دا قبل كدا ، طبعا مش هتدخل بالدومين (ممكن يكون لسه متفعلش) ، هتدخل بـ أي بي سيرفرك :
استبدل ip بـ أي بي سيرفرك ، هيطلب منك اليوزر والباس ، هتدخل له بيانات اليوزر اللى انت أنشأته على السيرفر واللى هو فى مثالنا هنا user والباسورد اللى عملته لليوزر دا .
بعدها هتدخل على ادارة الملفات او File Manager ، وتدخل www ، ونشوف اللى قلنا عليه ، مثلا سكربت من ضمن السكربت هو vb ، ندخل نشوف فى الكونفيج بتاعه هو كان بيانات القاعدة بتاعته ايه ، ودي الحاجات اللى محتاجينها (اسم القاعدة ، واليوزر الخاص بالقاعدة دي ، وباسورد اليوزر دا) :
كود:
Database name
Database user
User password
تمام عرفنا بيانات القاعدة ، ولتكن مثلا على سبيل المثال :
كود:
Database name = [COLOR=Red]user[/COLOR]_vb
Database user = [COLOR=Red]user[/COLOR]_vb
User password = vb
يبقى دلوقتي واحنا فى السي بانل وعرفنا القاعدة كانت بياناتها ايه ، هندخل على My SQL Databases عشان ننشأ قاعدة ويوزر وباسورد بنفس البيانات اللى عرفناها من ملف الكونفيج دي ، وطبعا هنعطي لليوزر كافة الصلاحيات على القاعدة ، يعني هنكريت قاعدة (vb) ونكريت يوزر (vb) وباسورد اليوزر (vb) ونربط اليوزر مع القاعدة add user to data base مع اعطاء اليوزر كافة الصلاحيات على القاعدة دي all privileges
كويس اوي ، نيجي بقى لتركيب القاعدة ، ما ننساش ان احنا فى الشيل جوا فولدر mysql اللى فيه القواعد ولازم عشان تنفذ الاوامر اللى جايه دي انك تكون جوا الفولدر اللى فيه القواعد دا عشان مسار ملف القاعدة اللى فى الامر اللى هنفذه عشان يركب لنا القاعدة دي ، من خلال الامر دا :
- user_vb = دا اسم يوزر القاعدة اللى أنشأناه من السي بانل
- vb = دا باسورد اليوزر دا
- user_vb = دا اسم القاعدة اللى أنشأناها من السي بانل
- user_vb.sql = دا ملف القاعدة الموجود فى فولدر mysql واللى نفذنا امر زرعه على القاعدة الموضح بياناتها .
وهتنفذ الخطوات اللى فاتت دي اللى هي من اول الخطوة :
الخطوات دي هنفذها على كل القواعد الموجودة واللى زي ما قلنا بتبدأ باسم اليوزر وبتنتهي بـ .sql
بعد كدا مننساش نعطي للاكونت اللى انشأناه التصاريح على الملفات ، من خلال تنفيذ الاوامر التالية ستقوم بعمل ضبط للتصاريح :
كويس اوي ، نيجي بقى لتركيب القاعدة ، ما ننساش ان احنا فى الشيل جوا فولدر mysql اللى فيه القواعد ولازم عشان تنفذ الاوامر اللى جايه دي انك تكون جوا الفولدر اللى فيه القواعد دا عشان مسار ملف القاعدة اللى فى الامر اللى هنفذه عشان يركب لنا القاعدة دي ، من خلال الامر دا :
كود:
mysql -u [COLOR=Red]user_vb[/COLOR] -p[COLOR=DarkOrchid]vb[/COLOR] [COLOR=RoyalBlue]user_vb[/COLOR] < [COLOR=Red]user_vb.sql[/COLOR]
- user_vb = دا اسم يوزر القاعدة اللى أنشأناه من السي بانل
- vb = دا باسورد اليوزر دا
- user_vb = دا اسم القاعدة اللى أنشأناها من السي بانل
- user_vb.sql = دا ملف القاعدة الموجود فى فولدر mysql واللى نفذنا امر زرعه على القاعدة الموضح بياناتها .
وهتنفذ الخطوات اللى فاتت دي اللى هي من اول الخطوة :
لحد اخر خطوة عملناها واللى هي تنفيذ امر زراعة ملف القاعدة على القاعدة اللى أنشأناهاونقول مثلا انك لقيت القواعد دي اللى موجودة
الخطوات دي هنفذها على كل القواعد الموجودة واللى زي ما قلنا بتبدأ باسم اليوزر وبتنتهي بـ .sql
بعد كدا مننساش نعطي للاكونت اللى انشأناه التصاريح على الملفات ، من خلال تنفيذ الاوامر التالية ستقوم بعمل ضبط للتصاريح :
كود:
chmod +s /bin/pwd
/scripts/enablefileprotect
/scripts/chownpublichtmls
/scripts/fixeverything
اسف لو أطلت فى الموضوع ولكن حبيت اوضح اكتر من شئ فى الموضوع اللى يتعلق بالباك اب
تحياتي للجميع ، واي استفسار او طلب موجودين .
تحياتي للجميع ، واي استفسار او طلب موجودين .