سایبریت

مدیریت متغیرهای محیطی در لینوکس (لینوکس برای هکرها – قسمت 9)

یکی از مشکلات کاربران متغیرهای محیطی در لینوکس هستند. اگرچه ویندوز هم دارای متغیرهای محیطی است، اما اکثر کاربران و مدیران هرگز متغیرهای محیطی خود را مدیریت نمی‌کنند.

متغیرهای محیطی (Environment Variables) متغیرهایی هستند که توسط محیط کاربری ما (شل BASH) استفاده می‌شود. هر کاربر ازجمله روت، دارای متغیرهای محیطی هستند که در مقادیر پیش‌فرض تنظیم می‌شوند مگر اینکه آن‌ها را تغییر دهند. ما می‌توانیم این مقادیر را شخصی سازی کنیم.

قبل از مطالعه این قسمت، مطمئن شوید که قسمت‌های قبلی سری آموزش لینوکس برای هکرهای اخلاقی را خوانده اید.

1- مشاهده متغیرهای محیطی

ما می‌توانیم متغیرهای محیطی خود را با تایپ دستور زیر ببینیم:

set

دستور set - متغیرهای محیطی در لینوکس

توجه داشته باشید که set برای ما، تمام متغیرهای محیطی، توابع تعریف‌شده برای کاربر و نام‌های مستعار را لیست می‌کند. همچنین توجه داشته باشید که متغیرهای محیطی ما همیشه نام‌های UPPER CASE هستند مانند HOME, PATH, HISTSIZE و غیره.

اگر می‌خواهید مقدار داخل متغیر را ببینید، می‌توانیم تایپ کنیم:

echo $HISTSIZE

دستور echo - متغیرهای محیطی در لینوکس

توجه داشته باشید زمانی که می‌خواهیم از مقدار داخل متغیر استفاده کنیم، مانند اینجا، ما باید یک $ قبل از نام متغیر قرار دهیم.

متغیر HISTSIZE حاوی مقدار تعداد دستورات ذخیره‌شده در فایل history است. همان‌طور که در این تصویر می‌بینید، متغیر HISTSIZE روی 1000 تنظیم می‌شود. در بعضی موارد، شاید نخواهیم دستورات ما در فایل history ذخیره شوند. مانند زمانی که می‌خواهیم ردپایمان را بپوشانیم، می‌توانیم متغیر HISTSIZE را روی 0 تنظیم کنیم.

HISTSIZE=0

هنگامی‌که متغیرهای محیطی در لینوکس را تغییر می‌دهیم، فقط برای آن محیط تغییر می‌کند. این به این معنی است که هنگامی‌که ما این ترمینال را بستیم، هر تغییری که ما برای این متغیرها انجام دادیم، از دست می‌رود و به مقدار پیش‌فرض تنظیم‌شده برمی‌گردد. اگر بخواهیم این مقدار برای تمام سشن‌های ترمینال‌هایمان باقی بماند، ما باید متغیر را export کنیم. می‌توانیم با تایپ زیر این کار را انجام دهیم:

export HISTSIZE

2- تغییر پرامپت ترمینال لینوکس

بیایید کمی پرامپت ترمینالمان را سرگرم‌کننده کنیم. متغیر محیطی‌ای که شامل پرامپت ما برای اولین ترمینال هست PS1 است. ما می‌توانیم با تایپ زیر آن را تغییر دهیم:

PS1="World's Best Hacker: #"

تغییر پرامپت در لینوکس - متغیرهای محیطی در لینوکس
به یاد داشته باشید که هر زمان که اولین ترمینال (PS1) را باز کنیم، پرامپت ما “World’s Best Hacker” خواهد شد، اما ترمینال دوم همچنان به صورت پیش‌فرض باقی خواهد ماند. علاوه بر این، اگر ما واقعاً این پرامپت خط فرمان دوست داریم و می‌خواهیم آن را نگه‌داریم، ما باید آن را export کنیم تا هر بار که ما این ترمینال را باز کردیم، پرامپ ما “World’s Best Hacker” شود.

export PS1

3- تغییر دادن متغیر مسیرمان

احتمالاً مهم‌ترین متغیر در محیط ما متغیر PATH ماست. این همان چیزی است که کنترل می‌کند شل ما از کدام محل دستوراتی که ما تایپ می‌کنیم را جستجو می‌کند. مانند cd، ls، echo و غیره. اگر دستور را دریکی از دایرکتوری‌ها در مسیر ما پیدا نکرد، خطای “command not found” را برمی‌گرداند. حتی اگر آن در یک دایرکتوری دیگر که در مسیر ما نیست موجود باشد.

مطالعه کنید
آموزش نصب vmware tools در لینوکس اوبونتو

بیایید به متغیر مسیرمان نگاه کنیم:

echo =$PATH

دستور path - متغیرهای محیطی در لینوکس

توجه داشته باشید که دایرکتوری‌ها در PATH ما هستند. این‌ها معمولاً دایرکتوری‌های مختلف ‎/bin و ‎/sbin هستند که در متغیرهای سیستم ما یافت می‌شوند. وقتی ما ls را تایپ می‌کنیم، سیستم می‌داند که در هر یک از این دایرکتوری‌ها به دستور ls نگاه می‌کند.

هرگاه بخواهیم از wireshark یا یک برنامه هکینگ دیگر در این متغیر PATH استفاده کنیم، ابتدا باید به آن دایرکتوری برویم. در مورد wireshark، این می‌تواند ‎/usr/share/wireshark باشد.

حالا اگر بخواهیم برنامه wireshark خود را به متغیر PATH مان اضافه کنیم، می‌توانیم تایپ کنیم:

PATH=$PATH:/usr/share/wireshark

تغییر دادن مسیر در لینوکس - متغیرهای محیطی در لینوکس

حال اگر بخواهیم wireshark را اجرا کنیم، دیگر نیازی به رفتن به دایرکتوری ‎/usr/share/wireshark نیست. اکنون ما می‌توانیم برنامه wireshark را از هر نقطه در کالی لینوکس اجرا کنیم!

تغییر دادن مسیر در لینوکس - متغیرهای محیطی در لینوکس

این می‌تواند یک روش بسیار مفید برای دایرکتوری‌هایی باشد که ما اغلب استفاده می‌کنیم، اما مراقب باشید که دایرکتوری‌های زیادی را به متغیر PATH اضافه نکنید، زیرا سیستم باید از طریق هر دایرکتوری در PATH برای پیدا کردن دستورات جستجو کند که به‌طور بالقوه ترمینال شما را کند می‌کند.

امیدوارم این آموزش به شما در مدیریت متغیرهای محیطی در لینوکس کمک کند. مطمئن شوید که قسمت‌های قبلی سری آموزش لینوکس برای هکرهای اخلاقی را نگاه کردید و اگر سؤالی دارید، در نظرات زیر بپرسید.

دیدگاه‌ها (0)

  • بخش دیدگاه محیط تعامل میان ما و شما است
  • سوالات، پیشنهادات و انتقادات خود را با ما در میان بگذارید
  • شما در بیان نظر خود آزاد هستید و تمامی کامنت ها منتشر می‌شوند