الإدارة المركزية لأجهزة لينكس

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

في حالة المعسكرات، فإننا نحتاج إلى إدارة عدد كبير من الأجهزة بالتوازي، نتأكد أننا ثبتنا openssh-server على كل الأجهزة، وعندها، وعلى نطاق كامل الشبكة يمكن القيام بمسح لمعرفة مفاتيح ssh ، نضع كل العنوانين التي يمكن ان يكون عليها الأجهزة في ملف بحيث يكون كل عنوان على سطر، فمثلا:

for i in {50..150} ; do echo 10.0.0.$i >> /tmp/hosts10.0.0.50-150 ; done

ثم نقوم بمسح باحثين عن المفاتيح العامّة لهذه العنوانين ونلحقها بقائمة المفاتيح المعروفة:

ssh-keyscan -4 -f /tmp/hosts10.0.0.50-150 >> ~/.ssh/known_hosts

الآن يمكننا الدخول على الأجهزة وتشغيل أوامر عليها بشكل متوازي بإستخدام أي أداة تسمح بعمل ssh بشكل متوازي مثل parallel-ssh والتي يمكن تثبيتها بإستخدام الأمر:

apt-get instsll parallel

الآن يمكننا عمل التجربة الأولى:

ويمكننا الآن أيضا عرض كل عنوان أي بي مع إسم الجهاز (بفرض أن بطاقة الشبكة على جميع الأجهزة باسم eth0)

parallel-ssh -ladefadmin -A -o /tmp -h /tmp/hosts10.0.0.50-150 "ifconfig eth0 | grep inet | cut -d: -f2 | cut -d' ' -f1 ; hostname"

النتائج ستكون بملفات في مجلد /tmp

لإزالة الحاجة لكلمة مرور ، يمكننا أن تطبق:

 cat /tmp/50-150  | parallel  ssh-copy-id

لإضافة حجوزات لعناوين الأيبي، نحتاج إلى عنوان العتاد الشبكي mac address وإسم الجهاز، يمكن إعتمادا على التجارب أعلاه القيام بالآتي:

parallel-ssh -ladefadmin -o /tmp/mac -h /tmp/50-150 "MAC=\$(ifconfig p2p1 | grep HWaddr | cut -d' ' -f11); echo \$MAC \$HOSTNAME"
cat /tmp/mac/*

ويمكن أيضا إستخدام avahi

avahi-resolve -4 -n lab1-pc5.local
echo -e lab1-pc{1..12}.local|tr ' ' '\n' | parallel avahi-resolve -n -4 {}

يمكن إستخدام الأوامر دون إضافتها لخادم أسماء مركزي في حال كان nss يستخدم avahi و mDNS

ping lab1-pc1.local