ظاهر پوسته فرمان
در صورتی که لینوکس شما فاقد محیط گرافیکی است و یا اکنون محیط گرافیکی آن در حال اجرا نیست، شما باید دستورات خود را از طریق پوسته فرمان به سیستم عامل ارسال کنید. نخستین چیزی که در پوسته فرمان مشاهده میکنید، اعلان فرمان است که بصورت علامت $ میباشد. اعلان فرمان برای کاربر ریشه بصورت # است. در بیشتر سیستمهای لینوکس قبل از اعلان فرمان نام کاربری شما و نام کامپیوترتان قرار میگیرد که بصورت زیر نشان داده میشود :
امکان نمایش کاراکترای مورد نیازتان بجای کاراکترهای فوق وجود دارد. چگونگی این کار بعدا شرح داده خواهد شد. محیط پوسته فرمان امکانات زیادی دارد.
تایپ دستورات در محیط پوسته فرمان بسیار آسان میباشد. برای اینکه با محیط پوسته فرمان آشنا شوید، سعی کنید با دستوراتی که در زیر بررسی میشوند، تمرین کنید. خروجی فرمان نشان میدهد که نام کاربر Alan بوده که عضو گروه Alan است و شماره های کاربری و گروه آن ۵۰۰ میباشد.
با استفاده از فرمان who میتوانید اطلاعاتی در مورد نشست جاری بدست آورید. در زیر این فرمان به همراه خروجی آن نشان داده شده است:
همچنان که می بینید، در خروجی نام کاربر جاری، زمان و تاریخ ورود به سیستم نمایش داده شده است.
بررسی دایرکتوری ها و مجوزهای فایلها
در
لینوکس مسیر جاری به مسیری گفته میشود که کاربر در آن لحظه در آن قرار
دارد. هنگامی که وارد سیستم میشوید، لینوکس شما را در دایرکتوری خانگی تان
قرار میدهد. هنگامی که دستور باز کردن یا ذخیره کردن فایلی را صادر میکنید،
لینوکس مسیر جاری را بعنوان محل آن فایل فرض کرده و از آنجا آنرا باز کرده
و یا ذخیره میکند. ساختار سیستم فایل لینوکس بعدا شرح داده خواهد شد و
لازم نیست نگران آن باشید. برای نمایش دایرکتوری جاری فرمان زیر را جلوی خط
فرمان تایپ کنید. خروجی آن در زیر آن نمایش داده شده است:
در مثال بالا مسیر جاری usr/bin است. برای یافتن مسیر دایرکتوری خانگی خود، فرمان زیر را تایپ کنید:
همچنان که در خروجی ملاحضه میکنید، مسیر دایرکتوری خانگی شما نمایش داده شده است. برای اینکه به دایرکتوری خانگی خود باز گردید، کافی است به سادگی فرمان زیر را تایپ کنید:
این فرمان، شما را به دایرکتوری خانگی تان باز می گرداند. خوب بد نیست ببینیم که چه چیزهایی در دایرکتوری خانگی وجود دارد. برای نمایش محتویات یک دایرکتوری، باید از فرمان ls استفاده نمایید. در صورتی که در دایرکتوری خانگی خود قرار ندارید میتوانید مسیر کامل آنرا تایپ کنید. در صورتی که فرمان ls را بدون هرگونه دایرکتوری تایپ کنید، محتویات مسیر جاری نمایش داده خواهد شد. گزینه a تمام فایلهای مخفی را نمایش میدهد و گزینه l برای نمایش جزئیات کامل فایلها بکار میرود. هنگام تایپ یک فرمان میتوانید گزینه های متعدد آنرا کنار هم تایپ کنید.در زیر این دستور به همراه یک خروجی مثال نشان داده شده است:
هنگامی
که از سوئیچ l برای نمایش جزئیات بیشتر استفاده میکنید، چیزی بیش از سایز
فایلها و دایرکتوری ها نمایش داده میشود. دایرکتوری جاری (.) و دایرکتوری
والد (..) در بالای لیست قرار می گیرند. یعنی در حقیقت نقطه نشان دهنده
دایرکتوری home/Alan و دونقطه نشاندهنده دایرکتوری home/ است. بخش ابتدایی
لیست نشاندهنده مجوزهای هر فایل است. سایر اطلاعات نمایش داده شده عبارتند
از اندازه فایل به بایت و تاریخ و ساعتی که فایل برای آخرین بار تغییر کرده
است.
بررسی فعالیت سیستم
لینوکس
علاوه بر چندکاربره بودن، سیستم عاملی است چند وظیفه (multitasking) . چند
وظیفه بودن به این معنی است که برنامه های زیادی میتوانند در یک زمان اجرا
شوند. هر برنامه در حال اجرا یک پروسه نامیده میشود.لینوکس فرامینی برای
نمایش پروسه های در حال اجرا، نمایش استفاده از منابع سیستمی و متوقف کردن
پروسه های در مواقع لزوم دارد.
مرسوم ترین ابزار برای بررسی
پروسه های در حال اجرا، دستور ps است. با این دستور، میتوانید بررسی کنید
که چه برنامه هایی در حال اجرا هستند ، از چه منابعی استفاده میکنند و چه
کسی در حال اجرای آنهاست. در زیر یک خروجی مثال از این فرمان نشان داده شده
است :
در
مثال بالا، گزینه a، برای نمایش تمام پروسه هایی که به ترمینال فعلی شما
مربوط است و گزینه u برای نمایش نام کاربری و زمانی که برنامه آغاز به کار
کرده است، بکار میرود. مفهوم ترمینال به زمانهای قدیم باز میگردد. در آن
زمان کاربران روی ترمینالهای مبتنی بر متن کار میکردند و هر ترمینال نشان
دهنده یک نفر بود. اکنون شما میتوانید روی صفحه مانیتور خود تعداد زیادی
ترمینال داشته باشید. این کار بوسیله باز کردن تعدادی پنجره ترمینال امکان
پذیر است.
در مثال بالا، چیز خاصی اتفاق نیافتاده است. خروجی
نشان میدهد که کاربری به نام Alan ، از برنامه های bash و ps در حال
استفاده است. ستون TTY یا ترمینال، نشان دهنده ترمینای است که کاربر با آن
به سیستم وارد شده است و ستون STAT نشاندهنده وضعیت پروسه است.R نشاندهنده
پروسه در حال اجرا و S نشاندهنده پروسه در حال خواب میباشد.
ستون
USER نام کاربری که پروسـه را شروع کرده نمایش میدهد. هر پروسه توسط یک
عدد یکتا به نام شماره پروسه (Process ID) مشخص میشود. از این شماره هنگام
از میان بردن یا اصطلاحا kill کردن پروسه استفاده میشود. ستونهای %CPU و
%MEM نشاندهنده مقدار پردازنده و حافظه ای هستند که پروسه ها استفاده کرده
اند. ستون VSZ یا Virtual Set Size نشاندهنده سایز پروسه image به کیلوبایت
و RSS یا Resident Set Size نشاندهنده سایز پروسه در حافظه است. ستون
START نشاندهنده زمان آغاز پروسه و ستون TIME نشاندهنده زمان سیستم استفاده
شده برای پروسه است.
بسیاری از پروسه هایی که در کامپیوتر در
حال اجرا هستند، به یک ترمینال خاص مربوط نیستند. یک سیستم عادی مبتنی بر
لینوکس ، دارای پروسه هایی فراوانی است که در پس زمینه اجرا میشوند. پروسه
های پس زمینه پروسه هایی هستند که اعمالی مانند ثبت فعالیتهای سیستم یا گوش
کردن به پورتها برای اطلاعات واصله از شبکه را انجام میدهند. این پروسه ها
هنگام بوت شدن سیستم آغاز به کار کرده و هنگام خاموش کردن سیستم ، به کار
خود پایان میدهند. برای نمایش تمام پروسه های در حال اجرا بر روی
کامپیوترتان باید از فرمان زیر استفاده کنید:
قسمت
less | به این دلیل به فرمان اضافه شده است که در صورتی که تعداد پروسه ها
از یک صفحه بیشتر شد، امکان نمایش صفحه به صفحه آن وجود داشته باشد. به
این فرایند لوله بندی (pipe) فرمان گویند که به معنی هدایت خروجی یک فرمان
برای ورودی فرمان دیگر است.
خروج از پوسته فرمان
هنگامی
که کارهای خود را انجام دادید و مایل بودید از پوسته فرمان خارج شوید،
کافی است که کلیدهای Ctrl+D را فشار دهید. در صورتی که در حالت متنی لینوکس
را بوت کرده اید، کافی است فرمان logout یا exit را تایپ کنید.
خوب،
تا اینجا با چند فرمان که به شما کمک میکند از سیستمتان اطلاعات لازم را
به دست آورید، آشنا شدید. صدها فرمان دیگر نیز وجود دارند که میتوانید آنها
را آزمایش کنید. این فرامین در مسیرهای usr/bin و bin قرار دارند. همچنین
فرامین مدیریت سیتم در مسیرهای usr/sbin و sbin قرار دارند. بیشتر این
فرامین در ادامه این فصل توضیح داده خواهند شد.
درک دقیق تر پوسته فرمان لینوکس
قبل
از اینکه آیکونها و پنجره ها روی صفحه کامپیوترها پدیدار شوند، کاربران
برای کار کردن با کامپیوترها باید فرمانهایی را تایپ میکردند. در سیستمهای
مبتنی بر یونیکس که لینوکس هم یکی از آنهاست، برنامه ای که برای تفسیر و
مدیریت فرمانها ایجاد شده است، پوسته فرمان (Command Shell) نام دارد.
پوسته فرمان راهی برای اجراکردن برنامه ها، کارکردن با فایلها، کامپایل کردن برنامه ها و مدیریت کامپیوتر ایجاد میکند.
با
اینکه کارکردن با ابزارهای گرافیکی آسان تر از کار کردن با پوسته فرمان
است، ولی بیشتر کاربران حرفه ای لینوکس ترجیح میدهند تا بجای ابزارهای
گرافیکی از پوسته فرمان استفاده کنند. زیرا برای انجام بسیاری از کارها
مانند پیکربندی های سیستم ، پوسته فرمان بسیار قدرتمند تر از ابزارهای
گرافیکی است. حتی برخی کاربران قدیمی یونیکس و لینوکس به ندرت از محیطهای
گرافیکی برای انجام کارهایشان استفاده میکنند.
پوسته فرمانی که
در این راهنما توضیح داده خواهد شد، bash نام دارد. نام آن برگرفته از
Bourne Again Shell است. پوسته bash از نخستین پوسته سیستمهای یونیکس که sh
یا Bourne Shell نام داشت، ایجاد شده است و یکی از پر کاربرد ترین پوسته
های فرمان به شمار میرود. البته پوسته های دیگری نیز وجود دارند که از آنها
استفاده میشود که میتواند از آنها csh یا C Shell که در سیستمهای یونیکس
BSD استفاده میشود و ksh یا Korn Shell که بیشتر در Unix System V استفاده
میشود، نام برد. لینوکس همچنین دارای پوسته های tcsh و ash نیز میباشد.
هنگامی
که استفاده از یک پوسته فرمان را در لینوکس فرا بگیرید، به آسانی میتوانید
پوسته های دیگر را نیز یاد بگیرید. در صورتی که هرگونه مشکل یا سوالی
داشتید، میتوانید به صفحه manual آن پوسته مراجعه کنید.
نکته : برای نمایش صفحه manual هر فرمان کافی است در خط فرمان لینوکس دستور زیر را تایپ کنید:
در لینوکس ، پوسته bash کاملا سازگار با پوسته فرمان sh میباشد.