پارتیشن بندی در لینوکس(3373 مجموع کلمات موجود در متن) (12689 بار مطالعه شده است) 
پارتیشن بندی
در لینوکس
خلاصه مطالب
در این مقاله
اشاراتی به خود پارتیشن در دنیای کامپیوتر
شده است.
و
بلافاصله به تشریح آنها در دنیای لینوکس
پرداخته شده است.همچنین
چگونگی دسترسی به آنها,فرمت
آنها ,
درایور
های آنها ,انواع
فایل سیستم در لینوکس و بوت چند گانه در
لینوکس پرداخته است.
مقدمه
در دنیای کامپیوتر
شرکت مایکروسافت غول انحصارگریست که مایل
به انحصار هر تکنولوژی می باشد.اصل
موضوعه این مقاله اشاره به همین موضوع
دارد.
مایکروسافت
تکنولوژی های XML,JAVA
و ......
را تحت
اشعاع همین موضوع قرار داده است.
از همان ابتدا
خواسته که هویت پارتیشن را در انحصار
مایکروسافت در آورد,اما
موفق نبوده است.
متن مقاله
۱- هویت پارتیشن
یک پارتیشن بلاک
های پشت سر هم می می باشد که قطعه ای از
دیسک سخت شما را تشکیل می دهند.
در واقع
دسته بندی یک سری بلاک ,
پارتیشن
نام دارد.
به چند دلیل
امنیت داده,
استفاده
از چندین گونه فایل سیستم ,
استفاده
از چندین گونه سیستم عامل و استفاده کامل
دیسک سخت (اندازه
بلاک ها),
از
چندین پارتیشن بر روی یک دیسک سخت استفاده
می شود.
۲-
انواع
پارتیشن
در کل دو نوع
پارتیشن داریم که سیستمعامل گنو/لینوکس
در هر یک از آنها میتواند بنشیند.اولی
Primary و
دومی Logical
است.تنها
فرق این دو گونه پارتیشن نقطه شروع
آنهاست.نوع
Primary از
بوت سکتور شروع میشود و Logical
ازPrimary
شروع
میشود.
۲- ۲ پارتیشن Primary
جدول پارتیشن
اصلی به عنوان قسمتی از بوت سکتور نصب می
شود و فضایی را برای فقط ۴ ورودی نگهداری
می کند.
این ۴
پارتیشن Primary
صدا زده
می شود.
۳- ۲ Logical
یک پارتیشن
Primary
ممکن
است از چند پارتیشن تشکیل شده باشد.
یعنی
نقطه شروع آن پارتیشن ها از پارتیشن
Primary
باشد.
با ساخت
این پارتیشن ها میتوانیم محدودیت ساخت
فقط ۴ پارتیشن را دور بزنیم.
به این
پارتیشن ها Logical
گفته
می شود.
تعداد
آنان در یک دیسک سخت از نوع SCSI
حداکثر15
و در
IDE ۶۳
می باشد.
۳- درایورها و سمبلهای دیسک سخت و پارتیشن
در هر سیستم
عاملی هر قطعه سخت افزاری یک درایور (راه
انداز)
دارد.
ولی در
بعضی از سیستم عاملها این درایورها در
دسترس کابر نمی باشند.
لینوکس
یکی از آزادیهایی که به کاربر می دهد,
در
اختیار بودن همه چیز,
حتی
کرنل سیستم عامل می باشد.
چون بر روی PCهای
معمولی فقط از دو تکنولوژی IDE
و SCSI
برای
خواندن و نوشتن روی دیسک استفاده می شود
اینجا هم ما فقط بر روی این دو تکنولوژی
تمرکز می کنیم.
اگر برروی
مادربرد خود نگاه کنید حداقل دو جای فیش
کنترلر دیسک می بینید.
یکی
Primary و
دیگری Secandary
نام
دارد.
بر روی
هر کدام دو دیسک میتوانید سوار کنید که
یکی را Master
و دیگری
را Slave
می
نامند.
مشخصه
Master یا
Slave بودن
دو دیسک چگونگی ست کردن Jumperهای
آنان می باشد.
اولویت بوت شدن
بین دو دیسک سخت در یک کنترلر با Master
میباشد.
و بین
Primary و
Secandary
اولویت
بوت شدن با Primary
میباشد.
درایورها در
خود کرنل جا دارند، چه به صورت بدنه فایل
اصلی کرنل و چه به صورت یک ماژول میتوان
آنها رایافت.درایورها
،کنترلرها و درکل هر قطعه سخت افزاری یک
یا چندین فایل را به صورت یک سمبل برای
اشاره به سختافزار مذکور در دایرکتوری
dev/
دارند.
حال هر
پارتیشن و یا یک دیسک یک فایل با فرمت زیر
را دارا می باشد.
/dev/hd[variable][number]
مثالی از
آنdev/hda2/
می باشد
که a
نشانگر
خود دیسک سخت می باشد,
و 2
نشانگر
پارتیشن دوم بر روی دیسک سخت a
است.
البته
variable
یک تک
حرف باید باشد .
برحسب
تعداد numberی
که می توانید در رشته اسم فایل با یک
variable
ببینید
در همان دیسک سخت پارتیشن وجود دارد.
دو دیسکی که به
کنترلر Primary
متصل
می گردند برایMaster
, /dev/hda و
برای Slave
و
dev/hdb/
در نظر
گرفته شده است .و
برای دو دیسکی که به Secandary
نصب می
گردند dev/hdc/
به عنوان
Master و
dev/hdd/
به Slave
تلقی
می گردد.
البته
اگر دیسک شما از نوع SCSI
باشد
به جای ثابت hd
از sd
استفاده
می شود.
یعنی
همانdev/sda2
, /dev/hda2/ نامگذاری
می گردد.
به عنوان مثال
اگر دو دیسک سخت داشته باشیم و یکی به فیش
Primary به
صورت Master
متصل
باشد (dev/hda/)
و دیگری
به فیش Secandary
به صورت
Slave متصل
باشد (dev/hdd/),
پارتیشن
های آنان را به صورت
(dev/hda1, /dev/hda2 ...
, /dev/hdan/ ) و
(dev/hdd1,
/dev/hdd2 ... , dev/hddn/ ) می
نامند.
البته
به شرط اینکه آنها IDE
باشد .
نکته :
اگر
عددی جلوی dev/hda/
و
dev/hdb/ و
یا ...
رویت
نشد,
یعنی
این سمبل به کل دیسک اشاره دارد و سمبل کل
دیسک سخت می باشد.
ولی
زمانی که عددی جلوی آن باشد به عنوان
مثالdev/hda5/
آنگاه
این یک سمبل پارتیشن می باشد و یک پارتیشن
را هندل می کند.
اگر در کامپیوتری
خواستید ببینید که دیسک های سخت آن از چه
نوعی می باشند و چگونه به کامپیوتر شما
متصل شده اند می توانید داخل
فایلproc/partitions/
را
ببینید.
اگر
اتصالی از نوع hd
وجود
داشت دیسک سختی از نوع IDE
در
کامپیوتر موجود می باشد و اگر دیسک سختی
از نوع sd
وجود
داشت شما دیسکی از نوع SCSI
در
کامپیوترتان را دارا می باشید.
برای
Primary و
یا Secandary
بودن
آن می توانید از جدول زیر استفاده نمایید
همچنین این جدول Master
و یا
Slave بودن
دیسک شما را مشخص می کند.
نوع
اتصال بر روی کنترلر
|
نوع
کنترلر
|
نام
درایور
|
master
|
primary
|
dev/hda/
|
slave
|
primary
|
dev/hdb/
|
master
|
secandary
|
dev/hdc/
|
slave
|
secandary
|
dev/hdd/
|
البته sd
در
هاردهای جدید نشانگر هارد SATA
میباشد.
۴- پارتیشن های مورد نیاز
هرگاه بخواهیم
لینوکس نصب کنیم حداقل به دو پارتیشن /
و swap
نیازمندیم.
حجم
swap/
نباید
کمتر از دو برابر حجم Ram
کمتر
باشد به پارتیشن /
, root گفته
می شود.
پارتیشنهای
مورد نیاز :
لینوکس همیشه
در یک پارتیشن که همان root
نام
دارد فایل ها و دایرکتوری های خود را می
ریزد و با آن بالا می آید که البته شما هم
می توانید در آن چیزی بنویسید و محدودیتی
ندارد.
فایل سیستم هایی
که لینوکس از آنها استفاده می کند تماماٌ
فایل سیستم های سلسله مراتبی می باشند به
اینگونه فایل سیستم ها اختصار FHS
گفته
می شود.
(Filesystem Hierarchy
Standard). ساختمان
داده این فایل سیستم ها یک tree
می باشد
که خود شما هم می توانید یک node
به آن
اضافه و یا از آن کم کنید.
قشنگی
FHS در
اشاره گر بودن nodeهای
آن می باشد.
هریک
از این nodeها
می تواند یکی از سه گزینه زیر باشد:
فایل معمولی
فایلهای
ویژه همانند سوکتها
دایرکتوری
نکته :
در دنیای یونیکس
همه چیز در قالب یک فایل می باشد.تقسیم
بندی بالا برای کسانی می باشد که تازه
وارد این دنیا شده اند و همه چیز را فایل
و فولدر میبینند.
البته شما اینجا
پارتیشن را در قالب یک دایرکتوری می بینید
ولی زمانی که چیزی در آن دایرکتوری می
نویسید و یا از آن می خوانید در واقع در
آن پارتیشن کاری انجام داده اید و اگر
روزی پارتیشن /
شما از
بین برود شما آن پارتیشن را که بر رویش
کاری انجام می دادید حفظ می کنید.
زیرا
از نظر فیزیکی با پارتیشن /
فرق
دارد.
درواقع
پارتیشن /
ریشه
تمام کامپیوتر شما می شود.
یعنی
اگر شما بخواهید به پارتیشن دیگری دسترسی
داشته باشید باید از این پارتیشن اقدام
نمایید.
نحوه دسترسی به
پارتیشن های دیگر:
اگر شما dev/hda1/
را برای
/ ,
dev/hda5/ را
برای موزیک هایتان و dev/hda6/
را برای
swap
گذاشته
باشید شما می توانید یک دایرکتوری در
پارتیشن /
خود
بسازید و با فرمان زیر به لینوکس بگویید
که این دایرکتوری به پارتیشن dev/hda5/
اشاره
کند.
mount
/dev/hda5 /mnt/music
فرمان بالا به
لینوکس می گوید که دایرکتوری /mnt/music/
به
پارتیشنdev/hda5/
اشاره
کند در واقع هرچه شما در دایرکتوری
mnt/music/
بنویسید
و یا از آن بخوانید هیچ ربطی به پارتیشن
/ شما
ندارد و حتی اگر پارتیشن /
شما
(dev/hda1/) از
بین برود موزیک های شما همچنان بر
رویdev/hda5/
باقی
میمانند.
با دستور umount
می
توانید آن دایرکتوری را از حالت mount
point آزاد
کنید.
یعنی
پس از دستور زیر دیگر دایرکتوریmnt/music/
به هیچ
پارتیشنی اشاره ندارد:
umount
/mnt/music
برای هر دفعه
که کامپیوتر را روشن می کنیم اگر بخواهیم
تک تک پارتیشن ها را mount
کنیم
کمی کسل کننده می باشد.درواقع
انجام یک کار تکراری درهر بار بوت شدن می
باشد.
برای
رفع این مشکل فایل etc/fstab/
در نظر
گرفته شده است که شما نام پارتیشن ها
ودایرکتوری های مربوطه و نوع فایل سیستم
را در آن مینویسید که در هر وعده بوت شدن
به صورت اتوماتیک عملیات mount
انجام
گیرد.
اگر تغییری در
این فایل انجام دادید و خواستید بدون
reboot
کردن
ماشین این تغییرات اعمال شود می توانید
دستور mount
را با
گزینه a-
بکار
ببرید:
mount
–a
تصویر زیر تصویری
از یک فایلetc/fstab/
می باشد.
/dev/hda14
swap swap defaults 0 0
/dev/hda11
/ reiserfs defaults 1 1
/dev/hda1
/mnt/c vfat defaults 1 0
/dev/hda10
/mnt/i vfat defaults 1 0
/dev/hda5
/mnt/d vfat defaults 1 0
/dev/hda6
/mnt/e vfat defaults 1 0
/dev/hda7
/mnt/f vfat defaults 1 0
/dev/hda8
/mnt/g vfat defaults 1 0
/dev/hda9
/mnt/h vfat defaults 1 0
/dev/cdrom
/mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/fd0
/mnt/floppy auto noauto,owner 0 0
devpts
/dev/pts devpts gid=5,mode=620 0 0
proc
/proc proc defaults 0 0
/dev/sr0
/mnt/cdrom auto ro,noauto,user,exec 0 0
/dev/hda14
swap swap defaults 0 0
/dev/hda11
/ reiserfs defaults 1 1
/dev/hda1
/mnt/c vfat defaults 1 0
/dev/hda10
/mnt/i vfat defaults 1 0
/dev/hda5
/mnt/d vfat defaults 1 0
/dev/hda6
/mnt/e vfat defaults 1 0
/dev/hda7
/mnt/f vfat defaults 1 0
/dev/hda8
/mnt/g vfat defaults 1 0
/dev/hda9
/mnt/h vfat defaults 1 0
/dev/cdrom
/mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/fd0
/mnt/floppy auto noauto,owner 0 0
devpts
/dev/pts devpts gid=5,mode=620 0 0
proc
/proc proc defaults 0 0
/dev/sr0
/mnt/cdrom auto ro,noauto,user,exec 0 0
/dev/scd1
/cdrecorder auto ro,noauto,user,exec 0 0
گزینه اول از
چپ نام درایور شما میباشد.پارامتر
دوم mount
point شما
میباشد.گزینه
سوم نوع فایل سیستم شماست.اگر
این گزینه auto
باشد,
دیگر
خود سیستم فایل سیستم را تشخیص می دهد.در
پارامتر چهارم شما میتوانید یک سری option
را برای
mount خود
ست کنید.اگر
defaults
باشد,فقط
کاربر root
میتواند
به آن دسترسی داشته باشد.ولی
شما می توانید با این گزینه کاربر خاصی
را مشخص کنید.۲
گزینه آخر که مقداری عددی می گیرد,dump
و fsck
آن
پارتیشن را مشخص می کند.
هنگام نصب
لینوکس ,
شما می
توانید چند دارکتوری var
, /usr , /home , /boot و
tmp/ را
به صورت پارتیشن جدا نصب کنید.این
برای سرور ها مفید می با شد که زیر بار
ترافیکی بالایی می باشند.ولی
اکثر سیستمهای خانگی فقط home/
را جدا
می سازند.که
اگر خواستید مجددا لینوکس نصب کنید,
اطلاعات
شخصی شما حفظ شود.
اگر این دایرکتوری
ها به صورت پارتیشن هایی جدا نصب گردند,
آنگاه
لینوکس mount
point های
آنان را در etc/fstab/
می نویسد
تا همیشه به هنگام بوت ,
دستور
mount آنها
را mount
کند.
۵-فایل سیستم و فرمت پارتیشن
در هر سیستم
عاملی که بعد از پروسه ساخت پارتیشن که
یک مکان فیزیکی میباشد,
باید
آن را با یک فایل سیستم فرمت کرد که از این
به بعد با آن فایل سیستم بر روی آن پارتیشن
کاری انجام شود.
یکی از قدرتهای
لینوکس حمایت چیزی بیش از 100
نوع
فایل سیستم می باشد.در
صورتی که در ویندوز 2
نوع FAT
و NTFS
حمایت
میشود.100
بر 2
آمار
جالب توجهی می باشد.
دو فایل سیستم
عمده که لینوکس از آنها پشتیبانی عمده ای
میکند و اکثرا برای پارتیشن root
خود از
این دو استفاده میکند ,
ext3 و
ReiserFS
می
باشد.که
اصطلاحا به آنها فایل سیستم های Journaling
(خبرنگاری)
می
گویند.این
نوع فایل سیستم ها ,هر
کاری که در هر لحظه انجام می شود رادرلحظه
وقوع ثبت می کنند که اگر ناگهان اتفاقی
مانند قطع برق بیافتد,داده
ها حفظ شوند.نسخه
قبلی ext3
, ext2 بود
که Journaling
نبود.
برای فرمت یک
پارتیشن طبق یک فایل سیستم ,
می توان
از خانواده فرمان mkfs
استفاده
کرد.
به عنوان مثال
اگر بخواهیم پارتیشن dev/hda3/
را به
صورت ext3
فرمت
کنیم,
دستور
زیر را وارد می کنیم:
mkfs.ext3 /dev/hda3
یا می توان برای
ایجاد یک فایل سیستم از نوع FAT
از دستور
زیر استفاده کنیم:
mkfs.vfat
/dev/hda3
ولی برای ساخت
یک فایل سیستم ReiserFS
از دستور
زیر استفاده می کنیم:
mkreiserfs
/dev/hda3
شما باید تمام
پارتیشن های خود را به غیر از پارتیشن های
primary که
دارای زیر پارتیشن هستند فرمت کنید.
نکته :
برای
دیدن خانواده دستور mkfs
ازmanpage
آن
استفاده کنید.و
برای دیدن دستورات مربوط به ReiserFS
از
دستور زیر
استفاده کنید:
$apropos
ReiserFS
برای ایجاد فایل
سیستم swap
باید
از فرمان زیر استفاده کرد:
$mkswap
YOUR_DEVICE
همیشه برای
استفاده از swap
باید
آن را enable
کرد.البته
این کار را خود سیستم هنگام بوت با فرمان
زیر انجام میدهد,
ولی
شما میتوانید از به صورت manually
استفاده
نمایید.
$swapon
YOUR_DEVICE
۶-بوت چند گانه
اکثر کاربران
می خواهند چندین سیستم عامل را با هم داشته
باشند که در این مقال فقط چگونگی قرار
گرفتن لینوکس و ویندوز مورد بررسی قرار
می گیرد.
نکته ای که قابل
توجه می باشد,اولویت
نصب سیستم عامل می باشد.در
ابتدا باید ویندوز نصب گردد و آخرین سیستم
عاملی که نصب می شود لینوکس باشد.
نکته ای دیگر
که شدیدا قابل توجه می باشد,
نصب بوت
لودر می باشد.شما
باید بوت لودر خود را بر روی (MBR
(Master Boot Record نصب
کنید تا لینوکس در درجه اول بتواند از روی
دیسک سخت بوت شود و در درجه دوم ,
گزینه
ویندوز را برای شما هندل کند.البته
بدین شرط که ویندوز را قبل از لینوکس نصب
کرده باشید.
ضمایم
۱-معنی
کامپیوتری لغات انگلیسی
primary
یکی از دو نوع
پارتیشن موجود می باشد.همچنین
نام یکی از کنترلر های هارد بر روی مادر
برد می باشد.
secondary
یکی از دو نوع
کنترلر هارد بر روی مادر برد می باشد.
logical
یکی از دو نوع
پارتیشن هارد می باشد.
master
یکی از دونوع
قرار گرفتن هارد بر روی کنترلر می باشد.
slave
یکی از دونوع
قرار گرفتن هارد بر روی کنترلر می باشد.
hda
درایور هارد از
نوع کنترلرprimary
و از
نوع master
hdb
درایور هارد از
نوع کنترلرprimary
و از
نوعslave
hdc
درایور هارد از
نوع کنترلرsecondary
و از
نوع master
hde
درایور هارد از
نوع کنترلرsecondary
و از
نوع slave
swap
فایل سیستم می
باشد.
swapping
عملیات نوشتن
در حافظه و cache
کردن
آنها.
IDE
یک نوع تکنولوژی
R/W بر
روی هارد و CD.
SCSI
یک نوع تکنولوژی
R/W بر
روی هارد و CD.
AIX
اسم یک OS
مبتنی
بر یونیکس.
Jumper
اسم یک اتصال
دهنده بین دو سیم.
۲-تعریف
پارتیشن swap
هر پردازشی که
در ماشین شما در حال اجرا می باشد یک سری
از بلوکهای RAM
را به
خود اختصاص می دهد.
این
بلوکها Page
نامیده
می شوند.
Pageهای
داخل RAM
خیلی
سریع توسط CPU
ارجاع
داده می شوند.
قبل از
ارجاع و دستیابی لینوکس سعی می کند این
دستیابی ها را پیش بینی کند.
برای
همین موضوع لینوکس نیاز دارد تا RAM
را خالی
کند.
برای
اینکه هم RAM
را خالی
کند و هم Page
های
قبلی از بین نروند نیاز است آنها را در یک
جا بنویسد.
برای
این کار Pageها
را بر روی دیسک سخت می نویسد و به این
عملیات Swapping
گفته
می شود.
حال
برای مشخص کردن مکانی بر روی دیسک سخت,
یک
پارتیشن در نظر گرفته میشود و آن را Swap
می
نامند.
نویسنده:
محسن پهلوانزاده <mohsen@pahlevanzadeh.org>
PDF Version
|