کاوشگر لینوکس

آموزش لینوکس و معرفی نرم افزارهای کاربردی مرجع باز (open source)

کاوشگر لینوکس

آموزش لینوکس و معرفی نرم افزارهای کاربردی مرجع باز (open source)

آشنایی با مفاهیم شبکه و پروتکلها

برای اینکه بدانیم در پشت این صفحه هایی که  مدام در اینترنت عوض میکنیم چیزهایی قرار دارد و چه برنامه ها و پروتکلهایی این دنیا را برای ما بوجود آورده اند مقاله حاضر شروع خوبی خواهد بود. 

در دنیای شبکه ها کلمه پروتکل به معنی قوانینی است که برای انتقال پیامها بر روی شبکه وضع شده است بنابراین اینطور فکر کنید که یک پروتکل قانونی است که کامپیوترها برای صحبت کردن با یکدیگر بر روی شبکه باید رعایت کنند ، یک پروتکل شبکه باید دارای قوانین مربوط به اعلام وصول پیام ، پیدا کردن خطا و ساختار اطلاعات باشد .

برای درک بهتر پروتکل مثالی ساده می زنیم تا با مفهوم پروتکل کاملاً آشنا بشوید ، برای مثال وقتی شما بخواهید با یک نفر آلمانی صحبت بکنید و شما به زبان آلمانی تسلط ندارید و نه آن فرد به زبان فارسی مسلط است ولی هردو نفر به زبان انگلیسی مسلط هستند می توانند با این زبان با هم صحبت کنند و مطالب را به هم بفهمانند بنابراین در اینجا زبان انگلیسی پروتکلی بین آن دو نفر است و وظیفه پروتکل در شبکه هم همین است ، پروتکلها هستند که شبکه ها را تشکیل میدهند ، از آنحایی که TCP/IP عمومی ترین پروتکلی است که درحال حاضر در شبکه اینترنت از آن استفاده می شود قلب این درس مربوط به این پروتکل معروف است ولی قبل از آن قصد داریم تا توضیح مختصری راجع به مدل مرجع OSI و هفت لایه آن بدهیم .

در سال 1980 یک سازمان بین المللی استانداردسازی ، طرحی را بنامOpen System Interconnection(OSI) بوجود آورد که آن مدل براساس لایه بندی پروتکل پایه گذاری شده بود و کار این مدل به این صورت بود که وقتی دو کامپیوتر می خواهند با هم ارتباط برقرار کنند سریهایی از قسمتهای کوچک استاندارد نرم افزاری روی هر سیستم برای بهتر کردن این ارتباط عملیاتی انجام می دهند ، برای مثال یک قسمت برای حصول اطمینان از اینکه داده به طور مناسب بسته بندی شده است تلاش می کند و قسمت دیگر از فرستادن پیامهای گم شده به طور مجرد مراقبت می کند و قسمتهای دیگر نیز پیامها را در سراسر شبکه می فرستند .

 هر کدام از این قسمتها که تحت عنوان لایه از آنها یاد می شود کار مشخصی برای انجام این ارتباطات دارند و به این قسمتهای ارتباطی که با هم استفاده می شوند پشته پروتکل یا Protocol Stack می گویند و به این دلیل که آنها شامل گروهی از این لایه ها هستند که به روی هم سوار شده اند . مدل OSI از هفت نوع از این لایه ها تشکیل شده که هر کدام نقش مشخص و معینی در انتقال داده ها در شبکه دارند که یادگیری کار این لایه ها برای درک مفهوم شبکه لازم و مفید است

مدل مرجع OSI از هفت لایه زیر تشکیل شده است :
1- لایه فیزیکی (
Physical Layer) : این لایه تقریباً ساده ترین لایه است و بطور کلی کار این لایه ایجاد ارتباط بین دو تا Device است مانند ارتباط شما به وسیله مودم به ISP خودتان که در حقیقت این لایه به شما امکان ایجاد ارتباط بین دو وسیله الکترونیکی را میدهد .

2- لایه پیوند داده ها (Data link layer) : این لایه بسته ها و پیامها را در طول شبکه از هر کامپیوتر به سیستم دیگر انتقال و حرکت میدهد ، برای مثال این لایه ها روی کامپیوتر بسته ها را از کامپیوتر شما به مسیریاب شبکه محلی شما حرکت میدهد و بعد Router با استفاده از این لایه داده را به مسیریاب بعدی انتقال میدهد ، قسمتی از برنامه های Firewall یا دیواره آتش که کار محافظت از سیستمها را با کنترل رفت و آمد بسته ها انجام میدهند بر روی این لایه پیوند داده ها نگهداری میشوند و همینطور تمامی برنامه های Sniffer و یا ردیابها از این لایه برای دزدیدن اطلاعات کارت اعتباری و رمزهای عبور استفاده میکنند .

3- لایه شبکه (Network Layer) : این لایه به پروتکل اینترنت یا IP وابسته است و هدف آن فرستادن پیامها از کامپیوتر منبع داده شده به ماشین یا سیستم نهایی داده شده در طول شبکه میباشد و در کل این لایه مشخص میکند که هر بسته یا Packet به کدام آدرس اینترنتی یا آیپی مرتبط است ، برنامه هایی مانند Ping و یا Netstat از این لایه استفاده میکنند .

4- لایه انتقالی (Transport Layer) : این لایه اطمینان حاصل میکند که بسته ها به مکان مناسب روی سیستم مقصد تحویل داده شده اند یا خیر و این لایه برای تهیه جریان ارتباطی قابل اعتماد بین دو سیستم که شامل انتقال دوباره پیامهای گم شده , قرار دادن آنها درجای مناسب و نظارت و بازرسی خطاها استفاده میشود و دراین لایه پروتکل کنترل انتقال TCP و پروتکل دیتاگرام کاربر یا همان UDP و همینطور پروتکل SPX 3 قرار دارند و از مهمترین نمادهای این لایه بشمار میروند .

5- لایه جلسه (Session Layer) : کار و فعالیت این لایه نسبت به لایه های دیگر کمتر است و این لایه نشستهایی را بین ماشینهای ارتباطی با کمک به شروع نگهداری و مدیریت آنها هماهنگ میکند .

6- لایه نمایشی (Presentation Layer) : این لایه کار ترجمه اطلاعات را برعهده دارد و برای مثال اگر شما قصد ایجاد شبکه VPN بین دو سیستم را داشته باشید این لایه اطلاعات را EBCDIC به ASCII کراکتر تبدیل و ترجمه میکند و یا برعکس .

7- لایه برنامه کاربردی (Applictation Layer) : این لایه یکی از مهمترین لایه های OSI هست و به عنوان پنجره ای به کانال ارتباطی برای برنامه کاربردی و البته با توصیف داده ها و تبدیل آنها به اطلاعات با مفهوم برای برنامه های کاربردی عمل میکند و متشکل از برنامه های خاصی است که سعی میکنند با استفاده از TCP/IP در طول شبکه باهم ارتباط برقرار کنند ، برنامه هایی مانند سرور و کلاینت Telnet - سرور و کلاینت FTP و Http و Netbios و Mail سرورها و خیلی از برنامه های کاربردی در این لایه قرار دارند و به همین دلیل این لایه مورد علاقه هکرهاست و اکثراً نفوذ به سایتها و سرورها از طریقه حفره های آسیب پذیر در این برنامه های کاربردی صورت میگیرد .

راهنمای کاربران جدید لینوکس :

بسیاری از کاربران کامپیوتر، خواهان آشنایی با لینوکس و فراگیری آن هستند اما از آنجایی که لینوکس (Linux) نسبت به ویندوز پیچیده تر میباشد باید با طرز کار این سیستم عامل قدرتمند آشنا شویم .

سرعت، ثبات و سازگاری عواملی هستند که لینوکس را  یک سیستم عامل ارزشمند ساخته اند .لینوکس، سیستم عامل رایگانی است که هسته اصلی آن توسط لینوس توروالدز نوشته شده و سپس گروهی برنامه نویس با استفاده از خصوصیات کدباز آن را توسعه دادند .لینوکس بر روی هر نوع کامپیوتر شخصی با حداقل سرعت  386 مگاهرتز و  4 مگابایت حافظه RAM قابل نصب است .لینوکس دارای نسخه های فراوانی بوده که معروفترین آنها Red Hat و Mandrake و  SuSe   است .

 نصب لینوکس نسبتا یک روند آسان دارد و مراحل آن بطور خلاصه ذکر میگردد  .

1- سازگاری سخت افزار

سازگاری سخت افزاری مخصوصا برای سیستمهای قدیمی یا سیستمهایی که توسط خود شما بسته شدهاند، اهمیت دارد .البته لینوکس با بیشتر سختافزارهایی که ظرف دو سال اخیر ساخته شده است، سازگاری دارد.

شما میتوانید لیست کامل سخت افزارهای سازگار را از آدرس اینترنتی http://www.redhat.com/hardware  دریافت کنید .

2- وجود فضای کافی روی هارد دیسک

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

قبل از شروع نصب یکی از شرایط زیر باید برقرار باشد:

 کامپیوتر شما  باید فضای دیسک پارتیشن بندی نشده کافی برای نصب لینوکس داشته باشد در غیر این صورت باید یک یا چند پارتیشن قابل حذف برای آزاد کردن فضای دیسک مورد نیاز جهت نصب لینوکس داشته باشد .

 شما باید یک پارتیشن با قالب FAT داشته باشید و با استفاده ازروشpartitonless، عمل نصب لینوکس را انجام دهید . لیستی از روشهای نصب و حداقل فضای مورد نیاز بشرح زیر میباشد :

 — GNOME Workstation: 700MB

 — KDE Workstation: 700 MB

 — Server: 1.7GB

): 1.7GBانتخاب کردن تمام موارد — Custom(

3- نصب لینوکس

این شما هستید که باید تصمیم بگیرید طبق کدام روش زیر  لینوکس را نصب کنید:

الف:CD-ROM (

به شرطی که CD لینوکس و همچنین یک درایو CD-ROM در اختیار داشته باشید، این روش به یک دیسکت راهانداز یا یک CD راهانداز نیاز دارد) قدم بعد .(

ب (هارددرایو:

به شرطی که فایلهای لینوکس را به صورت کپی شده بر روی هارددیسک خود دارید، در این صورت تنها به یک دیسکت راهانداز نیاز خواهید داشت) قدم بعد.(

قدم 4-چگونه میخواهید عملیات نصب را آغاز کنید

با توجه به روش نصبی که در قدم 3 انتخاب کردهاید، باید یکی از روشهای زیر را برای شروع برنامه نصب استفاده کنید:

الف CD  (راهانداز :

اگر سیستم به شما اجازه میدهد تا از طریق درایوCD-ROM ، آن را راهاندازی کنید، میتوانید از CD-ROM لینوکس برای شروع  برنامه نصب استفاده کرده و روش نصب لینوکس را از CD-ROM انجام دهید .

ب (دیسکت راهانداز:

اگر دیسکت راهانداز در اختیار دارید، میتوانید از آن برای نصب به روش CD-ROM برایCD هایی که راهانداز نیستند یا برای نصب از روی هارددیسک استفاده کنید .

قدم 5- کدام نوع نصب برایشما مناسبتر است

لینوکس شامل چهار نوع مختلف نصب است که عبارتاند از:

 :Workstation —اگر در دنیای لینوکس تازه کار هستید و میخواهید آن را امتحان کنید، این نوع نصب برای شما بسیار مناسب خواهد بود .تنها با پاسخ دادن به تعداد کمی سوال در طول عملیات نصب، میتوانید لینوکس را در مدت زمان اندکی نصب و اجرا کنید .

 :Server —این نوع نصب برای کسانی مناسب است که قصد دارند سیستم خود را به عنوان یک سرور لینوکس مورد استفاده قرار داده و از طرفی نمیخواهند درگیر سختیهای پیکربندی سیستم شوند.

 :Custom —این نوع نصب، انعطافپذیری زیادی را جهت نصب به شما میدهد @بدین صورت که شما ترتیب رویه پارتیشنها و بستهها و غیره را انتخاب خواهید کرد .نصب Custom بیشتر مناسب افرادی است که آشنایی بیشتری با لینوکس دارند.

 :Upgrade —اگر شما یک نسخه از لینوکس را روی سیستمتان دارید و میخواهید آن را بدون صرف وقت زیادی با آخرین بستهها و نسخه کرنل به روز کنید، این نوع نصب برای شما مناسب است .

خاموش کردن و راه اندازی مجدد سیستم لینوکس

چنانچه سیستم خود را به طور صحیح خاموش کنید،Linux  فایلهای داده را ذخیره کرده و فرآیندهای در حال اجرا را متوقف میکند ضمنا به هسته مرکزی سیستم عامل یا kernel آسیب وارد نخواهد شد.
در این بخش دو روش صحیح خاموش کردن سیستم، توضیح داده میشود:
1- از طریق رابط گرافیکی :
X از دکمه منوی اصلی پانل، گزینه Logout را انتخاب کرده و سپسLogout ، Halt یا Reboot را انتخاب کنید .همچنین میتوانید پیکربندی جاری را ذخیره کنید، این کار بدین معنیاست که برنامه هایی که هنگام Logout در حال اجرا هستند، زمان ورود مجدد به سیستم به طور خود کار اجرا خواهند شد.
اگر هر یک از گزینه های
Halt یا Reboot را انتخاب کنید، باید کلمه عبور ورود به سیستم را بعد از زدن دکمه OK وارد کنید تا صحت انتخاب شما معلوم شود .
2- از طریق اعلان فرمان :در یک پنجره
Xterm ، فرمان shutdown - r now یا shutdown - h now را تایپ کنید -r .به معنی reboot و -h به معنی halt یا خاموش کردن کامل سیستم است، البته باید کلمه عبورتان را قبل از اجرای این فرامین وارد کنید .
3- از طریق صفحه :
login به Option=>System بروید و از آنجا میتوانید سیستمتان را halt یا راهاندازی مجدد کنید و نیاز به وارد کردن کلمه عبور ندارید.
یک میانبر برای راه اندازی مجدد 
یکی از سریعترین روشها برای راهاندازی مجدد سیستمتان، فشردن همزمان کلیدهای
Ctrl+Alt+Del از یک کنسول مجازی است .
یک کنسول مجازی در واقع یک رابط مبتنی بر متن و برعکس رابط گرافیکی سیستم پنجرهای
X است .چندین کنسول مجازی برای شما در دسترس هستند اما آسان ترین آنها از نظر به خاطرسپاری شاید روش میانبر باشد .شما میتوانید به وسیله زدن کلیدهای Ctrl+Alt+F1به آن دسترسی یابید .
بازگشت به رابط گرافیکی:
برای بازگشت به رابط گرافیکی از یک کنسول مجازی، فقط کلیدهای
Ctrl+Alt+F1 را بزنید .
برای راهاندازی مجدد سیستم از یک کنسول مجازی، ابتدا به وسیله زدن کلیدهای
Ctrl+Alt+F1 به یک کنسول مجازی منتقل شوید، سپس کلیدهای Ctrl+Alt+Del را برای راهاندازی مجدد سیستم فشاردهید.