بسمه تعالی
لینوکس چیست؟ سیستم عامل لینوکس یک سیستم عامل شبیه به یونیکس میباشد که در سال 1991در دانشگاه هلسینکی توسط لینوس توروالدز نوشته شد .توروالدز که علقه خاصی به پنگوئن داشت سیستم عامل خود را که بر پایه سیستم عامل یونیکس نوشته شده بود را لینوکس نامید .او علی رغم پیشنهاد مایکروسافت جهت خرید کرنل نوشته شده توسط او نه تنها این کرنل را نفروخت بلکه آن را به صورت مجانی از طریق میل در اختیار دوستان و جامعه ای از هکران قرار داد این عمل در واقع آغاز جنبش (open sourceمتن باز) بود. یکی از تفاوتهای اصلی سیستم عامل لینوکس و دیگر خانواده های مشتق شده از یونیکس را جدا از متن باز بودن لینوکس می توان در این بیان کرد که سیستم عامل خصوصی و گران یونیکس تحت ترمینالها استفاده میشد و امکان این که این سیستم عامل بر روی یک ایستگاه کاری نصب شود نبود اما در نسل جدید علوه بر حفظ ساختار شبکه یونیکس امکان کار بر روی یک سیستم عامل تنها فراهم شد.
چرا لینوکس یاد بگیریم؟ این سوالی است که شاید برای بسیاری پیش بیاید چرا که گرچه لینوکس open sourceو معمول مجانی است اما در ایران برای ویندوز نیز پولی پرداخت نمیشود بنابراین چرا باید مجانی بودن این سیستم عامل مزیتی جهت آن حساب شود؟ دومین دلیلی که ممکن است از طرف طرفداران لینوکس مطرح شود امنیت و پایداری بیشتر لینوکس است که از هر صد ویروس نوشته شده یکی نیز برای لینوکس نیست چرا که در یک سیستم عامل باز همه چیز قابل دیده شدن است و طبعا یک ویروس کار زیادی نمیتواند بکند چرا که همه کدها برای همه قابل دیدن است و هر گونه تلشی مانند دزدی در روز روشن است اما این سوال مطرح میشود که چرا باید سادگی و راحتی و گرافیک بالی ویندوز را که از کاربر اطلعات خاصی را نمیطلبد را رها کرد و به سوی لینوکس آمد؟ هر شخص ممکن است در جواب این سوال نکته ای مطرح کند که خود جای تامل داشته باشد اما یک نکته عمومی در مورد ما وجود دارد ما در ایران زندگی میکنیم کشوری که پر از محرومیتهای سیاسی و اقتصادی است .در صورتی که کشور ما بخواهد به سازمان تجارت جهانی بپیوندد تا از مزایای آن استفاده کند ناچار میبایست قوانین کپی رایت را رعایت کند که در آن صورت کمی که فکر کنید میبینید که یک سی دی ویندوز xpرا باید 300دلر تهیه کرد که این اولیه ترین نیاز شما به نرم افزار است و پس از آن هر نرم افزاری را باید به قیمتهای 100و 200و 300و ...دلر خرید که فکر نمیکنم این توان در قدرت خرید کسی بگنجد بنابراین سیاست کشور ما بر این قرار گرفته است که لینوکس را سیستم عامل ملی اعلم کند و در این راستا فعالیتهایی جهت فارسی سازی منابع لینوکس آغاز گشته است حال این با خود شماست که تصمیم بگیرید که میخواهید با این سیستم عامل قوی و عالی آشنا شوید یا خیر ؟ اما در صورتی که شما یک کاربر حرفه ای ویندوز و عاشق کامپیوتر هستید شاید بهتر باشد دلیل خودم را جهت کار کردن با لینوکس بدانید در واقع لینوکس یک سیستم عامل میباشد که به شما این احساس را میبخشد که کامپیوتر مال شماست نه اینکه شما مال کامپیوترید به عبارت دیگر در تمام لحظاتی که با این سیستم عامل کار میکنید احساس قدرت و تسلط بیشتری بر کامپیوتر دارید .حتی در زمان نصب میتوانید مشاهده کنید که در این لحظه چه بسته ای نصب شد یا چه اتفاقی افتاد و در طول بال آمدن کامپیوتر این قابلیت را دارید که به سیستم بگویید چه سرویس هایی را اجرا کند و کدام ها را اجرا نکند و ...در حالی که در ویندوز این کامپیوتر است که وقت و تخصص شما را در اختیار میگیرد و شما در صورتی که خیلی حرفه ای باشید تنها میتوانید با تغییرات در رجیستری کارهای کمی را مطابق میل خود کنید به طور خلصه :لینوکس به شما این احساس را میبخشد که مستر اصلی کامپیوتر شمائید .به هر حال این شمائید که میتوانید انتخاب کنید که لینوکس را بیاموزید یا خیر؟
Open sourceچیست؟ اینکه لینوکس opensourceاست به این معنا نیست که حق کپی( )copyrightندارد . لینوکس تحت لیسانس عمومی GNU ))GPLثبت شده است GPL.به شما اجازه میدهد که برنامه لینوکس را تغییر داده و نسخه جدید آن را به همراه کد اصلی منتشر کنید .به هر حال صاحب اصلی نرم افزار حقوق نرم افزار را دارد. لینوکس هیچ نوع گارانتی ندارد .حتی در صورتی که برای نرم افزار مورد استفاده خود پول پرداخت کنید هیچ گارانتی برای نرم افزار وجود ندارد .گرچه این کار به نظر ریسک میرسد اما لینوکس با نشان دادن پایداری بسیار از خود در واقع اعتماد کاربران را جلب کرده است. بنابر GNU GPLشما میتوانید حتی لینوکس را بفروشید شما میتوانید هر سورس کدی را تغییر دهید و آن را دوباره بسته بندی کرده و بفروشید البته شما نرم افزار را صاحب نخواهید شد و کپی رایت به شما تعلق نمیگیرد .همچنین شرط GPLبرای فروش لینوکس این است که در صورتی که شما لینوکس را برای سود میفروشید تمام سورس کدها را نیز بدهید بنابراین دیگران نیز میتوانند آن را تغییر داده و بفروشند.
نصب لینوکس شاید اولین جایی که خیلی از کاربران در ان مشکل پیدا میکنند همان اول نصب لینوکس بر روی سیستم باشد گرچه در ابتدای راه لینوکس نصب لینوکس کاری بسیار طاقت فرسا بود اما به تدریج این کار هر روز راحت تر گشته است به گونه ای که به قول یکی از دوستان "باید یک آجر گذاشت روی صفحه کلید گذاشت تا خود به خود دکمه enterرا فشار دهد !!!" به هر حال در صورتی که در هنگام نصب حواس خود را جمع نکنید ممکن است سیستم خود را کامل به هم بریزید .البته باز هم میگویم نترسید و دقت کنید تا مشکلی برای شما پیش نیاید. مهمترین و سخت ترین قسمت نصب احتمال زمان انجام پارتیشن بندی خواهد بود شما برای نصب ابتدایی یک لینوکس نیاز به یک پارتیشن جهت نصب لینوکس با فرمتهایی چون ex2یا ex3دارید و همچنین یک پارتیشن swapکه به صورت معمول فضایی معادل مقدار ramخود را میتوانید به آن اختصاص دهید فضای اختصاص داده شده به پارتیشن ex3به خودتان بستگی دارد من برای یک نصب ساده فضایی معادل 4گیگابایت و برای یک نصب کامل فضایی معادل 7گیگا بایت را پیشنهاد میکنم البته باید بگویم در صورتی که از کامپیوتری قدیمی با فضای هارد کم استفاده میکنید نترسید لینوکس با انعطاف پذیری فوق العاده خود حتی بر روی یک کامپیوتر 386نیز نصب میشود فضای پیشنهادی تنها برای این مباشد که شما در آینده به مشکلی برنخورید و نرم افزارهای مورد نیاز خود را نصب کنید . برای انجام عمل پارتیشن بندی از چند راه معمول استفاده میشود: :partition magic.1این ابزار تحت ویندوز شاید راحت ترین ابزار جهت این کار و در عین حالت خطرناک ترین ابزار موجود برای ایجاد تغییرات پیکربندی دیسک باشد .به شخصه استفاده از این نرم افزار را توصیه نمیکنم اما در صورتي که تصمیم بر انجام این کار گرفتید نکات زیر را مورد نظر داشته باشید: .1این برنامه با کارهاي بسیار زیاد و جنبي زمان بسیار زیادي خواهد برد بنابراین به هیچ وجه در وسط کار آن را متوقف نکنید در غیر این صورت امکان به هم ریختن کامل کامپیوتر شما وجود دارد .2پس از ایجاد پارتیشن هاي مورد نظر با انجام عمل بوت پارتیشن فعال شما تغییر میکند و بر روي پارتیشني که بناست لینوکس بر آن نصب شود قرارمیگیرد پارتیشن فعال یا active partitionجهت لود شدن بوت لودر مورد نیاز است پس با بوت شدن کامپیوتر ویندوز بال نخواهد آمد و شما یا باید دوباره از طریق fdiskپارتیشن فعال را تغییر دهید یا اینکه اقدام به نصب لینوکس کنید .3مکانیسم کار این برنامه بسیار پیچیده است در هنگام استفاده از آن احتیاط کنید . .2استفاده از ابزار مدیریت دیسک در قسمت ابزارهای مدیریت ویندوز جهت خالی نمودن یک پارتیشن و حذف آن و اختصاص آن به لینوکس .3استفاده از برنامه fdiskجهت انجام پیکربندی .4ابزار disk druidخود لینوکس :این ابزار که توسط لینوکس ردهت ایجاد گردید و در ماندریک (با نام جدید ماندریوا) و فدورا نیز ادامه یافت راحت ترین و بهترین ابزار جهت انجام این کار در طول نصب لینوکس میباشد .پیشنهاد میکند در هنگام استفاده از این ابزار علوه بر
ایجاد یک پارتیشن ریشه و مونت کردن /در آن یک پارتیشن home/نیز ایجاد کنید .این کار باعث میشود در صورت نیاز به نصب مجدد لینوکس اطلعات خود را از دست ندهید. مرحله دیگری که در نصب لینوکس باید دقت کنید در انتخاب بسته های نرم افزاری نصب شده است در صورتی که اطلع کاملی از نرم افزارها و کاربرد آنها ندارید شاید بهتر باشد آنها را به حالت پیش فرض بگذارید .اما در صورتی که برای مثال نیاز نیازی به داشتن یک Apache serverبر روی کامپیوتر خود ندارید بی دلیلی اقدام به نصب این سرویس ها ننمائید تا استفاده بهینه ای از کامپیوتر خود داشته باشید .به هر حال حتما ابزارهای configurationرا نصب کنید .این ابزار به شما امکان میدهند بعدا مدیریت بهینه و راحت تری بر روی سیستم داشته باشید . مراحل بعد نکات خاصی ندارد تنها مکن است از شما جهت راه اندازی خودکار x-serverبر روی کامپیوتر به صورت خودکار در هنگام بوت سوال شود که احتمال جواب شما مثبت خواهد بود مگر اینکه بر روی یک سرور کار کنید و اصل نخواهید که محیط xنصب شود. نکته دیگر اینکه در صورتی که میخواهید نسخه هایی از لینوکس همچون فدورا کور 2و 3یا ماندریک ( 9.1و )10و احتمال برخی دیگر از نسخه ها را نصب کنید حتما پیش از اقدام به نصب تغییرات زیر را در setupکامپیوتر انجام دهید در غیر این صورت احتمال دارد که بوت لودر لینوکس اقدام به نوشتن بر روی بوت لودر ویندوز نموده و شما ویندوز خود را از دست بدهید : پس به setupکامپیوتر رفته و از منوی CMOS FEAUTURES SETUPگزینه IDE primary hardwareیا به عبارتي دیسک مستر خود را انتخاب کنید و حال access modeآن را بر روي LBAقرار دهید این گزینه به صورت پیش فرض بر روي AUTO میباشد البته نحوه انجام این کار ممکن است بر روي مادربردهاي غیر از گیگا متفاوت باشد.
سیستم فایل لینوکس بسیار خوب ابتدا اجازه بدهید تفاوتهاي اساسي سیستم فایل لینوکس و ویندوز را یاد آور شوم در حالي که در ویندوز my computerحاوي لیست تمام پارتیشن ها میباشد و هر پارتیشن با حرفي شناخته میشود و در داس و ویندوز مسیر ها با \ جدا مشوند و دستورات خط فرمان دستوراتي مشخص و از پیش تعیین شده میباشند در لینوکس همه چیز به گونه اي دیگر و جدا از این سیستم میباشد در لینوکس همه چیز به ساختار درختي میباشد بدین معنا که همه چیز در کامپیوتر در زیر مجموعه دایرکتوري ریشه ()/قرار دارد و مسیر ها با /جدا میشوند وهر فایل که امکان اجرا شدن داشته باشد میتواند یک دستور خط فرمان باشد اما در صورتي که به دایرکتري ریشه بروید در این دایرکتوري تعدادي زیر دایرکتوري را میبینید در انجا توضیحي در مورد هر یک ارائه خواهیم داد: : /bin.1فرامین عمومي سیستم عامل در این دایرکتوري قرار دارند فرامیني از قبیل ls ،chmodو ... :/dev.2این دایرکتوري نقاط دسترسي به سخت افزار کامپیوتر شما را شخص میکند مانند ترمینالها( )ttyو دیسکهاي نرم ( )fdو دیسکهاي سخت( )hdتوجه کنید که احتمال شما با ورود به این دایرکتوري گیج خواهید شد و قادر به باز کردن فایلها نمیباشید در واقع شما نیازي براي باز کردن این فایلها نداري این فایلها براي شناایي سخت افزار شما توسط سیستم است : boot/.3فایلهاي مربوط به بوت لودر لینوکس : proc/.4این دایرکتوري جهت ذخیره برخي اطلعات در هنگام بوت لینوکس استفاده میشود :/home .5این دایرکتوري شامل دایرکتوري شخصي تمام کاربران به جز کاربر ریشه میباشد البته این که دایرکتوري homeهر کاربر در کجا باشد توسط کاربر قابل تغییر میباشد که این موضوع ب تغییر در فایل هاي configurationسیسم تحقق مي یابد :/etc.6ایندایرکتوري حاوي مهم ترین فایلهاي پیکر بندي سیستم است : lib/.7کتابخانه هاي مهم و ضروري اشتراکي و ماژول هاي کرنل : /mnt.8گفتیم که در دایرکتوري devفایل مربوط به دیسکهاي سخت وجود دارد اما با آنها کاري نداریم پسبراي دسترسي به درایوهاي ویندوز خود و فلپي و سي دي باید چه کار کنیم ؟در واقع در دایرکتوري mntما به این درایوها دسترسي داریم گرچه آنها در واقع در اینجا نیستند اما به این مسیر mountشده اند :/ root .9دایرکتوري خانگي کابر ریشه در این دایرکتوري قرار دارد که تنها کاربر ریشه به آن دسترسي دارد : var/.10فایلهاي میل و پرینتر و لگ فایلها و برخي دیگر اطلعات در این دایرکتوري ذخیره میشوند :/sbin .11دسترات مدیریتي سیستم در این دایرکتوري قرار دارد در واقع هر کدام از این فایلها یک برنامه cکامپایل شده میباشد
: /tmp .12در این دایرکتوري فایهاي موقت ذخیره میشود تمام کاربران مجوز قرار دادن فایلهاي خویش در این دایرکتوري را دارند :/usr.13در این دایرکتوري مستندات سیستم ،بازي ها ،فایلهاي گرافیکي ،کتابخانه ها و چیزهاي دیگري ذخیره میشود
فایلهاي پیکربندي سیستم: قسمت بسیار زیادي از از مدیریت سیستم به فایلهاي پیکر بندي سیستم بر میگردد فایلهایي که کار کردن با آنها به شما قدرت زیادي میبخشد در واقع کار با ابزار گرافیکي گرچه بسیار راحت است اما از شما یک کاربر حرفه اي نخواهد ساخت زیرا به علت تعداد زیاد distributionهاي لینوکس و محیط هاي گرافیکي زیاد و این موضوع که حتي server graphicها نیز متفاوت میباشند( : x serverدر لینوکس محیط گرافیکي قسمتي از هسته لینوکي نمیباشد بلکه استفاده از آن دلخواه میباشد مکانیسم کار این محیط هاي گرافیکي آنها را یک سرور براي برنامه ها ساخته ست اما مشهورترین محیط گرافیکي که به صورت معمول در لینوکي استفاده میشود Xاست و xserverبه محیط گرافیکي لینوکس اطلق میشود ) و بعضي از applicationها مخصوص یک محیط کاري خاص نوشته شده اند شما مجبورید که با کار با محیط تکست اطمینان یابید که در کار با هر سیستمي توانا خواهید بود به این منظور امروز به بررسي برخي از فایلهاي پیکر بندي سیستم خواهیم پرداخت: :home directory.1در این دایرکتوري تنظیمات مربوط به کاربران اعم از تنظیمات پوسته فرمان تنظیمات میز کار و تنظیمات یک برنامه خاص و دیگر اطلعات مربوط به یک کاربر خاص دیده میشود این فایکلها معمول به صورت یک فایل پنهان که نام آنها با یک دات( ).شروع میشود ذخیره میشوند بنا براین با دستور ls قایل دیده شدن نمیباشند اما براي دیدن آنها میتوانید از دستور – ls aاستفاده کنید و از یک ادیتور براي ویرایش آنها استفاده کنید براي مثال فایل bashrc. حاوي تنظیمات خاص مربوط به پوسته فرمان یک کاربر خاص میباشد البته در صورتي که کاربر از bash shellاستفاده کند :etc directory.2این دایرکتوري حاوي مهمترین فایلهاي پیکر بندي سیستم میباشد و مهمترین دایرکتوري براي مدیریت یک سیستم اعم از سرور یا دسک تاپ میباشد در اینجا به معرفي برخي از فایلهاي مهم و دایرکتوري مهم در این دایرکتوري میپردازیم : bashrc file)aتنظیمات فراگیر سیستمي براي پوسته فرمان کاربران در این فایل قرار میگیردبطور پیش گزیده این فایل اعلن فرمان را چنان تنظیم میکند که حاوي که حاوي نام کاربر جاري نام کامپیوتر و دایرکتوري جاري باشد :exports file)bاین فایل حاوي دایرکتوري هایي است که براي استفاده در محیط شبکه به اشتراک گذاشته شده اند این فایل توسط سرویس NFS استفاده میشود
)cفایل :aliasesحاوي لیست پخش نامه هاي الکترونیکي سرویس پست الکترونیک لینوکس است البته این فایل با دستور aliasکه پارامترهاي خاص و دستورات خاص را تنظیم میکند متفاوت میباشد :fdprm)dپارامترهاي فرمتهاي عمومي فلپي دیسک را تنظیم میکند :fstab)eمحلهاي اتصال پارتیشن ها رایوهاي سي دي رام و فلپي را در سیستم لینوکس مشخص میکند این فایل توسط دستور mountاستفاده میشود در صورتي که سیستم شما پارتیشنها را به صورت اتوماتیک mountنمیکند با نوشتن دستور mountدر این فایل میتوانید کاري کنید که با هر بار بوت شدن سیستم پارتیشن هاي مورد نظر شما mountشوند همچنین اینکه شما تنها قادر به خواندن اطلعات از یک پارتیشن باشید یا قادر به نوشتن نیز باشید نیز توسط پارامترهاي این فایل تعیین میشود :group file)fاین فایل نام و شماره شناسایي گروههاي کاربري تعریف شده روي سیستم را نگهداري میکند این مشخصات در مورد مجوزاي صادر شده در مورد دسترسي به فایلها و دایرکتوري ها به کار میروند :hosts file)gحاوي ip addressونام کامپیوترهایي است که در شبکه خود میتوانید به آنها دسترسي داشته باشید :hosts.allow)hلیست میزبانهایي که سیستم مجاز است از سرویس آنها استفاده کند : hosts.deny)iلیست سرورهایي که مجاز به استفاده از سرویس آنها نمیباشید :xinted.conf)jپیکربندي دیمن xinted
:inittab)kاین فایل حاوي اطلعاتي مربوط به run levelها میباشد که در ادامه توضیح خواهند داده شد lilo.conf)lو :grub.confدر صورتي که مدیر بوت سیستم شما liloمیباشد شما با فایل اول و در صورتي که grubمیباشد با فایل دوم سر و کار خواهید داشت در این فایلها اطلعاتي که مدیر بوت در زمان بوت لزم دارد از قبیل این که چه گزینه هایي براي بوت شدن در دسترس است و در صورت انتخاب هر کدام باید سیستم را از کجا بوت کند و این مسئله که مثل به صورت پیش فرض سیستم عامل برگزیده چیست و شما چقدر زمان براي انتخاب دارید و ...نگهداري میشود قبل تغییر برخي از این گزینه ها را در محیط گرافیکي توضیح دادیم اما هم اکنون میتوانید این پارامترها را در محیط تکست تغییر دهید : modules.conf)mحاوي اطلعات و گزینه هاي مربوط به ماژولهاي قابل بارگذاري روي هسته است که توسط کامپیوترتان در حال استفاده هستند :mtab)nحاوي لیست و اطلعاتي مربوط به فایل سیستم فایلهایي است که اکنون متصل هستند :passwd)oحاوي اطلعت حسابهاي کاربري تمام کاربران تعریف شده بر روي سیستم است همچنین حاوي اطلعاتي مانند دایرکتوري خانگي و پوسته فرمان پیش گزیده کاربر نیز میباشد :printcab)pاطلعات پیکر بندي چاپگرهاي سیستم در این فایل میباشد :profile)qاطلعات مربوط به محیط عمومي سیستم و برنامه هاي آغازین تمام کاربران را نگهداري میکند این فایل هنگامي که کاربر وارد سیستم میشود فرا خوانده میشود
:protocols)rاطلعات مربوط به شماره هاي پروتکلها و نامهاي سرویسهاي مختلف را نگهداري میکند :resolv.conf)sاطلعات مربوط به سرویس دهنده هاي DNSکه براي ترجمه آدرس به ipبه کار میروند را نگهداري میکند البته این اطلعات هیچ ربطي به پیکر بندي یک سرویس DNSندارند :services)tتعریف کننده سریسهاي مبتني بر پروتکل TCP/IPو تخصیص پورتهاي مربوط به آنها است :shadow)uاین فایل که تنها در دسترس کاربر ریشه قرار دارد و کاربران دیگر حتي اجازه دیدن آن را ندارند حاوي پسورد encryptشده کاربران است این فایل با اینکه تنها در دسترسي کاربر ریشه قرار دارد اما با الگوریتم ویژه اي که براي encryptکردن پسوردها داشته امنیت خاصي را براي کاربر تامین میکند به گونه اي که الگوریتم یک طرفه رمز کردن کلمات آن را حتي از دسترسي کاربر ریشه به دور میدارد و حتي برنامه هاي شکستن پسورد نیز تنها با امتحان تمام گزینه هاي ممکن سعي در شکستن این پسوردها مینمایند که هزینه و وقت بسیار زیادي میطلبد به گونه اي که تقریبا غیر ممکن مینماید : syslog.conf)vتعیین اینکه چه پیغام هایي در فایلهاي ثبت ذخیره شده و این فایلها چه نام داشته باشند و در کجا ذخیره شوند به طور معمول فایلهاي ثبت رخدادهاي سیستمي در مسیر var/logقرار دارند همچنین دایرکتوري etcحاوي دایرکتوریهاي مهمي میباشد که چند تا را معرفي میکنیم :X11.1حاوي فایلها و زیر شاخه هاي مربوط به پیکر بندي مربوط به سرور X میباشند سرور Xرابط گرافیکي محیط لینوکس میباشد بر خلف ویندوز محیط گرافیکي لینوکس با هسته آن یکپارچه نیست بلکه تنها جزئي از آن است که به دلخواه خود آن را اجرا میکنیم معمول بر روي سرورها به طور کلي نصب نمیشود اما شاید بپرسید که چرا این رابط گرافیکي xseverنامیده میشود در واقع این سرویس مانند
یک سرور عمل میکند که هر کدام از applicationهاي اجرا شده به صورت یک کلینت از آن عمل میکنند این ویژگي آن را با ویژگي اصلي لینوکس که network میباشد مطابق میکند و سازگاري بیشتري براي کار در محیط شبکه به وجود مي آورد این ویژگي در ویندوز NTبه بعد گنجانده شد در حالي که تا قبل از آن ویندوز از این خاصیت بي بهره بود :cronx.2این دایرکتوري که تعریف کننده چگونگي عمل ابزار crondبراي اجراي خودکار برنامه ریزي شده برنامه هاي کاربردي میباشد این سرویس به صورت خودکار عملهایي را در دوره زماني معیني انجام میدهد :httpd.3حاوي فایلهاي پیکر بندي سرویس appacheمیباشد آپاچي یکي از سرورهاي وب تحت لینوکس میباشد :init.d.4این دایرکتوري حاوي فایلهاي مربوط به runlevelها میباشند :ppp.5حاوي فایلهاي پیکر بندي پروتکل نقطه به نقطه( )point to pointمیباشد این پروتکل براي اتصال تلفني به اینترنت به کار میروند :sysconfig.6حاوي فایلهاي پیکر بندي است که توسط برنامه هاي کاربردي ایجاد میشوند :xinet.d .7حاوي فایلهایي است که هر یک نمایانگر یک سرویس شبکه اي است که دیمن xinetdبراي آن به یک پورت خاص گوش میدهد هنگامي که از دیمن xinetd درخواست سرویس خاصي میشود این دیمن این فایل ها را براي موجود بودن آن سرویس بررسي میکند دیمن ها برنامه هاي کوچکي هستند که در پس زمینه اجرا میشوند و با اجراي یک سرویس آغاز میشوند و با اتمام سرویس پایان مي یابند معمول در پایان نام خود حرف dدارند مانند httpd
runlevelها در لینوکس چیستند؟ در هنگام بوت کامپیوتر به وسیله یکي از بوت لودرها تعدادي پروسس در ابتدا انجام میشوند و سرویسهایي راه اندازي میشوند هنگامي که لینوکس در حال بوت شدن است شما این پروسس ها را که در حال اجراشدن میباشند را مشاهده میکنید در واقع اینکه چه سرویسهایي باید در هنگام بوت شدن کامپیوتر انجام شوند به وسیله runlevelمشخص میشود run levelمشخص میکند که چه سرویسها یا پروسس هایي باید در هنگام بوت شدن کامپیوتر اجرا شوند و یا راه اندازي شوند لینوکس از هشت runlevelاستفاده میکند که برنامه initسیستم را در یکي از این runlevel ها راه اندازي میکند runlevelهاي اصلي از 6-0میباشند که هرکدام سیستم را در در حالتي پیش میبرد: سیستم را خاموش میکند Runlevel 0: halt )shutdown( system حال تک کاربره Runlevel 1: single user mode حالت مالتي یوزر(Runlevel 2: multi user mode with out NFS( text mode بدون نتورک و در حالت تکست حالت مالتي یوزر با همه امکانات و (Runlevel 3:full multi user mode)text mode در حالت تکست Runlevel 4:unused حالت مالتي یوزر Runlevel 5:multi user mode with graphical user interface با واسطه گرافیکي سیستم را خاموش و روشن میکند Runlevel 6:reboot the system Run levelهاي یک و دو تنها براي حالتي که نیاز به رفع مشکلي میباشد به کار میروند و بیشتر کامپیوترهاي خانگي از runlevelشماره 5استفاده میکنند اما با توجه به اینکه لینوکس بر روي یک سرور به صورت تکست نصب میشود runlevelدر یک سرور 3میباشد در واقع initبرنامه اي میباشد که نوع runlevelرا و اجراي آن را مدیریت میکند اما در صورتي که در صورتي که بخواهیم در هنگام اجراي سیستم عامل به حالت گرافیکي سویچ کنیم از دستور telinitمیتوانیم استفاده کنیم : telinit 5
هر کدام از runlevelها میتواننند به وسیله کاربر ریشه configureشوند در فایل / etc/inittabاطلعات مربوط به اینکه چه runlevelاي باید اجرا شود و اینکه چه پروسس هایي باید در هر runlevelاجرا شود را نگاه میدارد هر runlevelداراي دایرکتوري مربوط به خودش میباشد که در دایرکتوري etc/rc.d/وجود دارد و با نامهاي rc0.d,rc1.d,…,rc6.dشناخته میشود و درون هر یک از این دایرکتوري ها لینکهایي براي اشاره به etc/init.d/و etc/rc.d/init.d/وجود دارد همچنین شما میتوانید در هنگام بوت شدن کامپیوتر میتوانید در خط فرمان مشخص کنید کامپیوتر در چه حالتي باید بوت شود liloبوت لودر معمول رد هت و grubبوت لودر معمول ردهت میباشد در صورتي که بوت لودر معمول شما لیلو است در خط فرمان دستور زیر را وارد کنید: LILO: linux 3 LILO: linux 5 اما در صورتي که از گراب استفاده میکنید میتوانید با فشار دادن دکمه eو اضافه کردن runlevelبه انتهاي فرمان بوت این کار را انجام دهید: Kernel/vmlinuz ro root=/dev/had1 5
تعدادي از فرامین عمومي محیط لینوکس توضیحات دستور یک نقطه نمایانگر دایرکتوري جاري میباشد . دو نقطه نمایانگر دایکتوري سطح بالتر parent directoryمیباشد .. نمایانگر دایرکتوري خانگي کاربر home directoryمیباشد ~ قرار دادن این علمت در پایان یک دستور باعث اجرا شدن دستور در پس & زمینه میشود. محتویات فایل مورد نظر را در صفحه نمایش نشان میدهد cat مسیر جاري را نمایش میدهد Pwd براي copyفایل به کار مي رود cp براي تغییر نام و تغییر مکان یک فایل به کار میرود mv جهت حذف فایلها بکار میرود و با سویچ – rبرای حذف دایرکتوری بکار rm میرود Mkdirیک پوشه ایجاد میکند Locateجهت پیدا کردن یک فایل و غیره به کار میروند find پروسس هاي در حال اجرا را نشان میدهد Ps اندازه یک فایل خاص را نشان میدهد du تمام پروسس هاي در حال اجرا را نشان میدهد top این دستور جهت متوقف سازي پروسه خاصي استفاده میشود که به همراه Kill شماره عمل مذکور به کار میرود pidپروسه را از دو دستور بال میگیرند این دستور جهت تغییر کاربر به کار مي رود در صورت استفاده به تنهایي su کاربر روت مورد نظر خواهد بود مرورگر مبتني بر تکست لینوکس میباشد lynx برنامه مدیریت میل میباشد pine این برنامه نیز جهت مدیریت میل به کار میرود mail writeجهت ارسال پیغام به کاربر دیگري که لگ این میباشد به کار میرود این برنامه یکي از برنامه هاي پیش بیني شده جهت عمل downloadدر wget لینوکس میباشد به صورت معمول با سوییچ – bجهت فرستادن به پس زمینه – rجهت داون لود لینک ها و c-جهت ادامه در صورت قطع شدن به کار میرود این دستور برنامه را به پس زمینه میفرستد. bg جهت چاپ جریانی از کاراکتر ها در خروجی بکار میرود. echo عمل فرستاده شده به پس زمینه را به پیش زمینه مي آورد fg لیست اعمال متوقف شده در پس زمینه را نشان میدهد jobs