باز دوره امتحانات شد و باز من شرمنده شما شدم!
از همه اونایی هم که جواب سوالاتشون رو هنوز ندادم واقعا عذر می خوام.در اولین فرصت جواب ها رو براتون میل می کنم.بدون هیچ حرف دیگه ای بریم سراغ بحث امروز.
به دلیل اهمیت بالایی که مفهوم shell در لینوکس دارد، این قسمت و چند قسمت آینده را به این موضوع اختصاص می دهیم.
مهمترین فایل ها
هسته
هسته قلب سیستم عامل لینوکس است. منابع لینوکس و ارتباط بین سخت افزار های اصلی و جانبی را مدیریت می کند.منظور از منابع، کلیه تسهیلات و امکاناتی است که این سیستم عامل در اختیار
می گذارد.برای مثال توانایی ذخیره داده ها،چاپ داده ها توسط چاپگر، حافظه، مدیریت فایل و غیره.
هسته تصمیم می گیردکه چه کسی، کی و برای چه مدت از این منابع استفاده خواهد کرد.
همچنین این اطمینان را می دهد که فرایندها و از جمله فرایند های سرور،دقیقا در زمان صحیح آغاز شده و پایان یابند.هسته وظایف مهم دیگری نیز دارد .برای شروع تنها کافیست بدانیم که هسته مهمترین فایل سیستم است.
SHELL
زبانی که کامپیوتر درک می کند زبانی از 0 و 1 ها است که زبان دودویی نامیده می شود.دستورات کامپیوتری در واقع با همین زبان دودویی_که خواندن و نوشتن آن برای تمامی ما مشکل است_سر و کار دارند.به این ترتیب برنامه خاصی در سیستم عامل وجود دارد که shell نامیده می شود.shell دستورات و فرامین را به زبان انگلیسی می پذیرد و سپس آن را به زبان کامپیوتر یعنی همان زبان دودویی ترجمه
می کند.
Shell یک مفسر زبان دستوری است که دستوراتی را که از ابزار ورودی استاندارد(صفحه کلید) و یا فایل خوانده است، اجرا می کند.لینوکس معمولا از یکی از متدوال ترین shell های زیر استفاده می کند.(در
MS-DOS ،COMMAND.COM همان SHELL است که اهداف مشابهی دارد اما به اندازه SHELL در لینوکس قدرتمند نیست.)
نام shell : توضیح
BASH(Bourne-Again SHell) :متداول ترین shell در لینوکس
CSH(C SHell) :گرامر و طرز استفاده از CSH بسیار مشابه زبان برنامه نویسی C است.
و KSH(Korn SHell)
انواع SHELL (به طور کلی)
همان گونه که افراد زبان ها و لهجه های متفاوتی را می شناسند، کامپیوتر نیز با انواع مختلفی از
SHELL ها سر و کار دارد:
• Sh یا Shell Bourne :shell اولیه که هنوز در سیستم های یونیکس و محیط های وابسته به یونیکس استفاده می شود.این shell پایه است،برنامه ای است کوچک با ویژگی هایی اندک.
• Bash یا SHell) (Bourne Again :shell استاندارد GNU.احتمالا بهترین نوع برای استفاده توسط کاربران مبتدی. علاوه بر اینکه ابزاری قدرتمند برای کابران پیشرفته و حرفه ای محسوب
می شود.در لینوکس bash ،shell استاندارد برای کاربران عمومی است.این نوع shell می تواند
جایگزین نوع Bourne شود و این بدان معنی است که دو نوع shell مذکور با یکدیگر قابل مقایسه
هستند:دستوراتی که در Shell نوع Sh عمل می کنند، در bashنیز کار می کنند.در حالیکه عکس
این مطلب همیشه درست نیست.
• csh یا shell C :همانگونه که گفته شد، از لحاظ نحوی(دستوری) این نوع مشابه زبان برنامه نویسی C می باشد.گاهی اوقات مورد استفاده برنامه نویسان قرار می گیرد.
• tcsh یا shell turbo C :جانشین shell عمومی C، که سرعت آن افزایش یافته است.
• Ksh یا shell Korn: جانشین shell Bourne با پیکربندی استاندارد و کابوسی برای کاربران مبتدی.
هر یک از انواع ذکر شده دستورات کاربر را می خواند(از طریق صفحه کلید یا ماوس) و به سیستم عامل لینوکس می گوید که کاربر چه چیزی می خواهد.
برای این که بدانید از کدام نوع shell استفاده می کنید، دستور زیر را تایپ کنید :
$ echo $SHELL
طریقه استفاده از SHELL
برای استفاده از shell ( شما به محض log in کردن به سیستم شروع به استفاده از shell می کنید.) باید دستورات را تایپ کنید. در ادامه لیستی از متداولترین دستورات آمده است:
فرمان های معمول در لینوکس
توجه داشته باشید که دستورات زیر تنها برای کاربران جدید یا مبتدی است.هدف این است که اولا در صورت استفاده از این دستورات بیشتر با SHELL سیستم خود اشنا شوید و ثانیا شما به برخی از این دستورات در SHELL SCRIPT خود احتیاج دارید. اگر کمک و یا اطلاعات بیشتری را راجع به دستوری بخواهید، می توانید از دستور زیر که به عنوان مثال برای دیدن کمک و یا گزینه های مربوط به فرمان date است، استفاده کنید:
$ date - -help
یا برای دیدن کمک یا گزینه های مربوط به فرمان ls :
$ ls - -help | more
ببینید زمانی که دستورات زیر را تایپ می کنید چه اتفاقی می افتد:
$ man ls
$ info bash
فرمان های لینوکس
شکل گرامری فرمان : موارد استفاده
date : برای مشاهده تاریخ.
who : تعیین اینکه چه کسی از سیستم استفاده می کند.
pwd :دایرکتوری های مشغول به کار را چاپ می کند.
ls یا dirs :فایل های موجود در دایرکتوری جاری را فهرست می کند.
{ نام فایل } < cat : برای ایجاد فایل متنی. نکته: برای توقف یا پایان دادن به فایل کلید کنترل (CTRL) را نگه دارید و کلید D را بزنید.(CTRL+ D)
{نام فایل} cat : برای دیدن فایل های متنی.
{نام فایل} more: برای نمایش یک فایل در هر زمان به صورت full screen.
{فایل 2} {فایل 1 } mv: برای تغییر مکان و یا تغییر نام فایل یا دایرکتوری.
{فایل جدید} {فایل قدیمی} ln : برای ایجاد کپی های چند تایی از فایل با پیوند های مختلف.بعد از این دستور هر دو فایل جدید و قدیمی به یک نام ارجاع می دهند.به عبارت دیگر برای پیوند یک نام فایل به نام فایل دیگر.
فایل1 rm: برای حذف فایل.
{نام دایرکتوری} rm – rf :تمامی فایل های دایرکتوری یا زیر دایرکتوری داده شده را حذف می کند.در استفاده از این فرمان بسیار دقت کنید.
{نام فایل} chmod : برای تغییر اجازه دسترسی به فایل.
mail: می توانید mail خود را با این فرمان بخوانید.
who am i: برای مشاهده اطلاعات بیشتر راجع به کاربر جاری.
logout (یا CTRL+D) : برای خارج شدن(log out).
{نام کاربر} mail: ارسال mail به شخص دیگر.
{نام فایل} wc: برای شمارش خطوط، کلمات و حروف فایل داده شده.
{نام فایل} {کلمه مورد نظر} grep: برای جستجوی خطی که با الگوی داده شده مطابقت دارد، در فایل مشخص شده.
{نام فایل} sort –r –n –nr:برای مرتب سازی فایل به یکی از ترتیب های زیر:
- r: عکس ترتیب عادی.
- n:مرتب سازی به ترتیب عددی.
- nr:مرتب سازی به ترتیب عکس عددی.
{نام فایل} {شماره خط} tail - |+: برای چاپ اولین یا اخرین خط فایل داده شده.
{فایل2} {فایل1} cmp یا {فایل2} {فایل1} diff: برای مقایسه فایل ها.
{نام فایل} pr : برای چاپ فایل.
Processes چیست؟
Process (فرایند) هر نوع برنامه یا کاریست که توسط PC شما انجام می شود.برای مثال $ ls – IR ،یک دستور یا درخواست برای فهرست کردن فایل های موجود در دایرکتوری و تمام زیر دایرکتوری های دایرکتوری جاری شماست.این، یک نوع فرایند است.process ،یک برنامه(دستور داده شده توسط کاربر) برای انجام یک سری کارهاست.در لینوکس زمانی که شما یک process را اغاز می کنید، هر فرایند یک شماره
می گیرد،(که به ان PID یا Process-ID می گویند.) ، PID عددی از 0 تا 65535 است.
چرا به process احتیاج است؟
لینوکس یک سیستم عامل چند کاربره و چند کاره است.به این معنی که اگر بخواهید می توانید بیش از 2 فرایند را به طور همزمان اجرا کنید.به عنوان مثال برای اینکه بدانید چه تعداد فایل روی سیستم خود دارید، ممکن است دستوری مانند زیر را بدهید:
$ ls / -R | wc – l
این دستور زمان زیادی را برای جستجوی تمامی فایل های سیستم می گیرد.پس شما می توانید چنین دستوری را در background اجرا کنید یا به طور همزمان با دادن دستوری مثل:
$ ls / -R | wc –l &
علامت & در انتهای فرمان، به shell اعلام می کند که فرمان( ls / -R | wc –l) را آغاز کند و انرا در background اجرا کند و بلافاصله دستور بعدی را بگیرد.
مثال فوق یک فرایند است و عددی که توسط shell چاپ می شود PID نامیده می شود.از این PID ممکن است برای ارجاع به یک پروسه(process) در حال اجرای مشخص استفاده شود.
فرمان های مرتبط با process در لینوکس
نام فرمان : موارد استفاده
ps: برای مشاهده پروسه در حال اجرای جاری.
Kill {PID}: برای متوقف کردن هر پروسه.
ps – ag :برای گرفتن اطلاعات در مورد تمام پروسه های جاری.
Kill 0 : برای متوقف ساختن کلیه فرایند ها به جز shell.
linux-command &: برای فرایندهای background (علامت & برای قرار دادن دستور یا برنامه ای خاص در background استفاده می شود.)
توجه داشته باشید که شما تنها قادرید پروسه هایی را که خودتان ایجاد کرده اید، متوقف کنید.administrator معمولا می تواند 95-98% پروسه ها را متوقف کند.اما برخی پروسه ها نمی توانند متوقف شوند، مانند VDU.
تغییر مسیر ورودی/خروجی استاندارد
اغلب تمامی فرمان ها ،خروجی را به صفحه نمایش می دهند و ورودی را از صفحه کلید می گیرند، اما در لینوکس این امکان وجود دارد که خروجی به فایل فرستاده شود و یا ورودی از فایل خوانده شود.برای مثال فرمان $ ls خروجی را به صفحه نمایش می دهد.اما فرمان $ ls > filename خروجی را به فایل
می فرستد. معنی فرمان این است که خروجی فرمان ls را به فایل مشخص شده بفرست.
3 نماد اصلی برای تغییر مسیر وجود دارد: > و << و <.
(1) نماد تغییر مسیر <
شکل گرامری دستور: نام فایل < فرمان لینوکس
برای اینکه خروجی به فایل فرستاده شود.توجه داشته باشید که اگر فایل وجود داشته باشد،
باز نویسی می شود (با خروجی مربوط) و در غیر این صورت فایل جدیدی ایجاد می شود.
برای مثال برای فرستادن خروجی فرمان ls، دستور روبه رو را بدهید:
$ ls > myfiles
حال اگر فایل “myfiles” در دایرکتوری جاری شما موجود باشد،بدون هیچ نوع اعلام خطا بازنویسی
می شود.(در صورتی که بخواهید محتوای فایل قبلی را نیز حفظ کنید، باید از نماد تغییر مسیر بعدی استفاده کنید.)
(2) نماد تغییر مسیر <<
شکل گرامری دستور : نام فایل << فرمان لینوکس
برای فرستادن خروجی به انتهای فایل.توجه داشته باشید در صورتی که فایل وجود باشد،فایل باز خواهد شد و بدون حذف اطلاعات/داده های قبلی اطلاعات/داده ها در انتهای فایل نوشته می شوند و اگر فایل وجود نداشته باشد،فایل جدیدی ایجاد می شود.برای مثال برای فرستادن خروجی فرمان date به فایل موجود دستور روبه رو را بدهید:
$ date >> myfiles
(3) نماد تغییر مسیر >
شکل گرامری دستور : نام فایل > فرمان لینوکس
به منظور گرفتن ورودی برای فرمان لینوکس از فایل به جای صفحه کلید.
به عنوان مثال برای گرفتن ورودی از فایل برای فرمان cat، از فرم زیر استفاده کنید:
$ cat < myfiles
Pipes
Pipe راهی است برای برقراری ارتباط بین خروجی یک برنامه و ورودی برنامه ای دیگر بدون هیچ فایل موقتی.
در واقع pipe محلی موقتی برای ذخیره است که در آن خروجی یک فرمان ذخیره شده و سپس به عنوان ورودی برای فرمان بعدی عبور می کند.pipes برای اجرای بیش از دو فرمان(فرمان های چند گانه) از یک خط فرمان استفاده می شوند.
شکل گرامری فرمان: فرمان 2 |فرمان1
فرمان ها با استفاده از pipes
فرمان : مفهوم یا استفاده pipes
$ ls | more : در اینجا خروجی فرمان ls، به عنوان ورودی فرمان more در نظر گرفته می شود به طوریکه خروجی در هر زمان به صورت full screen چاپ می شود.
$ who | sort : در این حالت خروجی فرمان who به عنوان ورودی به فرمان sort داده می شود به طوریکه به صورت لیست مرتب شده ای از کاربران چاپ خواهد شد.
$ who | wc –l : در این حالت خروجی فرمان who به عنوان ورودی به فرمان wc داده می شود، به طوریکه تعداد کاربرانی را که وارد سیستم شده اند(logon کرده اند) را چاپ می کند.
$ ls –l | wc –l : اینجا خروجی فرمان ls به عنوان ورودی به فرمان wc داده می شود به طوریکه تعداد فایل ها در دایرکتوری جاری را چاپ می کند.
$ who | grep raju : در این حالت خروجی فرمان who به عنوان ورودی به فرمان grep داده می شود به طوریکه نام کاربر خاص را در صورتی که logon کرده باشد چاپ می کند و در غیر این صورت چیزی را چاپ نمی کند.
Filter
اگر فرمان لینوکس ورودی خود را به فرم استاندارد بپذیرد و خروجی اش را نیز به فرم استاندارد تولید کند، به عنوان فیلتر شناخته می شود. Filter برخی فرایند ها را روی ورودی انجام داده و خروجی را می دهد.برای مثال فرض کنید فایلی با عنوان hotel.txt با 100 خط داده، داریم و می خواهیم محتویات این فایل از خط شماره 20 تا خط 30 را چاپ کرده و نتایج را در فایلی با نام hlist ذخیره کنیم، دستور زیر را می دهیم:
$ tail +20 < hotel.txt | head –n30 >hlist
در اینجا head ، filter است که ورودی اش را از فرمان tail می گیرد ( فرمان tail با انتخاب از خط شماره 20 از فایل داده شده به عنوان مثال hotel.txt، آغاز می شود.)و خروجی آن به فایل hlist تغییر مسیر داده است
با سلام به همه دوستان.باز هم ممنونم از لطف همتون. این قسمت را در ادامه بخش قبل به ساختار فایل اختصاص دادم.در بخش های اینده در مورد برخی مفاهیم بیشتر توضیح خواهم داد.
سایر طرحبندی های سیستم فایل
صوری
برای راحتی سیستم فایل لینوکس معمولا به صورت ساختار درختی در نظر گرفته می شود.در سیستم لینوکس استاندارد، عموما با طرحبندی زیر مواجه می شوید:
شکل فوق طرحبندی سیستم ردهت رانشان می دهد.این طرحبندی بسته به مدیر سیستم و وظیفه ماشین یونیکس، ممکن است تغییر کند. و یا دایرکتوری ها ممکن است کم یا زیاد شوند.اسامی نیز لزوما مانند فوق نیستند،و تنها قراردادی هستند.
درخت سیستم فایل از /(سلش) اغاز می شود.این دایرکتوری تمام زیر دایرکتوری ها و فایل ها را شامل می شود و دایرکتوری ریشه یا به اختصار ریشه سیستم فایل نامیده می شود.
معمولا قبل از دایرکتوری هایی که تنها یک سطح پایین تر از ریشه اند، یک سلش قرار میگیرد تا مکانشان مشخص شود و مانع اشتباه گرفته شدن انها با سایر دایرکتوری ها با اسامی مشابه گردد. همیشه خوب است زمان شروع با یک سیستم جدید، نگاهی به دایرکتوری ریشه بیندازیم:
زیر دایرکتوری های ریشه را در زیر مشاهده می کنید.
/binبرنامه های عمومی که توسط سیستم توزیع شده اند،مدیر سیستم و کاربران.
/bootفایل های راه اندازی و هسته،vmlinuz.و همچنین داده هایGRUB
(GR and Unified Boot Loader).GRUB تلاشی است برای رهایی از راه انداز_بارکننده هایی که امروزه میشناسیم.
/devشامل مراجعاتی به کلیه سخت افزار های فرعی CPU،که به صورت فایل هایی با خصوصیات ویژه ارائه می شوند.
/etcمهمترین فایل های پیکربندی سیستم در این دایرکتوری قرار دارند.داده های این دایرکتوری مشابه با داده های موجود در control panel ویندوز می باشد.
/homeدایرکتوری های home کاربران معمولی.
/initrd(در برخی توزیع ها)اطلاعات برای راه اندازی.این دایرکتوری را پاک نکنید!
/libفایل های کتابخانه ای، شامل فایل های کلیه برنامه هایی که مورد نیاز کاربران و سیستم است.
/lost+foundهمه پارتیشن ها lost_found را در دایرکتوری بالاتر خود دارند.فایل هایی که در حین خرابی ذخیره می شوند، در این محل هستند.
/miscبرای اهداف متفرقه.(miscellaneous)
/mntنقطه اتصال استاندارد (mount point) فایل های خارجی سیستم.برای مثال CD_ROM یا دوربین دیجیتال.
/netبرای قرارگرفتن کلیه فایلهایی که روی سایر کامپیوتر ها در شبکه قرار دارند.
/optنوعا شامل نرم افزار های شخص ثالث (منظور نرم افزارهای تولید شده توسط سایر شرکتهاست.) می باشد.
/procیک سیستم فایل مجازی است که شامل اطلاعاتی راجع به منابع سیستم می باشد.اطلاعات بیشتر راجع به مفهوم فایل ها درproc با وارد کردن دستور man proc به دست می اید.فایل proc.txt سیستم فایل مجازی را با جزئیات بیشتر مطرح می کند.
/rootدایرکتوریhome کاربر مدیر.به تفاوت بین /،دایرکتوری ریشه و /root ، دایرکتوری خانه کاربر ریشه توجه داشته باشید.
/sbinبرنامه های مورد استفاده سیستم و مدیر سیستم.
/tmpفضایی موقت برای استفاده توسط سیستم که پس از راه اندازی مجدد پاک می شود پس از ان برای ذخیره هیچ کاری استفاده نکنید.
/usrبرنامه ها،کتابخانه ها،مستندات و غیره.برای تمامی برنامه های مربوط به کاربران.
/varمخزنی برای تمامی فایل های متغیر و موقت ایجاد شده توسط کاربر.مانند فایل هایی که از اینترنت download شده اند و یا برای نگهداری image از یک CD قبل از رایت شدن ان.
چگونه متوجه می شوید که یک دایرکتوری به کدام پارتیشن تعلق دارد؟
استفاده از دستور df با نقطه (.) به عنوان انتخاب نشان می دهد که دایرکتوری جاری به کدام پارتیشن متعق است و در مورد مقدار فضایی که پارتیشن استفاده می کند اطلاع می دهد.
Sandra:/lib> df –h .
Filesystem size Used Avail Use% Mounted on
/dev/hda7 980M 163M 767M 18% /
به عنوان یک اصل کلی،هر دایرکتوری در زیر دایرکتوری ریشه، در پارتیشن ریشه قرار دارد،مگر اینکه در یک لیست کامل df یک ورودی مجزا داشته باشد.
اصل سیستم فایل
برای بسیاری از کاربران و برای بسیاری از اعمال مدیریت سیستم،کافیست بپذیرند که فایل ها و دایرکتوری ها در یک ساختار درخت مانند مرتب شده اند.اگرچه کامپیوتر چیزی در مورد درخت ها و یا ساختار های درختی نمی داند.
هر پارتیشن، سیستم فایل خاص خودش را دارد.با در نظر گرفتن کلیه سیستم های فایل با هم،می توانیم نظریه ساختار درختی کل سیستم را شکل دهیم، اما کار به همین سادگی هم نیست.در سیستم فایل هر فایل با یک inode نشان داده می شود، که نوعی شماره سریال است که شامل اطلاعاتی راجع به داده های واقعیی است که فایل را ایجاد کرده اند:فایل به چه کسی متعلق است، و در کجای هارد دیسک قرار دارد.
هر پارتیشن مجموعه inode های خودش را دارد.در سیستمی با پارتیشن های متعدد،فایل هایی با شماره inode های یکسان وجود دارند.
هر inode یک ساختار داده را بر روی هارد دیسک شرح می دهد،که ویژگی های فایل را ذخیره کرده،و شامل محل فیزیکی داده های فایل می باشد.زمانی که هارد دیسک برای پذیرفتن منبع داده ها مقدار دهی اولیه می شود،معمولا در حین فرایند نصب سیستم اولیه یا هنگام افزودن دیسک های اضافی به سیستم موجود،تعداد ثابتی از enode ها در پارتیشن ایجاد می شوند.این تعداد بیشترین مقدار فایل ها از هر نوعی(از جمله دایرکتوری ها،فایل های خاص،پیوند ها و...) که می توانند در یک زمان روی پارتیشن باشند، خواهد بود.ما نوعا روی داشتن 1 inode در فضایی بین 2 تا 8 کیلوبایت فضا حساب می کنیم.
زمانی که فایل جدیدی ایجاد شد،یک inode ازاد را اختیار می کند.در این inode اطلاعات زیر موجود
می باشد:
صاحب (owner)و گروه دارنده فایل.
نوع فایل(نرمال،دایرکتوری و...).
اجازه دسترسی به فایل.
تاریخ و ساعت ایجاد،اخرین خواندن و تغییر.
تاریخ و ساعتی که این اطلاعات در inode تغییر کرده اند.
تعداد پیوند ها به این فایل.
اندازه فایل.
ادرسی که محل واقعی داده های فایل را تعریف می کند.
تنها اطلاعاتی که inode شامل ان نمی شود،نام فایل و دایرکتوری می باشد.این اطلاعات در داخل دایرکتوری های خاص فایل ذخیره می شوند.با مقایسه اسامی فایل ها و شماره های inode ها،سیستم قادر به ایجاد ساختار درختی است که کاربر آن را درک می کند.کاربران می توانند شماره inode ها را با استفاده از گزینه –i در دستور ls نمایش دهند.inode ها فضای مجزای مختص خودشان را بر روی دیسک دارند.
آشنایی با سیستم فایل
مسیر
زمانی که شما از سیستم می خواهید که دستوری را اجرا کند،معمولا مجبور نیستید که مسیر کامل ان دستور را بدهید.به عنوان مثال، ما می دانیم که دستور ls در دایرکتوری /bin قرار دارد،اما برای اینکه کامپیوتر محتوای دایرکتوری جاری را لیست کند،نیاز نیست که فرمان /bin/ls را وارد کنیم.
متغیر محیطی PATH از این ویژگی حمایت می کند.این متغیر دایرکتوری هایی در سیستم را که فایل های اجرایی در ان جا پیدا می شوند،فهرست می کند.وبنابراین از بسیاری از انواع و مکانهای حفاظت شده دستورات کاربر نگهداری می کند.پس مسیر به طور طبیعی شامل دایرکتوری های بسیاری است که هر یک مکانی از اسمشان شاملbin می باشند،همانگونه که در ادامه نشان داده شده است.فرمانecho برای نشان دادن محتوای (یا $) متغیرpath استفاده شده است:
Rogier:> echo $PATH
/opt/local/bin:/usr/X11R6/bin:/usr/bin:/usr/sbin/:/bin
در این مثال دایرکتوری های /opt/local/bin،/usr/X11R6/bin،/usr/bin،/usr/sbinو/bin متعاقبا برای برنامه مورد نیاز جستجو می شوند.به محض پیدا شدن، جستجو متوقف می شود حتی اگر جستجو در همه دایرکتوری های مسیر صورت نگرفته باشد.این حالت می تواند منجر به وضعیت غریبی شود.در اولین مثال زیر کاربر می داند که برنامه ای به نام sendsms برای فرستادن SMS وجود دارد و کاربر دیگری روی همان سیستم قادر است از ان استفاده کند،اما نمی تواند.تفاوت در پیکر بندی متغیر PATH است:
[jenny@blob jenny]$ sendsms
bash:sendsms: command not found
[jenny@blob jenny]$ echo $PATH
/bin:/usr/bin:/usr/bin/x11:/usr/X11R6/bin:/home/jenny/bin
[jenny@blob jenny]$ su – tony
Password:
Tony:~>which sendsms
Sendsms is /user/local/bin/sendsms
Tony:~echo $PATH
/home/tony/bin.Linux:/home/tony/bin:/usr/local/bin:/usr/local/sbin:
/usr/X11R6/bin:/usr/bin:/usr/sbin:/bin:/sbin
توجه کنید که استفاده ازابزار su (switch user) به شما این امکان را می دهد که در شرایطی که کلمه عبور کاربری را می دانید،پوسته(shell) (در مورد shell در قسمت های اینده توضیح خواهیم داد.)را در محیط ان کاربر اجرا کنید.
نشان دهنده ادامه خط است، بدون اینکهenter یک خط را از بقیه جدا کند.
در مثال بعد،کاربر مایل است با فراخوان دستور wc (word count) تعداد خطوط یک فایل را بررسی کند،اما هیچ اتفاقی رخ نمی دهد و مجبور می شود که این عمل را با استفاده از کلید های ترکیبی CTRL+C متوقف کند:
Jumper:~> wc –l test
(ctrl-c)
Jumper:~> which wc
wc is hashed (/home/jumper/bin/wc)
jumber:~> echo $PATH
/home/jumper/bin:/usr/local/bin:/usr/local/sbin:/usr/x11R6/bin:
/usr/bin:/usr/sbin:/bin:/sbin
استفاده از فرمان wich به ما نشان می دهد که این کاربر در دایرکتوریhome خود یک دایرکتوری bin دارد که شامل برنامه ایست که ws را فراخوانی کرده است.از انجاییکه هنگام جستجوی مسیرها برای فراخوانیwc ،ابتدا برنامه در دایرکتوری home کابر پیدا شده است،این برنامه اجرا شده است،احتمالا با ورودی متوجه نمی شود، پس مجبوریم ان را متوقف کنیم.برای حل این مسئله راه های بسیاری هست(همیشه برای حل مسائل در لینوکس یا یونیکس راه های بسیاری وجود دارد):یک پاسخ میتواند نامگذاری مجدد برنامه ws کاربر باشد، و یا کاربر می تواند مسیر کامل را به فرمانی که قصد اجرای انرا دارد، بدهد که می تواند با استفاده از –a به دستورwich به دست اید:
Jumper:~> /usr/bin/wc –l test
10 test
اگر کاربر بیشتر از برنامه هایی در دیگر دایرکتوری ها استفاده می کند،می تواند مسیرش را تغییر دهد تا دایرکتوری های خویش را ببیند:
Jumper:~> export PATH=/usr/local/bin:/usr/local/sbin:/usr/x11R6/bin:
/usr/bin:/usr/sbin:/bin:/sbin:/home/jumper/bin
تغییرات ثابت نیستند!
توجه داشته باشید که زمانی که از دستور export در پوسته(shell) استفاده می کنید،تغییرات موقتی هستند و تنها در همان زمان معتبر هستند(تا زمانی که log out می کنید).
مسیرهای مطلق و نسبی
مسیر، یعنی راهی که احتیاج دارید انرا در ساختار درختی دنبال کنید تا به فایل داده شده برسید،می تواند به عنوان اغاز تنه درخت( / یا دایرکتوری ریشه) توصیف شود.در این حالت مسیر با / اغاز شده و مسیر مطلق نامیده می شود،چرا که امکان هیچ گونه خطایی وجود ندارد: تنها یک فایل در سیستم می تواند یافت شود.
در حالتی دیگر، مسیر با / اغاز نمی شود و امکان اشتباه گرفتن ~/BIN/WC (در دایرکتوری home کاربر)باbin/wc در /usr از مثال قبل وجود دارد.مسیر هایی که با / اغاز نمی شوند همواره نسبی هستند.
در مسیر های نسبی ما همچنین از علامات .(نقطه) و ..(2 نقطه) برای دایرکتوری جاری و دایرکتوری والد استفاده می کنیم.مجموعه ای از مثال های عملی:
• زمانی که قصد ترجمه کد مبدا را دارید،معمولا مستندات نصب همزمان که از اجرای برنامه پیکربندی دیگری در محل دیگری از سیستم ممانعت می کند، شما را راهنمایی می کند تا فرمان ./configure را اجرا کنید،که برنامه پیکربندی را که در دایرکتوری جاری قرار دارد اجرا کند.
• در فایل های HTML مسیر های نسبی معمولا برای ساختن مجموعه ای از صفحات که به اسانی قابل انتقال به مکانی دیگر باشند مورد استفاده قرار می گیرند:
• یکبار دیگر به تفاوت توجه کنید:
Theo:~> ls/mp3
Is: /mp3: no such file or directory
Theo :~>s mp3/
Oriental/ pop/ sixties/
منبع : اینترنت
اولا که از لطف همه دوستان ممنونم و برای این تاخیر طولانی از همه عذر میخوام.لطف کنید از این به بعد اگر انتقاد یا پیشنهادی داشتید به ID خودم بفرستید.
و اما مبحث امروز:
متن زیرترجمه بخشی از یک PDF در باره لینوکس است.
برخی مطالب در قسمت های قبل تکرار شده اند اما در اینجا مطالب با جزئیات بیشتر و دقیق تر آورده شده است.
بحث کلی این قسمت و قسمت های اینده حول مفهوم فایل ها و سیستم انها در لینوکس است. امید است که مفید واقع گردد.
بسیاری از کاربران به علت عدم اگاهی در مورد نوع اطلاعات و محل ذخیره سازی انها در لینوکس دچار مشکل می شوند.ما سعی خواهیم کرد که شیوه ساز ماندهی فایل ها را در سیستم فایلی این سیستم عامل روشن کنیم. همچنین مهمترین فایل ها و دایرکتوری ها را ذکر کرده و روش های متفاوت مشاهده محتوای فایل ها ،چگونگی ایجاد، جابه جایی و پاک کردن فایل ها و دایرکتوری ها را شرح خواهیم داد.
مروری کلی بر سیستم فایل در لینوکس
فایلها
یک توصیف ساده از سیستم یونیکس که برای لینوکس نیز به کار می رود عبارت است از: "در سیستم یونیکس همه چیز فایل است و اگر فایل نباشد یک فرایند خواهد بود"
عبارت فوق صحیح است زیرا تعدادی فایل خاص وجود دارد که تنها فایل محسوب نمی شوند (برای مثال pipes یا sockets ) اما برای سادگی گفته می شود که همه چیز فایل است.سیستم لینوکس نیز درست همانند یونیکس، هیچ تفاوتی بین فایل و دایرکتوری قائل نمی شود، زیرا دایرکتوری همان فایل است که شامل اسامی سایر فایل هاست.برنامه ها، خدمات، متن ها، عکس ها همگی فایل هستند.دستگاه های ورودی و خروجی و سایر دستگاه های دیگر نیز با توجه به سیستم، فایل در نظر گرفته می شوند.
برای مدیریت تمام این فایل ها به شیوه ای منظم، ترجیح می دهیم که به انها همانند درختی مرتب نگاه کنیم.( به عنوان مثال همانند ساختار هارد دیسک در MS_DOS ) شاخه های بزرگتر شاخه های بیشتری دارندو شاخه های انتهایی شامل برگ های درخت یا فایل های معمولی هستند.از حالا از این تصویر درختی استفاده خواهیم کرد، اما در اینده خواهیم دید که این تصویر کاملا صحیح نمی باشد.
مرتب سازی فایل ها
اغلب فایل ها تنها فایل هستند که به انها فایل های عادی(Regular files) گفته می شود.این فایل ها شامل داده های معمولی هستند مانند فایل های متنی، فایل ها یا برنامه های اجرایی، ورودی یا خروجی برنامه ها و ....
در سیستم لینوکس به طور معمول فرض می شود که با هر چه که مواجه می شوید فایل است اما موارد استثنایی نیز وجود دارد.
دایرکتوریها: فایل ها و لیست سایر فایل ها.
فایل های خاص: مکانیزمی که برای ورودی و خروجی به کار می رود.اکثر فایل های خاص در /dev قرار دارند.در اینده دراین باره بیشتر بحث خواهیم کرد.
پیوندها: سیستمی است که سبب می شود فایل یا دایرکتوری در چندین قسمت از درخت فایل سیستم قابل مشاهده باشد.در این باره جزئیات بیشتر را خواهیم گفت.
(دامنه) sockets :یکی از انواع فایل های خاص که شبیه socket های TCP/IP است و به وسیله کنترل دسترسی به سیستم فایل، امنیت فرایند های داخلی شبکه را تامین می کند.
Named pipes: کمابیش عملکردی شبیه socket ها دارد و راهی برای ارتباط فرایند ها با یکدیگر بدون استفاده از معنای socket شبکه را شکل می دهد.
نماد مفهوم
- فایل عادی
d دایرکتوری
L پیوند
c فایل های خاص
s socket
p Named paipe
برای اینکه همیشه مجبور نباشیم برای یافتن نوع فایل در یک لیست طولانی جستجو کنیم، بیشتر سیستم ها به دنبال نام فایل، پسوندی را شامل یکی از کارکتر های “/=*|@” اضافه می کنند که نشاندهنده نوع فایل می باشد.
شما به عنوان یک کاربر تنها با فایل های ساده، فایل های اجرایی،دایرکتوری ها و پیوندها سر و کار خواهید داشت.فایل های خاص برای ایجاد سیستم به نوع دلخواه است و تنها مدیران سیستم و برنامه نویسان با انها سر و کار خواهند داشت.
حال قبل از اینکه به فایل ها و دایرکتوری های مهم نگاهی بیندازیم بد نیست کمی بیشتر در مورد پارتیشن ها بدانیم.
در باره پارتیشن بندی
چرا پارتیشن؟
اغلب مردم دانش مبهمی راجع به پارتیشن ها دارند، زیرا تمامی سیستم های عامل توانایی ایجاد و یا پاک کردن انها را دارند.
به نظر عجیب می رسد که لینوکس حتی زمانی که از مراحل نصب استاندارد استفاده می کند، نیاز به بیش از یک پارتیشن روی یک دیسک دارد. و این نیاز به شرح و تفصیل بیشتر دارد.
هدف داشتن پارتیشن های مختلف در واقع دست یابی به امنیت داده ای بالاتر در هنگام بروز حادثه است.با تقسیم کردن هارد دیسک به چندین پارتیشن داده ها می توانند به صورت گروهبندی شده و جداگانه باشند.
زمانی که حادثه ای در پارتیشنی رخ دهد، تنها داده های همان پارتیشن اسیب می بینند در حالیکه سایر داده ها در دیگر پارتیشن ها اسیبی نمی بینند.
به دلایل امنیتی و قدرت عمل سیستم، از پارتیشن ها استفاده می شود،و بنا براین نفوذ در بخشی از سیستم به این معنی نیست که کل کامپیوتر در خطر است.و این مهمترین دلیل استفاده از پارتیشن بندی است.
به خاطر داشته باشید که چنین سیستم فایلی تنها امنیت داده ها را در هنگام بروز اشکال و یا قطع
ناگهانی ابزارهای حافظه تامین می کند.و داده های شما را در مقابل ساختار نادرست و یا اشکالات منطقی در سیستم فایل حفاظت نمی کند.در این مواقع لازم است که از راه حل های RAID
Array Of Inexpensive Disks) (Redundant استفاده کنید.
انواع وطرحبندی پارتیشن
2 پارتیشن عمده در سیستم لینوکس وجود دارد:
پارتیشن داده: داده های نرمال سیستم لینوکس، شامل پارتیشن ریشه(root) که حاوی کلیه داده ها برای شروع و اجرای سیستم است.
پارتیشن swap :توسعه حافظه فیزیکی کامپیوتر ، حافظه یدکی روی هارد دیسک.(حافظه مجازی)
اغلب سیستم ها شامل پارتیشن ریشه،1 یا چند پارتیشن داده و یک یا چند پارتیشن swap می باشند.
سیستم های محیط های ترکیبی ممکن است حاوی پارتیشن هایی برای سایر داده های سیستم باشند، به عنوان مثال پارتیشنی با سیستم فایل FAT یاVFAT برای داده MS Windows .
اکثر سیستم های لینوکس هنگام نصب برای تنظیم نوع پارتیشن از fdisk استفاده می کنند.معمولا این کار به صورت خودکار انجام می شود.گرچه بعضی اوقات ممکن است این قدر خوش شانس نباشید.در این موارد شما نیاز دارید که خودتان نوع پارتیشن ها را تعیین کنید و حتی عمل پارتیشن بندی را نیز خودتان انجام دهید.ابزار fdisk در این مورد به شما کمک خواهد کرد.
جدا از این ها، لینوکس از انواع مختلفی از سیستم های فایلی دیگر نیز حمایت می کند.همانند JFS،NFS،fatXX و بسیاری از سیستم های فایلی که در دیگر سیستم عامل ها در به کار می روند.
پارتیشن استاندارد ریشه(که با یک سلش مجزا نشان داده می شود،/) حدودا 100 تا 500 مگا بایت فضا اشغال می کند و شامل فایل های پیکر بندی سیستم، اصلی ترین دستورات و برنامه های سرویس دهنده، کتابخانه های سیستم، برخی فضاهای موقتی و دایرکتوری خانه ی(home) کاربر اصلی
یا همان مدیر(administrative) می باشد.یک نصب استاندارد نیازمند حدودا 250 مگا بایت فضا برای پارتیشن ریشه است.
فضای swap تنها برای خود سیستم قابل دسترس است، و در حین عملیات عادی سیستم از دید ما پنهان است.swap سیستمی است که همانند سیستم های نرمال یونیکس به شما اطمینان می دهد که هر اتفاقی که بیفتد شما می توانید به کار خود ادامه دهید.به علت این فضای کمکی شما هیچ گاه در لینوکس با پیغام های خطایی مثل حافظه بیش از حد مجاز و یا ابتدا برخی از کارها را متوقف کرده و مجدد امتحان کتید، مواجه نخواهید شد. Swap یا حافظه مجازی مدت زیادی است که مورد قبول سیستم های عامل خارج از دنیای یونیکس واقع شده است.
به طور طبیعی استفاده از حافظه روی هارد کند تر از استفاده از تراشه های واقعی حافظه کامپیوتر است اما داشتن چنین حافظه ای بسیار راحت است.
لینوکس معمولا اندازه swap را 2 برابر مقدار حافظه فیزیکی حساب می کند.هنگام نصب سیستم باید بدانید که چگونه عمل کنید.مثالی از سیستمی با 512 مگا بایت RAM:
اولین امکان: 1 پارتیشن swap با 1 گیگ فضا.
دومین امکان: 2 پارتیشن swap با 512 مگا بایت فضا.
سومین امکان:( با 2 هارد دیسک) 1 پارتیشن با 512 مگا بایت روی هر دیسک.
انتخاب اخر زمانی که دستگاه های I/O زیادی وجود داشته باشند بهترین نتیجه را می دهد.
برای راهنمایی بیشتر مستندات نرم افزار را مطالعه کنید. برخی کاربرد ها همچون پایگاه داده
(DB:Data Base) ، احتمالا به فضای swap بیشتری احتیاج دارند. برخی دیگر ممکن است از هیچ swap استفاده نکنند.فضای swap همچنین به نگارش هسته تان بستگی دارد.
هسته در بسیاری از توزیع های لینوکس در پارتیشن مجزایی قرار دارد.زیرا مهمترین فایل سیستم محسوب می شود.در این حالت یک پارتیشن /boot نیز وجود دارد که هسته(ها) را شامل می شود.
بقیه فضای هارد دیسک معمولا بین پارتیشن های داده تقسیم می شود، با وجودیکه ممکن است کلیه داده های غیر بحرانی سیستم در یک پارتیشن قرار بگیرند. برای مثال زمانی که نصب استاندارد ایستگاه کاری (workstation) را اجرا می کنید.زمانی که داده های غیر بحرانی در پارتیشن های متفاوت قرار می گیرند، معمولا الگوی زیر اتفاق می افتد:
یک پارتیشن برای برنامه های کاربر (/user)
یک پارتیشن شامل داده های شخصی کاربر (/home)
یک پارتیشن برای ذخیره داده های موقتی مثل چاپ_و mail_ صف ها(/var)
یک پارتیشن برای سومین بخش و نرم افزار اضافی(/opt)
یک بار که پارتیشن ها ساخته شدند،می توانید تعداد بیشتری به انها اضافه کنید.تغییر اندازه یا تغییر ویژگی های پارتیشن های موجود امکان پذیر است اما توصیه نمی شود.
تصمیم تقسیم هارد دیسک ها به پارتیشن ها توسط مدیر سیستم(administrator) صورت می گیرد.مدیر در سیستم های بزرگتر حتی ممکن است با استفاده از نرم افزار مناسب یک پارتیشن را روی چندین هارد دیسک توسعه دهد.در حین فرایند نصب شما می توانید طرح پارتیشن خودتان را با استفاده از ابزار خاص توزیع در حال نصب، که معمولا یک رابط گرافیکی و یا fdisk (ابزاری متنی برای ایجاد پارتیشن ها و تنظیم ویزگی هایشان)است،تعریف کنید.
نصب ایستگاه کاری یا مشتری(client) اساسا برای استفاده یک شخص است.نرم افزار انتخابی برای نصب این موضوع را منعکس می کند و تاکید اصلی بر روی بسته های عمومی کاربر، مانند زمینه دسکتاپ زیبا، ابزارهای توسعه، برنامه های مشتری برای E_mail، نرم افزار چند رسانه ای، وب و دیگر خدمات است.
همه چیز با هم در یک پارتیشن بزرگ قرار می گیرد، فضای swap با دو برابر ظرفیت RAM نیز اضافه می گردد و ایستگاه کاری شما به طور کلی کامل شده و بیشترین فضای ممکن دیسک را برای استفاده شخصی فراهم می کند.
در سرویس دهنده، داده های سیستم تمایل دارند که از داده های کاربر مجزا باشند.برنامه هایی که خدمات را ارائه می دهند در جایی متفاوت با جایی که داده های مربوط به این خدمات وجود دارند، نگهداری می شوند.پارتیشن های متفاوتی در اینگونه سیستم ها ایجاد می شوند:
یک پارتیشن با تمام داده های لازم برای راه اندازی ماشین
یک پارتیشن با داده های پیکربندی و برنامه های سرویس دهنده
یک یا چند پارتیشن شامل داده های سرویس دهنده مانند جداول پایگاه داده،mail های کاربران،ارشیو ftpو غیره.
یک پارتیشن با درخواست ها و برنامه های کاربران
یک یا چند پارتیشن برای فایل های خاص کاربران(دایرکتوری های کاربران)
یک یا چند پارتیشن swap (حافظه مجازی)
خدمات دهنده ها معمولا حافظه بیشتر و در نتیجه فضای swap بیشتری دارند.مطمئنا فرایندهای خدمات دهنده (server) مانند پایگاه داده،به فضای swap بیش از حد معمول احتیاج دارد.برای اجرای بهتر، swap معمولا به پارتیشن های swap متفاوتی تقسیم می شود.
فرمان dfدر یک سیستم در حال اجرا، اطلاعات در مورد پارتیشن ها می تواند با استفاده از دستور
df
(disk full or disk free) نشان داده شود.درلینوکس df نگارش GNU است و –h یا گزینه human readable
را که قابلیت خوانایی را بسیار تقویت می کند، حمایت می کند.توجه داشته باشید که سیستم های یونیکس تجاری معمولا نگارش df و دیگر دستورات خاص خودشان را دارند.رفتار انها معمولا مشابه است، گرچه ابزار عمومی با نگارش GNU ، خصوصیات بهتر و بیشتری دارند.
دستور df تنها اطلاعات پارتیشن های فعال و غیر swap را نمایش می دهد که می تواند شامل پارتیشن های سایر سیستم های شبکه باشد
قبل از بحث در باره مفاهیم کلی لینوکس گفتم شاید بد نباشه لینوکس رو با یکی دو تا سیستم عامل دیگر مقایسه کنیم، این جوری شاید بهتر بشه در مورد لینوکس قضاوت کرد!
متن زیر مقایسه بین لینوکس ،ویندوز 2000 و سیستم عامل Open Source دیگری به نام FreeBSD است که البته به نظر میاد نویسندش از طرفدارای سرسخت لینوکس باشه!
مقایسه اجمالی سیستم عاملهای ویندوز 2000، لینوکس و FreeBSD :
قابلیت اطمینان
Windows 2000: تمام کاربران این نرم افزار با صفحه آبی رنگ مرگ! در هنگام قفل کردن سیستم آشنا می باشند. قابلیت اطمینان ضعیف یکی از عمده ترین معایب ویندوز است. برخی از این ایرادات در ویندوز 2000 رفع گردیده اند. اما افزایش حجم کدها مشکلات بیشتری از نظر قابلیت اطمینان را به وجود آورده است. ویندوز 2000 از منابع سیستمی زیادی استفاده می کند و با توجه به معیوب شدن تدریجی حافظه و خراب شدن فایل های سیستمی، استفاده از سیستم برای بیش از چند ماه کار بسیار مشکلی است.
Linux: قابلیت اطمینان Linux مشهور است، سرور ها غالبا برای سال ها فعال می مانند. اگرچه ورودی/خروجی دیسک در حالت پیش فرض ناهمگام می باشد که قابلیت اطمینان کمتری برای عملیات مبتنی بر تعاملات دارد و ممکن است فایل سیستم را بعد از بروز اشکال در سیستم و یا قطع برق معیوب کند. اما در کل برای استفاده کنندگان Linux یک سیستم عامل قابل اطمینان محسوب می شود.
FreeBSD: FreeBSD بسیار قدرتمند است(سرور های فعال با دوره های عمر چند ساله دلیل این ادعا است). سیستم فایلی جدید Soft Updates ورودی و خروجی های دیسک را برای بهترین عملکرد بهینه می کند و در عین حال قابلیت اطمینان را برای کاربردهایی از قبیل پایگاه های داده که بر اساس تعاملات (Transactions) می باشند تضمین می کند.
کارایی
Windows 2000: ویندوز برای نرم افزارهای متداول و Desktop ها مناسب است اما قابلیت تحمل بارهای سنگین شبکه را ندارد. تعداد محدودی از سازمان ها تلاش می کنند تا از آن به عنوان یک سرور اینترنت استفاده کنند. به عنوان مثال Barnesandnobel.Com که از ویندوز NT استفاده می کند را می توان با پیغامهای خطایی که سرور آنها معمولا تولید می کند شناخت. حتی سایت Hotmail که متعلق به خود Microsoft (تولید کننده ویندوز) می باشد مدتها از FreeBSD به عنوان سیستم عامل خود استفاده نمود.
Linux: Linux برای بسیاری از کابران به خوبی کار می کند اما با این وجود قابلیت اجرایی تحت بار سنگین شبکه بهینه نیست. قابلیت اجرایی شبکه تحت هسته لینوکس 2.3 پایین تر از ظرفیت FreeBSD با سخت افزار مشابه می باشد. با عرضه شدن هسته لینوکس 2.4 که یک حافظه مجازی جدید مشابه FreeBSD می باشد، وضعیت بهبود یافته است. از آنجاییکه هر دوی این سیستم ها Open Source می باشند، صرفه اقتصادی بالایی دارند به همین دلیل کارکرد Linux وFreeBSD به سرعت در حال همگرایی می باشد.
FreeBSD: FreeBSD انتخاب برتر سیستم برای قابلیت اجرایی بالای کاربردهای شبکه می باشد.FreeBSD از سایر سیستم هایی که روی سخت افزار یکسانی کار می کنند، بهتر و بیشتر کارایی دارد. یکی از بزرگترین و شلوغ ترین سرورهای اینترنتی به آدرس ftp://ftp.cdrom.com از FreeBSD برای خدمات رسانی به بیش از 1.2 تریلیون بایت Download در روز استفاده می کند. بسیاری از سرورها از FreeBSD به دلیل توانایی آن در پشتیبانی از ترافیک سنگین شبکه با قابلیت اطمینان و اجرای بالا به عنوان OS اصلی خود استفاده می کنند.
امنیت
Windows 2000: Microsoft ادعا می کند که محصولاتش ایمن است اما هیچ تضمینی در این مورد ارائه نمی کند. نرم افزار های آنها قابل بازنگری و بررسی توسط بقیه نمی باشد و از آنجاییکه ویندوز Close source می باشد هیچ راهی برای کاربران به منظور تشخیص و تغییر هیچ یک از مخاطرات امنیتی که معمولا درباره سیستم های ویندوز منتشر می شوند وجود ندارد.
Linux: طبیعت Open source لینوکس به هرکس این اجازه رامی دهد که امنیت کد را مورد بررسی قرار داده و آن را تغییر دهد، اما واقعیت این است که پایگاه کد لینوکس توسط برنامه نویسانی بی تجربه و در مدت زمانی کم تعریف شده است. هیچ سیاست بازنگری رسمی برای کد وجود ندارد و به همین علت لینوکس هر سال در لیست پیشنهادات CERT برای Unix قرار دارد. این مسئله با این واقعیت همراه است که شرکت هایی چون Redhat به ارایه خدماتی که به ناامنی مشهور می باشند، گرایش دارند. با این وجود لینوکس نیز از سیستم دیوار آتش قدرتمند و ابزارهای تشخیص نفوذ فراوانی پشتیبانی می کند.
FreeBSD: FreeBSD برای چندین سال تحت تست مداوم بوده است. تمامی اجزای سیستم مورد چک و بازبینی مجدد قرار گرفته اند تا اشکالات مرتبط با امنیت کشف شوند. از آنجاییکه کل سیستم Open source می باشد، امنیت سیستم توسط دیگران قابل بررسی بوده است و این بررسی نیز به طور کامل انجام شده است. نصب اولیه FreeBSD هنوز از پیشنهاد امنیتی CERT در سال 2000 تبعیت می کند. FreeBSD همچنین سطوح امنیتی را در سطح هسته (Kernel) سیستم عامل پیاده سازی می کند که بسیار قدرتمند تر از پیاده سازی در سطح اجرا می باشد. FreeBSD شامل یک سیستم دیوار امنیتی (Firewall) بسیار قدرتمند و ابزارهای متعددی برای جستجوی نفوذها می باشد.
سیستم فایلی
Windows 2000: فایل سیستم FAT و NTFS متعلق به Microsoft هردو برای بیش از 15 سال به دلیل عدم سازگاری با سیستم های فایلی PC-Based قدیمی تر دچار مشکل بوده اند. این سیستم های فایلی برای باگ های زیاد و کاربردهای مخرب سرورهای امروزی طراحی نشده وحتی اعتقادی به طراحی شدن با سیستم عامل چند کاربره و یا شبکه ای نداشتند.
Linux: سیستم فایلیی که در لینوکس به کار می رود،کار خود را با یک روش الحاق سازی غیر همزمان خطرناک انجام می دهد که غالبا یک خرابی بزرگ در سیستم (crash)، سیستم را به طور دائمی تخریب می کند در حالی که در Solaris یا FreeBSD اشکال با میزان کمی از دست دادن اطلاعات تصحیح شده و سیستم قابل بازیابی می باشد.البته چندین نسخه جدید فایل سیستم برای لینوکس وجود دارد که قسمت های زیادی از این اشکالات را حل کرده اند.(مانند Ext3)
FreeBSD: FreeBSD از سیستم فایلی یونیکس (UFS) استفاده می کند که اندکی پیچیده تر از سیستم فایلی Ext2 لینوکس می باشد. این فایل سیستم (UFS) با گزینه Sofupdate، راهی بهتر برای اطمینان از بی نقص بودن و اطلاعات سیستم فایلی ارایه می دهد. این گزینه ورودی/خروجی همزمان را کاهش و ورودی/خروجی غیرهمزمان را افزایش می دهد. چرا که تغییرات برروی یک UFS بسته به ساختار سیستم فایلی و نه به صورت Sector basis (بخش گرا) هماهنگ می شود. این موضوع، هماهنگی همیشگی سیستم فایلی در فاصله دو به روز رسانی را تضمین می کند. سیستم فایلی FreeBSD همچنین نشانه های (Flags) فایلی که باعث محدودیت متجاوزان (شامل نفوذگرها یا کاربران ناخواسته یا ...) در تراکنشها می شود را پشتیبانی می کند. تعداد زیادی از این نشانه ها وجود دارند که می توان آنها را به یک فایل اضافه نمود.به عنوان مثال نشانه "غیر قابل تغییر" که هیچ گونه اجازه تغییر یا حذفی در فایل یا دایرکتوری را اجازه نمی دهد.نشانه های متداول دیگر عبارتند از "فقط افزودنی"، "غیر قابل حذف" و "آرشیو". با تلفیق این امکانات با سطوح امنیتی سطح هسته (Kernel) یک سیستم غیر قابل نفوذ به دست می آید.
گردانندگان دستگاه جانبی
Windows 2000 :Microsoft ارتباط بسیار خوبی با تولید کنندگان درایور دارد.غالبا هنگام استفاده از یک درایور بین نسخه های مختلف ویندوز مشکلاتی پیش می آید اما به طور کلی کاربران Windows دسترسی بسیار عالی و سریع به درایور های دستگاه ها دارند.
Linux: جامعه لینوکس عمدا برای تشویق تولید کنندگان به تولید درایور های Open source انتشار درایور های باینری جدا را بر روی این سیستم عامل مشکل می کند.متاسفانه اکثر تهیه کنندگان علاقه ای به انتشار درایور خود به صورت Open source را ندارند و به همین خاطر برای کاربران لینوکس هرگونه استفاده از درایورهای عرضه شده توسط تهیه کننده بسیار مشکل است.
FreeBSD: راه انداز(Bootloader) FreeBSD ، می تواند داریورهای باینری را در زمان راه اندازی بالا بیاورد. این به دیگر تولیدکنندگان درایور اجازه توزیع ماژولهای درایور باینری جدا که قابلیت بارگذاری روی سیستم شامل FreeBSD را دارند، را می دهد. براساس طبیعت متن باز FreeBSD ، ارتقاء درایور دستگاه برای سخت افزار جدید بسیار آسان است. اکثر تولید کنندگان فقط فایل های باینری سازگار با سیستم عامل ویندوز را منتشر می کنند. این بدان معنی است که از زمانیکه دستگاه به بازار می رسد تا زمانی که درایور آن رویFreeBSD در دسترس خواهد بود، ممکن است چند ماه طول بکشد.
نرم افزار های تجاری
Windows 2000: برای ویندوز نسبت به دیگر سیستم عاملها برنامه های کاربردی بسیار بیشتری در دسترس است. تقریبا تمامی برنامه های کامپیوترهای Desktop روی ویندوز و فقط روی ویندوز اجرا می شوند. اگر شما یک برنامه مهم دارید که تنها روی ویندوز اجرا می شود، هیچ راهی جز استفاده از ویندوز ندارید.
Linux: نرم افزارهای تجاری زیادی روی لینوکس موجود است که در حال زیادتر شدن نیز هست. متاسفانه لینوکس تنها فایلهای باینریی را می تواند اجرا کند که مخصوص خودش ساخته شده باشند و توانایی اجرای برنامه های دیگر سیستم عاملها را ندارد.
FreeBSD: تعداد نرم افزارهای تجاری روی FreeBSD به سرعت روبه گسترش است،اما هنوز بسیار پایین تر از آن چیزی است که در مورد ویندوز شاهد آن هستیم. علاوه بر نرم افزارهای موجود،FreeBSD قابلیت اجرای نرم افزارهای موجود روی لینوکس، SCOUnix و BSD/OS را نیز دارد.
نرم افزار های رایگان
Windows 2000: میزان نرم افزارهای رایگان ویندوز بسیار کمتر از آن چیزی است که برای Unix داریم. بسیاری از برنامه های کاربردی ویندوز به عنوان نرم افزار اشتراکی (shareware) بدون کد اصلی برنامه وجود دارند که به هیچ عنوان توسط کاربران قابل شخصی کردن(Customize) ، بهبود، توسعه و اصلاح نیستند.
Linux: تعداد بسیار زیادی از برنامه های رایگان برای لینوکس در دسترس می باشد. تمامی نرم افزارهای GNU روی FreeBSD و Linux قابل اجراست. برخی از برنامه های رایگان بسته به نوع آنها تغییراتی نسبت به نمونه های مشابه دارند چون لینوکس استاندارد مشخص پخش نرم افزاری ندارد.
FreeBSD: نرم افزارهای رایگان بسیار بسیار زیادی برای FreeBSD در دسترس می باشد. FreeBSD شامل هزاران بسته نرم افزاری و مجموعه پخش شده وسیعی می باشد که تمامی آنها همراه با کد اصلی برنامه (Source code) به طور کامل می باشند. بسیاری از مردم FreeBSD را در دسترس ترین و آسانترین کتابخانه قابل استفاده برای بسته های نرم افزاری رایگان می دانند.
محیط تولید برنامه
Windows 2000: Windows ابزارهای توسعه کمی داشته و بسیاری از مجموعه ابزار بسیار قدرتمند آن باید به صورت جداگانه خریداری شود و به ندرت قابل سازگاری با دیگر ابزارها می باشند. با این وجود اکثر تولیدکنندگان محیط های توسعه و تولید نرم افزار محصولات خود را برای ویندوز به طور جداگانه و کامل عرضه می کنند.
Linux: لینوکس تمامی ابزارهای تولید FreeBSD را به همراه تفسیرکنندگان ها زبان برنامه نویسی متداولی و تمامی برنامه های GNU از قبیل C/C++ قدرتمند GNU، ویرایشگر Emacs و دیباگر GDB در بر می گیرد. متاسفانه به علت طبیعت بسیار خرد شده (Splinted) لینوکس، برنامه هایی که روی یک سیستم (مثلا Redhat 7.2) می سازید امکان کارکردن روی سیستم دیگری از لینوکس (مثلا Slack ware) را ندارند.
FreeBSD: FreeBSD مجموعه بزرگی از ابزارهای تولید و توسعه برنامه را در بر دارد. سیستم توسعه کاملی از C/C++ (شامل ویرایشگر، و ابزارهای توسعه یونیکس برایJava، HTTP، Perl، Python، Tel/TK، Awk، Sed و ...)را به طور رایگان دریافت می کنید که براساس FreeBSD نصب می شوند و تمامی اینها شامل کدهای امنیتی می باشند.
زیر ساخت محیط تولید نرم افزار
Windows 2000: نرم افزار ویندوز یک سیستم عامل Close source است که پاسخی به نیاز بازار بوده تا راه حل یک مسئله تکنیکی. تکنولوژیهای جدید در مقیاس زیاد به درون این سیستم عامل ریخته می شوند بدون اینکه طراحی آنها مناسب یا حتی کامل شده باشند. درباره زیرساخت توسعه نرم افزار چیز زیادی در دست نیست جز همان صفحه آبی رنگ مرگ! که پیام خودش را می دهد.
Linux: لینوکس یک هسته (Kernel) شبیه یونیکس است که باید با GNU ترکیب شود تا یک سیستم عامل کامل را بسازد. لینوکس هیچ سیستم کنترل نسخه ای را مورد استفاده قرار نمی دهد و به همین خاطر تمامی تصحیح خطاها (Bug-Fixes) و توسعه ها باید از طریق پست الکترونیکی و تماس با لیست پستی و در پایان با ارسال به فردی که مجاز به ارائه کد به برنامه اصلی می باشد، انجام پذیرد. بر اساس میزان زیادی کدی که نوشته می شود، امکان کنترل کیفیت تغییرات مربوط برای یک نفر وجود ندارد. به همین دلیل کد بسیار زیادی برای لینوکس وجود دارد که با عجله نوشته شده و هیچ وقت برای یک سیستم عملیاتی امن تر قابل قبول نمی باشد.
FreeBSD: FreeBSD یک سیستم عامل پیشرفته بر اساس یونیکس می باشد. کد منبع کل سیستم در یک پایگاه داده که تحت CVS اجرا می شود در دسترس می باشد. دسترسی به این پایگاه توسط یک گروه بزرگ(200 نفر) از برنامه نویسان خبره و ارشد نوشته شد و برای هماهنگی عرضه و پخش بازبینی گردید. FreeBSD بیشتر برای یافتن جوابهای عالی در اهداف کلی طراحی گردیده تا برای تغییرات سریع به منظور اضافه کردن عملکردی جدید.
پشتیبانی
Windows 2000: اگرچه پشتیبانی برای windows 2000 وجود دارد، اما باید خود را برای یک انتظار یک ساعته آماده کنید در حالیکه تضمینی برای یافتن پاسخ وجود ندارد. به علت طبیعت کد بسته ویندوز هیچ پشتیبانی رایگان غیر رسمی برای آن وجود ندارد و باگها طبق زمانبندی و برنامه ریزی Microsoft تصحیح می شود نه طبق زمانبندی شما. از آنجاییکه ویندوز 2000 به طور متناوب به روزرسانی نمی شود، شما ممکن است سالها برای تصحیح باگ هایتان منتظر بمانید.
Linux: بسیاری از سازمان ها، پشتیبانی های حرفه ای برای لینوکس ارائه می دهند. تمامی تامین کنندگان عمده Linux بسته به گستردگی کاری، سطحی از پشتیبانی را ارائه می دهند و بعضی خدمات را به طور کامل ارایه می دهند. تعداد بسیاری از محل های بحث و گفتگو برای لینوکس وجود دارند که سوالات شما را مجانی پاسخ می دهند. از گروههای خبری و آدرسهای پستی زیادی نیز به عنوان آخرین پایگاه برای بر طرف کردن مشکلاتتان استفاده کنید.
FreeBSD: موسسات متعددی از جمله BSDi پشتیبانی های گسترده ای از FreeBSD ارائه می دهند. علاوه بر پشتیبانی حرفه ای، میزان بسیار زیادی از پشتیبانی های غیر رسمی از طریق گروههای خبری Usenet و آدرسهای پستی مانند Question@FreeBsd.org قابل دسترسی می باشد. وقتی یک مشکل پیدا می شود معمولا پاسخ دقیق آن ظرف چند ساعت پیدا می شود.
هزینه ها و قیمت های مالکیت
Windows 2000: قیمت نسخه سرور ویندوز 2000 تقریبا 700 دلار می باشد. برنامه های جانبی هزینه ای جداگانه و اضافه دارند. کاربران معمولا هزاران دلار برای برنامه هایی می پردازند که برروی لینوکس و FreeBSD به طور رایگان در دسترس می باشند. مستند سازی گران بوده و مستندات بسیار کمی به صورت جاری (Online) در دسترس می باشد. برای هر کامپیوتر در شبکه مجوزی جداگانه لازم است که به معنای تاخیر در گسترش شبکه و صرف هزینه های اضافه است. هزینه ابتدایی آموزش برای کارهای مقدماتی سازمانی نسبت Unix کمتر است. همچنین به کار بیشتری برای ادامه کارآیی سیستم با هر میزان بار کاری نیاز دارد.
Linux: لینوکس رایگان بوده و بسیاری از شرکتها بسته های نرم افزاری تجاری خود را هزینه بسیار پایینی بر روی آن ارائه می دهند. برنامه ها و مستندات آنها با هزینه ای کم و یا رایگان در دسترس می باشد. هیچ گونه محدودیتی از نظر اجازه نامه وجود ندارد، بنابراین لینوکس می تواند روی هر تعداد سیستمی که شما می خواهید بدون هرگونه هزینه اضافی نصب گردد. هزینه کل مالکیت لینوکس بسیار اندک است.
FreeBSD: FreeBSD را می توان به صورت مجانی از Internet گرفت یا می توان آن را به صورت یک مجموعه
4 CD به همراه چندین گیگا بایت نرم افزار کاربردی به ازای 40 دلار خریداری نمود که تمامی اسناد ضروری را نیز در بر می گیرد. پشتیبانی از FreeBSD به صورت مجانی و یا با قیمت بسیار اندک در دست می باشد. هیچ گونه گواهینامه و شماره سریالی برای کاربران لازم نیست به همین خاطر می توانید به سرعت کامپیوتر های اضافه ای را به شبکه بیفزایید. اینها همه با هزینه بسیار پایین مالکیت نرم افزار در دسترس می باشد.
منبع : اینترنت
شروع
راهنمای نصب قدم به قدم لینوکسfedora :
راههای زیادی برای اغاز نصب فدورا وجود دارد از جمله boot از روی CD ، فایل های FTP ،HTTP ،از روی یک هارد دیگر(هارد رو هارد کردن) و بسیاری روشهای دیگر.
شاید متداول ترین روش نصب، وارد کردن CD های نصب در داخل کامپیوتر و راه اندازی مجدد ان از روی CD ها باشد.ما در طول این راهنما فرض میکنیم که شما نصب فدورا را با استفاده از CD های نصب انجام می دهید.
بعد از اینکه CD اول را داخل کامپیوتر گذاشتید و کامپیوتر از روی CD بالا امد، صفحه fedora core را مشاهده می کنید .بازدن enter مراحل کار را ادامه دهید.
بعد از ان ازشما سوال می شود که ایا سالم بودن CD ها رو چک کند یا نه،معمولا این test،پیشنهاد خوبیست، به خصوص اگر از درستی CD ها اطمینان نداشته باشید.و همچنین مانع از این می شود که در هنگام نصب به علت خرابی CD ها دچار وقفه شوید.
اگر قبلا برنامه درستی CD ها رو تصدیق کرده است در این صورت نیاز به test مجدد نیست و می توانید ادامه دهید.
Welcome to fedora
در اینجا نصب برنامه اغاز می شود.این اولین صفحه در نصب گرافیکی است.همانطور که خواهید دید تمام صفحات نصب دارای طرح بندی یکسانی هستند.هر مرحله نصب شامل یک متن توضیحی کمکی برای ان مرحله است.(این یکی از مزیت های این نسخه از لینوکس نسبت به نسخه mandrake می باشد.)
برای ادامه next را فشار دهید.
Language Selection
در ابتدا شما نیاز دارید ، زبانی را که در حین نصب استفاده می کنید انتخاب کنید.این زبان همچنین زبان پیش فرض نصب شده برای سیستم عامل بعدی می باشد.بعدا می توانید زبانهای دیگری را برای نصب انتخاب کنید.
Keyboard Layout
سپس شما نیاز به انتخاب نوع صفحه کلید مورد استفاده تان را دارید.
Mouse Configuration
اغلب اوقات برنامه نصب به صورت خود کار نوع mouse مورد استفاده را انتخاب می کند.و در این صورت نیازی به تغییر ان نخواهید داشت.
The Search Begins...
پس از اینکه next را در صفحه Mouse Configuration زدید، برنامه شروع به جستجوی نسخه های قبلی فدورا (و یا ردهت) می کند.
Installation Type
در اینجا احتیاج دارید تعیین کنید چه سیستمی را می خواهید نصب کنید.در مورد انواع روش های نصب در قسمت قبل توضیحات لازم داده شد.در این مرحله طبق قرار قبلی گزینه workstation را انتخاب می کنیم.
انتخاب یکی از گزینه های از پیش تعریف شده امکان انتخاب بسته های شخصی را از شما می گیرد.برای استفاده از انها باید گزینه custom را انتخاب کنید.
Disk Setup
این مرحله مهم ترین و حساس ترین قسمت نصب است:پارتیشن بندی دیسک.
در ابتدا باید بگویم اکثر کاربران معمولی لینوکس(به ویژه کاربران جدید) نیازی ندارند که درباره RAID یا LVM نگران باشند.بنا بر این شما می توانید این دو گزینه را در نظر نگیرید.
اگر فدورا را به تنهایی روی یک درایو هاردتان نصب می کنید باید از گزینه پارتیشن بندی خودکار استفاده کنید.اگر نصب دو گانه فدورا را در کنار ویندوز یا سیستم عامل دیگری انجام می دهید باید قبل از شروع یک پارتیشن خالی ایجاد کنید.
اگر پارتیشن ها را خودتان ایجاد می کنید، حداقل به دو پارتیشن root و swap نیاز پیدا خواهید کرد.پارتیشن root شامل تمام فایل های سیستمی است و باید به اندازه کافی برای نصب بزرگ باشد.(معمولا حداقل بین 2 تا 4 گیگ برای root در نظر می گیرند.)
پارتیشن swap باید تقریبا دو و نیم برابر RAM کامپیوترتان باشد.
با وجودیکه از لحاظ فنی نیازی نیست ولی من پیشنهاد می کنم پارتیشن /home را نیز بسازید.این پارتیشن محلی است که همه داده های کاربر ذخیره می شود(مانند my document در ویندوز).
ایجاد پارتیشن مجزای home این امکان را به شما می دهد که بدون از دست دادن داده های شخصیتان مجدادا همین لینوکس یا سایر نسخه های ان را نصب کنید.
مجموعه اصطلاحات: در لینوکس درایوهای هاردتان به این ترتیب نامگذاری می شوند:(شماره)(حرف)hd .حرف به محل مربوطه در درایو کامپیوتر اشاره می کند. و شماره نیز به پارتیشن درایو اشاره می کند.به عنوان مثال اولین پارتیشن در اولین درایو IDE ، hda1 نامیده می شود.
Boot Loader Configuration
Boot loader به شما اجازه می دهد که سیستم عامل را اغاز کنید.همچنین به شما این اجازه را می دهد که در صورت داشتن بیش از یک سیستم عامل بر روی کامپیوتر، سیستم عامل مورد نظر را انتخاب کنید.در اینجا به راحتی می تواید از عناصر پیش فرض استفاده کنید.
Network Configuration
در صورتی که کامپیوترتان بر روی یک شبکه محلی((LAN قرار داشته باشد و یا یک مودم کابلی یا DSL داشته باشید، نیاز دارید که پیکر بندی شبکه را انجام دهید.برنامه نصب به صورت پیش فرض انرا DHCP قرار می دهد به طوریکه اطلاعات لازم را به صورت خودکار از Internet Service Provider))ISP تان می گیرد. بیشتر خدمات دهندگان اینترنت چه از نوع کابلی و چه پهن باند،از DHCP استفاده می کنند.بنا بر این این قسمت را بدون تغییر بگذارید.
اگر خواستید خودتان ادرس IP(Internet Protocol) تان را وارد کنید به سادگی روی قسمت edit کلیک کنید و سپس ادرس را وارد کنید.
Firewall Configuration
دیواره های اتش خوب است همواره فعال باشند به ویژه اگر که یک ارتباط پهنباند دارید و یا در یک شبکه محلی هستید.بهتر است که در ساختار این قسمت تغییری ایجاد نکنید مگر اینکه بخواهید web ،mail ، ویا FTP server را بر روی کامپیوترتان اجرا کنید. در این زمان تنها بر روی پروتکل مناسب کلیک کنید تا به ان اجازه دهید که از میان دیواره اتش عبور کند.به یاد داشته باشید که در اینجا سئوال می شود که چه نوع سرویس هایی اجازه ورود دارند نه اجازه خروج. بنا بر این اگر که می خواهید تنها به گشت و گذار در وب بپردازید و نمی خواهید که یک web server باشید، پروتکل HTTP را بدون تغییر بگذارید.
Additional Language Support
در اینجا باید انتخاب کنید که کدام زبان ،زبان پیش فرضی است که در کامپیوتر استفاده شده است.همچنین فرصت دارید در صورت تمایل زبان دیگری را برای اضافه شدن انتخاب کنید.
Time Zone Selection
اکنون باید یک منطقه زمانی مناسب را برای کامپیوترتان انتخاب کنید.برای این کار به دو طریق می توانید عمل کنید.یا میتوانید بر روی منطقه مورد نظر روی نقشه کلیک کنید و یا از لیست پایین نقشه منطقه زمانی مورد نظر را انتخاب کنید.
Set Root Password
در دنیای لینوکس و یا یونیکس root در واقع مدیر کامپیوتر محسوب می شود.(منظور همان Admin است).برای انجام کارهای مدیریتی تنها کافیست که root را اجرا کنید. اگر هنگام log on کردن root هم به صورت پیش فرض اجرا شود بسیار زیان اور است.این حالت نه تنها یک خطر امنیتی است بلکه ممکن است باعث شود شما در موقعیتی قرار گیرید که فایل ها و یا ساختار های اصلی کامپیوتر ناگهان تغییر یابند و یا به کل پاک شوند و کامپیوتر را بلا استفاده بگذارند.در این حالت مجبورید مجدد سیستم عامل را نصب کنید.
Package Group Selection
در این بخش از نصب شما قادرید بسته هایی را که مایلید روی کامپیوترتان نصب شوند، انتخاب کنید.برای کاربران جدید شاید این مرحله کمی گیج کننده باشد.در این حالت بهتر است تغییری در گزینه های پیش فرض ندهید.اگر مایلید بسته های منحصر به فردی را از هر گروه مورد نظر انتخاب کنید، تنها کافیست روی قسمت details (جزئیات) کلیک کرده و سپس از میان لیست ارائه شده، بسته های مورد نظر را انتخاب کنید.
About To Install
اخرین فرصت برای بازگشت...
پس از کلیک کردن روی next در این قسمت، فرمت شدن پارتیشن های دیسک اغاز شده و بسته های انتخابی نصب می شوند.
Required Install Media
سپس برنامه نصب به شما یاد اوری می کند که برای تکمیل فرایند به هر 3 CD نیاز خواهید داشت.(البته گاهی تعداد CD ها 4 تا خواهد بود و در واقع این تعداد بستگی به بسته های نرم افزاری دارد.)
Formatting "/"
پس از ان فرمت کردن پارتیشن های مربوط ادامه می یابد.
Transfer Install Image To Hard Drive
پیش از نصب بسته های شخصی، تصویر نصب اصلی به هارد درایو منتقل می شود...
Installing Packages
سپس نصب بسته ها اغاز می شود...
بسته به اینکه چه تعداد از این بسته ها را انتخاب کرده اید و سرعت کامپیوتر شما چقدر است، این قسمت 15 تا 40 دقیقه وقت می گیرد.اکنون زمان مناسبی برای مطالعه است!!
Installing Packages Continued...
احتمالا به یک مجله دیگر نیاز پیدا می کنید....
Insert Disc 2
دیسک دوم را وارد کنید.
Insert Disc 3
دیسک سوم را وارد کنید.
Boot Disk Configuration
ایجاد یک دیسکت boot معمولا فکر خوبیست.این کار به شما اجازه می دهد زمانی که فایل های boot خرابند یا پاک شده اند با استفاده از این دیسکت بتوانید کامپیوترتان را بالا بیاورید.(boot کنید.)
Installation Complete!
در این قسمت عملیات نصب به پایان می رسد.
پس از اینکه عملیات نصب به پایان رسید و کامپیوترتان مجددا بالا امد،با صفحات زیر رو به رو می شوید.
که کارهای اصلی زیر را شامل می شوند.
Welcome
License Agreement
Date & Time
User Accounts
باز هم باید یاد اوری کنم که ایجاد یک حساب کاربری بسیار مهم است.اگر بیش از یک کاربر از کامپیوتر استفاده می کنند می توانید برای هر یک حساب کاربری خاص خودش را ایجاد کنید.
Sound Card Setup
در اینجا می توانید کارت صوتی تان را در صورتی که توسط برنامه نصب شناخته شده است، تست کنید.در غیر این صورت می توانید وضعیت انرا تغییر رهید.
Additional CD's
اغلب اوقات می توانید این صفحه را skip کنید.
Finish Setup
حالا دیگر می توانید از لینوکس فدورای جدیدتان لذت ببرید.
منبع:
http://linuxreview.net/FedoraInstallGuide