اجرای برنامه بدون نصب بواسطه NFS
توسط royaflash دذ ۱ شهر, ۱۳۹۵ دذ ۱۲:۲۰ بعد از ظهر | دسته‌بندی شده در گنو/لینوکس | با ۰ دیدگاه |637 views

هدف از این مطلب ارائه راهکاری برای استفاده از دستورهای یک توزیع لینوکسی بر روی توزیع لینوکسی دیگر، زمانی که امکان نصب بسته های نرم افزاری را بر روی توزیع دوم نداریم. همچنین هر دو توزیع لینوکسی دارای یک معماری (۳۲ یا ۶۴ بیتی) هستند. ایده کلی کار به این صورت است که از NFS برای اشتراک این دستورها در دیگر سیستم ها استفاده می کنیم. گام های کلی کار به صورت زیر هستند:

  • ۱ –  پیکربندی ماشین های سرور و کلانت NFS. سرور NFS ماشینی است که می خواهیم دستورهایی از آنرا بر روی دیگر ماشین ها که کلاینت های NFS هستند را به اشتراک بگذاریم.
  • ۲ – تغییر متغیر محیطی PATH برای کاربران ماشین های کلاینت.

به عنوان سناریو قصد داریم تا دو دستور nm-tool و htop را بر روی ماشینی به آدرس ۱۹۲.۱۶۸.۱.۲۰۰ را برای ماشین های هم شبکه آن به اشتراک بگذاریم. همچنین از توزیع لینوکسی CentOS 6 برای هر دو ماشین سرور و کلاینت استفاده کرده ام. برای شروع لازم است که NFS را  بر روی هر دو ماشین تنظیم کنید.

گام نخست : می خواهیم بر روی سرور دایرکتوری nfscmd/ را به اشتراک بگذاریم پس آنرا با دستور mkdir /nfscmd ایجاد کرده و  فایل etc/exports/ را ویرایش می کنیم.

 

سپس دستور زیر را اجرا کنید.

exportfs -a

پس از اکسپورت کردن باید سرویس های لازم راروی سرور فعال کنید.

گام دوم :حال دستور های htop و nm-tool را به درون دایرکتوری nfscmd/ کپی کنید. با استفاده از دستور which می توانید مسیر و محل دستورها را پیدا کنید.

which htop

which nm-tool

cp /usr/bin/htop /nfscmd

cp /usr/bin/nm-tool /nfs/cmd

گام سوم : باید بر روی کلاینت نصب و سرویس های آنرا فعال کنید. پس از نصب و فعال سازی سرویس های مورد نظر با دستور mkdir /mnt/nfscmd نقطه اتصال را بر روی کلاینت ایجاد و در نهایت با دستور زیر دایرکتوری روی سرور را بر روی نقطه اتصال کلاینت mount کنید.

mount -t nfs 192.168.1.200:/nfscmd /mnt/nfscmd

حال دستور cd /mnt/nfs را بر روی کلاینت اجرا کنید. خواهید دید که فایل اجرایی مربوط به دو دستور nm-tool و htop در زیر این دایرکتوری وجود دارند.

 

در این سناریو دستور nm-tool بر روی هر دو سیستم نصب هستند، اما دستور htop تنها بر روی ماشین اول ماشین سرور NFS) نصب می باشد. اگر بر روی کلاینت دستور nm-tool را اجرا کنید (بدون تعیین کردن مسیر)، پس دستور نصب شده بر روی سیستم اجرا می شود.

nm-tool

اما قادر می توایند دستور راه دور که در زیر دایرکتوری mnt/nfscmd/ قرار دارد را نیز اجرا کنید. (البته با ذکر مسیر)

mnt/nfscmd/nm-tool/

اما اگر دستور htop را بر روی کلاینت بدون ذکر مسیر mnt/nfscmd/htop/ اجرا کنید خطای زیر نشان داده می شود.

bash: htop: command not found-

اما اگر مسیر را مشخص کنید، دستور راه دور که بر روی کلاینت متصل شده است اجرا خواهد شد.

 mnt/nfscmd/htop/

 

برای عدم نیار به نوشتن مسیر منتهی به دستورهای زیر دایرکتوری mnt/nfscmd/ با دستور زیر متغیر PATH مربوط به هر کاربر را با افزودن مسیر mnt/nfscmd/ ویرایش کنید.

PATH=$PATH:/mnt/nfscmd

echo $PATH

 

حال دستور htop را بدون ذکر مسیر اجرا کنید. همچنین اگر دستور which htop را اجرا کنید خروجی زیر نشان داده خواهد شد.

mnt/nfscmd/htop/

دستور nm-tool به دو صورت محلی و راه دور وجود دارد، ولی اگر دستور which را برای دستور nm-tool اجرا کنید تنها یک مسیر و آنهم مسیر محلی در خروجی نشان داده می شود و به این دلیل است که مسیر محلی جاوی دستور nm-tool در محتوای متغیر محیطی PATH جلوتر از مسیر راه دور mnt/nfscmd/ قرار دارد.

usr/bin/nm-tool/

source=falearn

درباره - یاشار اسمعیل دخت هستم ۲۷ سالمه (به دنیال یافتم آنم که کیستم)به صورت ۱۰۰٪ به گنو/لینوکس مهاجرت کردم . من رو با نام royaflash میشناسید . در زمینه شبکه و امنیت شبکه فعالیت میکنم . لینوکس همیشه چیزی برای یادگیری داره و لینوکس یه فرهنگه . در صورت نیاز میتونین با آدرس ایمیل : [email protected] یا شماره تلفن : 09141100257 در ارتباط باشید . وبلاگ شخصی من (-:) درباره من

فرستادن یک دیدگاه

XHTML: شما می‌توانید از این برچسب‌ها استفاده کنید: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>