معرفی لینوکس-1

یونیکس سیستم چند کاربره، چند وظیفه ای و multi-thread است که در یک آزمایشگاه ایجاد شد. یک سری استاندارد از توش درمیاد به اسم POSIX. از یونیکس در دانشگاه ها استفاده میشد اما زمانی که وارد ارتش آمریکا شد source ش بسته میشه. لایسنس یونیکس رو میدن به The Open Group. هر سیستم عاملی که به open group بدیم، اگر همه استانداردهای POSIX رو رعایت کرده باشه، اجازه داره اسم یونیکس رو واسه سیستم عامل استفاده کنه.بعد از اینکه ارتش یونیکس رو میگیره، فردی به نام Richard Stallman بنیاد نرم افزار آزاد رو ایجاد میکنه. میخواد یک سیستم عاملی بسازه که کاملا open source و رایگان باشد. فردی به نام Linus Torvalds هسته کرنل لینوکس رو مینویسه و gnu linux متولد میشه. در واقع سیستم عامل لینوکس unix-like است چون به open group پول نداده تا اسم یونیکس رو یدک بکشه. سیستم عامل های مختلف یونیکس معماری و هسته ها و دستورهای مختلفی دارند ولی لینوکس یک هسته واحده که روش نرم افزار سوار میشه.برای شروع به سایت getfedora.org میرویم. اکثر شرکتها برای develop کردن از Workstation استفاده میکنن و برای اینکه روی سرور بالا بیارن از centos استفاده میکنن. پس برای شروع workstation را دانلود میکنیم.پارتیشن بندیدر ویندوز file system های زیر رو داریم: NTFS و FAT و FAT32. اما در یونیکس و unix-like ها چنین پارتیشن بندی نداریم. directory بندی داریم. ساختار لینوکس اینجوریه که یه دونه root داریم که با / نشون داده میشه. root خودش ممکنه توی یه دونه drive جدا باشه. بعد از / زیرمجموعه هایی به اسم bin و boot و dev و etc و home و lib و lost+found و misc و mnt و net و opt و proc و root و sbin و tmp و usr و var داریم.مثلا در ویندوز c:/users/bahar داریم. در لینکوس هر کاربری که میسازیم فایل هاش میاد در /home/bahar. همه زیرمجموعه های / رو در یک پارتیشن میندازه و home رو در پارتیشن جدا میندازه. فرض کنید میخوایم ویندوز رو حذف کنیم. در ویندوز پوشه users در c هست. وقتی ویندوز رو پاک میکنیم users هم میپره. حالا که در لینوکس home جدا هست، اگر مشکلی برای سیستم عامل پیش بیاد اطلاعات کاربرها سر جاشونه. میتونیم همه زیرمجموعه ها رو جدا کنیم و هر کدام را یک پارتیشن کنیم. directory هایی که برای ما مهم هستن یکی etc هست که تنظیمات نرم افزارها توشه، یکی home هست. ما یک کاربر root در لینوکس داریم که همه کاره است. فایل این super-user در home نیست بلکه در /root است. به خاطر مسائل permission بندی جدا شده. یکی هم var مهم است. داخل var زیرمجموعه های gdm و lib و lock و run و log و spool و tmp داریم. مثلا log ها رو چک میکنیم تا ببینیم چه اتفاقی داره در سیستم میفته.در ویندوز file system های NTFS و FAT و FAT32 داریم. در لینوکس اینها زیاد هستند که هر کدام مزیت و عیبی دارند. مثل ext2 و ext3 و ext4 و ZFS و Btrfs. اینها کپی یونیکس هستند. بین اینها ZFS و Btrfs خیلی به درد میخوره. swap مثل file system است.در ویندوز چیزی داریم به اسم paging.ini. کار RAM اینه که یه درخواستی میاد، واسه اینکه اجرا بشه موقع runtime میاد یه فضایی رو از حافظه میگیره و همه بار و بندیلش رو میندازه تو RAM و از RAM لود میکنه. به جای اینکه هر دفعه بره تو cpu و برگرده. مثل cache میمونه. گاهی خود سیستم عامل یک لایه cache اضافه هم اضافه میکنه که بهش paging میگن. paging در واقع همون RAM هست اما در disk ضبط میشود.وقتی در لینوکس و یونیکس برنامه باز میکنیم و سیستم تحت فشاره و حافظه پره، خود حافظه هم یه سری چیزها رو میریزه تو paging و از disk میخونه. به hard میگه تو هم ادای من رو در بیار و تو هم RAM شو. اون فضا میشه فضای کمکی برای RAM. تعیین اندازه swap: به اندازه حافظه سیستم بهش سایز میدیم (کمترین اندازه RAM). مثلا اگر RAM مان 6 گیگ باشد به آن هم 6 گیگ میدیم. اما خیلی ها این کار رو میکنن که RAM رو همیشه بیشترین مقدار میذارن. سایز پارتیشن swap رو سایزی میذارم که ممکنه فرداروزی RAM ارتقا بدیم به مشکل نخوریم. اندازه RAM باشه کافیه. مینیمم ش 1 گیگه. مثلا اگر میدونم بعدا میخوام RAM رو 16 گیگ کنم، از الان اندازه ش رو 16 میذارم چون ضرری نداره. اون قسمت از پارتیشن که خالی میذاریم، نوعش رو swap در نظر میگیریم.از p30 download یک virtualbox دانلود میکنیم...