0

آموزش لینوکس

 
hoseinmos
hoseinmos
کاربر برنزی
تاریخ عضویت : آذر 1389 
تعداد پست ها : 437
محل سکونت : کرمانشاه

آموزش لینوکس

راهبری عمومی در لینوکس حالا که یک توزیع گنو/لینوکس را دانلود کرده و روی هارد خود نصب کرده ایم، وقت آن شده تا چرخی در آن بزنیم و با محیط گرافیکی و تنظیمات عمومی این سیستم عامل تا حدی آشنا شویم. توجه کنید که هدف ما در این درس یاد گرفتن راه حل کارها نیست بلکه دیدن محیط کاری لینوکس است. توزیعی که ما در اینجا نصب کرده ایم، مینت (Mint) نام دارد که یک نسخه منشعب شده از توزیع اوبونتو و کاملا مناسب برای استفاده بر روی سیستم های دسکتاپ است. مثل هر توزیع دیگر لینوکس، به روز رسانی یکی از اصلی ترین قدم های بعد از نصب است. آیکون مشخص شده در شکل زیر به شما می گوید که‌ سیستم نیاز به آپدیت دارد و با فشردن آن و دادن پسورد و انتخاب Install Updates به روزرسانی سیستم شروع می شود. حالا باید چند دقیقه ای منتظر آپدیت شدن سیستم بمانیم، بگذارید در مورد افسانه ای اشتباه در دنیای لینوکس صحبت کنیم که می گوید حذف و نصب برنامه‌ در این سیستم ها سخت است و نیاز به مهارت فنی بالا یا استفاده از خط فرمان (Command Line)‌ دارد. این درست نیست. تقریبا تمام توزیع های لینوکس برنامه ای مستقل دارند که می توان از طریق آن برنامه های مورد نظر را به سیستم اضافه یا از آن حذف کرد؛ اینکار بر خلاف ویندوز از یک محل کنترل مرکزی انجام می شود. خوشبختانه اخیرا سیستم عامل های موبایل مانند اندروید و آی.او.اس و همینطور سیستم عامل مک او.اس.ده این مفهوم «منابع نرم افزاری» را به سیستم های خود اضافه کرده اند و در نتیجه «منابع نرم افزاری» دیگر مفهومی ناآشنا نیستند. این سیستم ها (که ریپوزیتوری یا منابع نرم افزاری نامیده می شوند)، فهرست های بزرگی هستند از حجم زیادی برنامه قابل نصب بر روی سیستم شما. مثلا اگر بخواهیم در همین لحظه برنامه چت اسکایپ را روی سیستم نصب کنیم کافی است وارد برنامه مدیریت نرم افزارها شویم، Skype را جستجو کنیم و با زدن تیک کنار آن و Apply کردن، به سیستم بگوییم که آن را از روی منابع نرم افزاری گنو/لینوکس مینت نصب کند. چند دقیقه بعد این برنامه دانلود شده و به شکل خودکار نصب خواهد شد: می بینید که این سیستم عملا راحت ترین روش ممکن برای نصب برنامه است و یکی از تفاوت های توزیع ها هم در اینجاست که چه حجمی برنامه در منابع آنلاین آنها موجود است. در حال حاضر بیشترین تعداد برنامه موجود در ریپوزیتوری ها مربوط به توزیع Debian و Arch است که اولی با داشتن فرزندی مانند Ubuntu برای استفاده بی دردسر نیز بهینه سازی شده است. در ضمن به این دقت کنید که این سیستم باعث می شود سیستم عامل نگاه جامعی بر روی همه برنامه های نصب شده داشته باشند و در صورت نیاز بتواند به شما اطلاع بدهد که چه برنامه ای نیاز به بروزرسانی دارد و غیره. حالا که سیستم مدیریت بسته گنو/لینوکس را دیده ایم و سیستم هم در حال آپدیت شدن است، بد نیست علی الحساب امکان تایپ فارسی را در سیستم خود فراهم کنیم. فرض کنیم اصولا نمی دانیم چطور باید اینکار را بکنیم پس از بدیهی ترین راه ممکن شروع می کنیم: نگاه انداختن به منوها که به سرعت ما را به گزینه صحیح که System Setting (تنظیمات سیستم) است می‌رساند: با فشردن آن پنجره ای ظاهرا می شود که حاوی بخش بزرگی از تنظیمات عمومی سیستم است. ما به دنبال فارسی کردن صفحه کلید هستیم پس کافی است روی Keyboard Layout (چینش صفحه کلید) کلیک کنیم و بعد از انتخاب برگه (Tab) مربوط به Layout به این بخش از تظیمات برسیم: می بینید که در شکل بالا تنها صفحه کلید انگلیسی انتخاب شده پس ما با فشار دادن علامت + می گوییم که می خواهیم یک Layout به چینش های صفحه کلید مورد استفاده اضافه کنیم: با انتخاب Persian و فشار دادن Add، صفحه کلید فارسی به صفحه کلید انگلیسی اضافه می شود. اما چطور باید بین آنها سوییچ کنیم؟ اینکار منطقا باید در بخش Option امکان پذیر باشد پس آن کلید را فشار می دهیم: می بینید که تعداد زیادی گزینه در طبقه بندی های مختلف در اختیار ما قرار گرفته است. چیزی که من به دنبال آن هستم کلید مربوط به تغییر لی آوت های مختلف کیبورد است و می بینید که بعد از باز کردن آن بخش، کنار Alt+Shift تیک زده ام. حالا آلت و شیفت صفحه کلید را تغییر می دهند. می بینید که از منوها یک برنامه نوشتن متن پیدا کرده ام و یک نکته علمی کوچیک را برایتان تایپ کرده ام. در ضمن توجه کنید که چطور لینوکس به راحتی تشخیص داده که کدام بخش متن انگلیسی و کدام بخش فارسی است و به شکل متناسب آن را راست به چپ یا چپ به راست نوشته است. شاید برایتان جالب باشد که لینوکس سال ها قبل از سیستم های دیگر ساپورت کامل از زبان فارسی و تقویم شمسی را دارا بوده است. حالا که صفحه کلید را فارسی کرده ایم، اجازه بدهید سری هم به اینترنت بزنیم. منطقا می خواهیم اینترنت را با یک مرورگر بچرخیم، پس از منوی بالایی در بخش Internet، به دنبال یک مرورگر وب می گردیم و Firefox را کشف می کنیم: با کلیک روی آن و رفتن به سایتی مثل درسنامه به چنین چیزی خواهیم رسید: بگذارید با زدن Alt+Tab یا کلیک کردن روی پنجره کوچک شده آپدیت سیستم، نگاهی به آن بندازیم: همانطور که می بینید بسته های مورد نیاز کاملا دانلود شده و سیستم در حال آپدیت شدن است. یعنی حالا سیستم شما دارد هر بسته قدیمی که نسخه جدیدتری از آن وجود دارد را ارتقا (Upgrade) می دهد. اینکار با رفع باگ ها، پچ کردن مشکلات امنیتی، بهبود سرعت سیستم و افزودن قابلیت های جدید به آن باعث تجربه بهتری در استفاده از سیستم عامل و برنامه ها خواهد شد. راستش را بخواهید اکثر لینوکسی ها معتاد به آپدیت هستند و دائما چک می کنند تا ببینند آیا یکی از برنامه هایی که از آن استفاده می کنند آپدیت شده است یا نه و در صورت دیدن آپدیت احساس می کنند که زندگی شان مطمئنا از چند ساعت قبل بهتر شده است! تا سیستم در حال آپدیت است این را هم بگوییم که سیستم پیش فرض مینت شما، برنامه های زیادی دارد. همان یک ربع یا بیست دقیقه که صرف نصب آن کرده اید یک مرورگر وب، یک برنامه ایمیل خوان، برنامه چت، مجموعه آفیس (به نام لیبره آفیس)، برنامه ادیت تصاویر به نام گیمپ (Gimp) و انواع برنامه های پخش موسیقی و نوشتن روی دی وی دی و... را روی سیستم خود نصب کرده اید. راستی! تا مراحل آخر آپدیت در حال انجام است بگذارید دو راز را به شما بگوییم که کمک می کند تا آخر عمر بهترین متخصص کامپیوتر باشید. اولی سایتی آشنا به اسمگوگل است که در آن می توانید تقریبا جواب هر سوال مربوط به لینوکس را پیدا کنید و دومی این واقعیت است که سیستم ها ساخته شده اند تا شما به سادگی از آنها استفاده کنید. همانطور که در بحث تغییر صفحه کلید دیدید، باید از گشتن در منوها و وارد شدن به مرتبط ترین منوها شروع کرد و کم کم به جای مورد نظر رسید. اگر الان تصمیم بگیریم برای تاکسی که روی دسکتاپ است سبیل بگذاریم چکار می کنید؟ منطقی ترین کار رایت کلید کردن روی آن است و نگاه کردن به منوها است و رسیدن به گزینه «باز کن با... (Open With)» و سپس باز کردن آن با برنامه ادیت تصاویر گیمپ: و پس از اینکه گیمپ باز شد اضافه کردن سبیل: و حالا هم اگر بخواهم آن را به عنوان تصویر پس زمینه انتخاب کنم، اولین ایده رایت کلیک و نگاه کردن به گزینه هاست. متاسفانه آنجا دستور مستقیمی برای تنظیم این عکس به عنوان عکس پس زمینه لینوکس نمی بینم پس این بار روی عکس دوبار کلیک می کنیم تا مرسوم ترین برنامه باز شود. اینجا چرخی در منوها می زنیم و گزینه مورد نظرم را کشف می کنیم: و می بینید که کار می کند: در ضمن در تصویر می بینید که آیکون وضعیت آپدیت سیستم حالا به یک تیک سبز تغییر یافته که اگر ماوس را روی آن نگه دارید به شما می گوید سیستم به طور کامل آپدیت است. شاید دوست داشته باشید به اولین اسکرین شات برگردید که این تصویر یک علامت تعجب نشان می داد (به معنی نیاز به آپدیت) یا عکس های وسط که یک چرخ دنده به شما می گفت سیستم مدیریت بسته در حال کار است. حالا اینجا یک تیک سبز داریم یعنی آپدیت انجام شده است و در نتیجه این جلسه تمام شده است! در این جلسه با هم چرخی در محیط کاربری لینوکس زدیم و دیدیم که این سیستم عامل علاوه بر پشتیبانی کامل از زبان فارسی می تواند برای تمام کاربردهای روزمره نیز مورد استفاده قرار گیرد. در جلسه بعد نگاهی خواهیم انداخت به توان تغییر پذیری این سیستم بنا به علایق کاربرهای مختلف و امکان تنظیم آن براساس نیازهای هر فرد.
پنج شنبه 27 مهر 1391  12:13 AM
تشکرات از این پست
hoseinmos
hoseinmos
کاربر برنزی
تاریخ عضویت : آذر 1389 
تعداد پست ها : 437
محل سکونت : کرمانشاه

نصب لینوکس

نصب لینوکس

 

 

‎در جلسات قبل با فلسفه و مفاهیم نرم افزار آزاد آشنا شدیم و کاربردهای متنوع گنو/لینوکس را دیدیم. حالا موقع مناسبی است برای عملی کردن حرف ها و نصب یک لینوکس دسکتاپ.

‎می دانید که برای شروع باید اول یک توزیع انتخاب کنیم. توزیع ها بسیار متنوع هستند و هر کدام برای هدف خاصی ساخته شده اند. اگر در دنیای لینوکس تازه کار هستید، بهتر است موضوع را خیلی سخت نگیرید و با یکی از توزیع های مرسوم مانند فدورا، اوبونتو، دبیان یا مینت شروع به کار کنید. بعدا که دید بیشتری به دست آوردید به راحتی خواهید توانست توزیع های دیگری را نیز محک بزنید و تشخیص بدهید که کدامیک برای شما مناسب تر است.

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

‎برای شروع به کار، باید یک سی دی لینوکس داشته باشیم تا کامپیوتر را با آن بوت کنیم. ما بعد از ورود به سایت لینوکس مینت، به بخش دانلود وارد شدیم و فایل ایزوی DVD جدیدترین نسخه را دانلود کردیم. سپس آن را روی یک سی دی کپی و سیستم را بوت کردیم.

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

‎برای پیگری مراحل نصب کافی است بر روی آیکون نصب که به شکل یک سی دی نشان داده شده کلیک کنیم. اول زبان:

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

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

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

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

‎در قدم بعدی که اینجا می بینید، لازم است مشخصات کاربری را وارد کنیم. چیزهایی مانند اسم کاربر، اسم این کامپیوتر و پسورد مورد استفاده کاربر.

‎اگر در تصاویر دقیق شده باشید دیده ‌اید که در تمام طول این مدت سیستم در حال نصب بوده. نوار نمایش دهنده میزان پیشرفت کار، هنوز هم در حال جلو رفتن است ولی دیگر سوالی برای پرسیدن باقی نمانده، پس چند اسلاید در مورد قابلیت های لینوکس مینت دیده می شود:

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

‎بعد از ریبوت و پس از جدا کردن ابزار نصب (مثلا درآوردن سی دی از درایو) کامپیوتر با لینوکس تازه نصب شده، بوت خواهد شد و بعد از چند ثانیه به اینجا خواهید رسید که سیستم از شما می خواهد با یوزر و پسوردی که تعریف کرده اید به سیستم وارد شوید. در اینجا پسورد را وارد می کنید:

‎حالا به سیستم وارد شده ایم:

‎همانطور که می بینید توزیع گنو/لینوکس مینت بعد از اولین لاگین کاربر، یک منوی راهنما به وی نشان می دهد. بعد از برداشت تیک «هر بار این را نشان بده (Show this dialog at startup)» بر روی Close کلیک می کنیم و به دسکتاپ سیستم می رسیم:

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

‎و برای خاموش کردن سیستم تا جلسه بعد، از آن یکی گوشه عمل کنید:

 

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

کامپیوتر را با سی دی زنده بوت می کنید. روی آیکون نصب کلیک می کنید و مرحله به مرحله جلو می روید. احتمالا سیستم حین نصب از شما در مورد مکان جغرافیایی (محدوده زمانی)، نام کاربر، پسورد و محل نصب لینوکس سوالاتی خواهد پرسید و بعد از اتمام از شما خواهد خواست با درآوردن سی دی،‌ کامپیوتر را یکبار دیگر بوت کنید. احتمالا در نیم ساعت هر کسی که حداقلی از کامپیوتر آگاهی داشته باشد، می تواند یک لینوکس را نصب کند.

‎اما لینوکس دنیایی است که هر چقدر از آن بیشتر بدانید راحت تر، حرفه ای تر و سریع تر کار می کنید. بزرگترین خطر نصب لینوکس انتخاب «محل نصب» است.وقتی می خواهید لینوکس خود را کنار ویندوز نصب کنید، فقط یک انتخاب اشتباه می تواند منجر به پاک شدن کامل ویندوز شود. یا مثلا یک حرفه ای می داند که اکثر توزیع ها در زمان نصب در صورت پیدا کردن اینترنت تصور می کنند این اینترنت سریع است و سعی می کنند خودشان را آپدیت کنند ولی در صورتی که این اینترنت به اندازه کافی سریع نباشد می تواند به راحتی یک نصب بیست دقیقه ای را تبدیل به یک نصب چهار ساعته کند، پس بهتر است در پروسه نصب اینترنت سیستم قطع باشد.

پنج شنبه 27 مهر 1391  12:15 AM
تشکرات از این پست
hoseinmos
hoseinmos
کاربر برنزی
تاریخ عضویت : آذر 1389 
تعداد پست ها : 437
محل سکونت : کرمانشاه

کاربردهای لینوکس

کاربردهای لینوکس

 

 

در دو جلسه اول در مورد نرم افزار آزاد و چهار اصل پایه ای آن صحبت کردیم. همینطور گفتیم که استالمن پایه سیستم عاملی آزاد به نام گنو را گذاشت که بعدها با اضافه شدن هسته لینوکس (که توسط لینوس توروالدز- Linus Torvalds- فنلاندی نوشته شده بود)،‌ تبدیل به یکی از هیجان انگیزترین سیستم عامل های جهان شد.

همینطور با مفهوم توزیع آشنا شدیم و از نمونه های مشهوری مثل دبیان، فدورا و اوبونتو نام بردیم. همانطور که دیدیم توزیع ترکیبی است از برنامه های روی یک سی دی یا دی وی دی که می تواند به شکل صحیح هسته لینوکس، ابزارهای مورد نیاز آن و هر چیز دیگری که برای اجرای یک سیستم ‌عامل لازم است را راه ‌اندازی نموده و اکثرا در صورت درخواست شما آنها را بر روی کامپیوتر نصب می کند. همچنین توزیع ها معمولا رابط هایی برای نصب برنامه های دیگر و همچنین چند برنامه برای انجام راحت تنظیمات دارند. مشخص است که مستقل از اینها، هر توزیع معمولا گرافیک و شکل ظاهر منحصر به فرد خود را هم ایجاد می کند.

سایت دیستروواچ که مرجعی برای بررسی همه توزیع های لینوکس است بیش از سیصد توزیع فعال لینوکس را زیر نظر دارد. هر کدام از این توزیع ها با هدف متفاوتی ساخته‌ شده اند و در این درس سعی می کنیم نگاهی به این اهداف بیندازیم.

لینوکس سرور

لینوکس نوعی یونیکس است (یا به عبارت صحیح، گنو/لینوکس یک سیستم عامل مشابه یونیکس است) که از ابتدا با معماری یک سیستم عامل امن، چندکاربره و با توانایی های کار در شبکه طراحی شده است. این سیستم عامل به خاطر عضویت در خانواده یونیکس و همچنین پایداری هسته و قدرت غیرقابل رقابتی که ابزارهای گنو به آن می دادند، بسیار سریع تبدیل به یکی از محبوب ترین سیستم عامل های سرور شد. تا قبل از لینوکس بیشترین سهم از بازار شبکه‌ها در دست شرکت ناول بود اما گنو/لینوکس توانست به سرعت سرورهای ناول را که از نظر تکنولوژی نتوانسته بودند به خوبی خودشان را با اینترنتی که داشت همه گیر می شد هماهنگ کنند کنار بزند و به قدرت بلامنازع سرورهای اینترنت تبدیل شود.

تلاش‌های بعدی اپل و مایکروسافت برای ارائه سرورهای مبتنی بر سیستم عامل های خودشان موفقیت چندانی نداشت. حداقل در زمینه سرورهای اینترنتی، یونیکس ها میدان را به طور کامل در دست گرفته بودند و با گذشت زمان و پیشرفت لینوکس و ظهور شرکت هایی مانند ردهت که نسخه های حرفه ای لینوکس سرور به همراه پشتیبانی کامل ارائه می کردند باعث شد لینوکس سهم بیشتر و بیشتری از اینترنت را تصاحب کند. تخمین های فعلی بیش از ۶۰٪ کل اینترنت را متعلق به سرورهای لینوکس می دانند اما باید اضافه کرد که سهم مایکروسافت تقریبا محدود به سرویس دهنده های کوچک است. این روزها تقریبا تمام سایت های مشهوری که می شناسید (به جز سایت Microsoft) توسط لینوکس راه اندازی می شوند (از گوگل تا آمازون تا فیس بوک تا توییتر تا نارنجی تا یک پزشک).

اما دنیای سرورها فقط محدود به اینترنت نیست. اکثر سیستم های پیچیده دیگر دنیا هم با کامپیوترها کنترل می شوند. گنو/لینوکس در این سیستم ها هم نقش بسیار مهمی دارند. تقریبا صد در صد سیستم های مخابراتی جهان روی یکی از انواع یونیکس (و اکثرا لینوکس) پایه گذاری شده اند و با نگاه به جاهای دیگر هم رد پای لینوکس به وضوح دیده می شود؛ از سازمان امنیت ملی آمریکا گرفته تا پایگاه های پرتاب سفینه های فضایی و سیستم های کنترل ترافیک و کنترل پرواز. کمی آنطرف تر هم می شود از کمپانی‌های فیلمسازی نام برد و این واقعیت که اکثر فیلم های مشهوری که دیده اید (از شرک و فرار جوجه ای گرفته تا مردان سیاه پوش و آواتار و ماتریکس و حتی تایتانیک) روی یک مجموعه کامپیوتری لینوکسی ساخته شده اند. گفته می شود که لینوکس تقریبا ۹۵٪ سرورها و دسکتاپ های کمپانی های بزرگ ساخت انیمیشن و جلوه های ویژه هالیوود را در اختیار دارد. همچین کامیپوترهای مین فریم (Main Frame) که سخت افزارهایی بسیار قوی هستند برای کار بر روی داده های عظیم یا محاسبات بسیار حساس و تقریبا به شکل انحصاری توسط شرکت‌های بسیار عظیم یا دولت‌ها خریداری می‌شوند، یکی دیگر از جاهایی هستند که لینوکس به شکل جدی عرضه اندام می کند.

 

سوپرکامپیوترها
حالا که از مین فریم ها صحبت کردیم، باید جداگانه به نوع خاصی از آن ها هم اشاره کنیم: سوپرکامپیوترها. سوپرکامپیوتر به کامپیوتری گفته می شود که در زمان معرفی در زمینه میزان ظرفیت محاسبه در واحد زمان در دنیا پیشرو باشد. در اصل در هر لحظه سوپرکامپیوترها، سریعترین و قدرتمندترین کامپیوترهای آن تاریخ هستند. این مفهوم از حوالی دهه ۶۰ میلادی مطرح شد و از همان زمان یونیکس ها جولان دهندگان بلامنازع این حوزه بودند. گنو/لینوکس از سال ۱۹۹۹ وارد این میدان شد و با رشدی غیرقابل تصور تا سال ۲۰۱۱ جای خود را روی درصد بسیار زیادی از سوپرکامپیوترهای جهان باز کرد. برای مثال در فهرست ۵۰۰ سوپرکامپیوتر برتر امسال جهان،‌ بیش  از ۹۱٪ کامپیوترها از گنو/لینوکس استفاده می کنند. بعضی توزیع ها به شکل اختصاصی برای کار روی سوپرکامپیوترها بهینه سازی شده‌اند (مثلا AIX ای بی ام) و بعضی سوپرکامپیوترها با کم و زیاد کردن برنامه های مورد نیاز روی یک توزیع معمول (مثل ردهت یا زوزه) به سیستم عامل مورد نظر خود می رسند. نمودار زیر نشان دهنده سلطه مطلق لینوکس در این دنیا است:

جذاب است بگوییم که سریعترین عضو خانواده سوپرکامپیوترهای این لحظه جهان، K computer, SPARC64 VIIIfx 2.0GHz ژاپنی است با سیستم عامل لینوکس، ۷۰۵۰۲۴ هسته و مصرف ۱۲ مگاوات برق و ۱۴۱۰۰۴۸ گیگا حافظه.

 

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

اما چرا اینطور است؟ امسال یعنی سال ۲۰۱۲، لینوکس به راحتی می تواند یک سیستم دسکتاپ کامل با کیفیتی بهتر از بقیه سیستم‌ عامل ها در نظر گرفته شود. لینوکس از تمام سیستم های دیگر امن تر است و استفاده بهتری از منابع می برد. همچنین آزاد است و از نظر فلسفی بالاتر از بقیه اما چرا نتوانسته بازار را فتح کند؟

این بحث جنبه های مختلفی دارد. عبارتی پایه ای وجود دارد که می گوید «برای بررسی موفقیت هر سیستم باید هدف آن را در نظر بگیریم». با این دید اگر هدف شما داشتن یک سیستم عامل پایدار و از نظر معماری کاملا مدرن و بهینه است، لینوکس بهترین انتخاب شما است. اگر هدف شما امنیت در اینترنت است، شکی نیست که لینوکس هنوز بهترین انتخاب است. اما فرض کنید هدف شما استفاده از فایل های آفیس مایکروسافت باشد، اینجا لینوکس می‌تواند با قابلیت خواندن و نوشتن فایل های مایکروسافت توسط آفیس آزاد خود،‌ کار شما را راه بیاندازد اما دیگر بهترین انتخاب نیست. اگر به سراغ بازی بروید لینوکس با اینکه بازی‌های سه بعدی و استراتژیک دارد، اما بدون شک در مقایسه با یک سیستم ویندوزی بازنده است و اگر خواسته شما از کامپیوتر استفاده از Autocad برای نقشه کشی است، لینوکس بدترین انتخاب ممکن است. حرف اصلی در اینجا این است که هدف کاربر مهمترین نکته انتخاب سیستم عامل است. لینوکس شاید از نظر معماری یا فلسفه یا امنیت برتر باشد اما در خیلی جاها کاملا ناکارا است.

یک بحث دیگر،‌ بحث تقدم است. اپل و مایکروسافت تقریبا همزمان شروع به رقابت برای فتح بازار دسکتاپ کردند اما لینوکس سال ها بعد وارد این بازی شد. وقتی شما دیر وارد بازی می شوید،‌ با کسانی طرف هستید که انتخاب هایشان را کرده اند و تغییر عادت مردم کار بسیار سختی است. همه ما با ویندوز کامپیوتر را شروع کردیم و همیشه سوییچ کردن به چیز دیگر برایمان سخت است. علاوه بر این در شرایطی که همه کامپیوترها با ویندوز یا مک فروخته می شوند، کاربران لینوکس تنها کسانی خواهند بود که شخصا آن را روی کامپیوترشان نصب کند. چرخه معیوب وقتی کامل می شود که از آن طرف هم چون همه مردم به ویندوز یا مک عادت دارند هیچ تولید کننده ای سخت افزار خود را با لینوکس عرضه نکند و در نتیجه مردم به عادت هایی که دارند، ادامه بدهند.

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

در حال حاضر با حضور شرکت های بزرگی که سرمایه های بزرگی به دنیای لینوکس دسکتاپ‌ آورده اند، وضعیت در حال پیشرفت است و شرکتی مانند کانونیکال به شکل جدی پیش بینی می‌کند که تا پنج سال آینده تحول بزرگی در تعداد کاربران لینوکس این شرکت- یعنی اوبونتو- ایجاد شده باشد.

در یک نگاه کلی، کاربران دسکتاپ لینوکس را می توان چند دسته کرد:

- خوره های سیستم عامل، شبکه و کامپیوتر و گیک هایی که دوست دارند از یک سیستم عامل قوی استفاده کنند و با زیر دست داشتن ابزارهای گنو یک هسته با معماری مدرن،‌ نهایت استفاده را از کامپیوترشان ببرند.

- معتقدین به فلسفه آزادی و مفاهیم گنو تا جایی که بتوانند از سیستم های باز به جای سیستم های بسته استفاده می کنند.

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

- کاربران حساسی که نیازمند آگاهی از ابزار زیر دستشان هستند هم یک بخش مهم از کاربران لینوکس رومیزی را تشکیل می دهند. برای مثال اگر سازمان جاسوسی اتحاد جماهیر شوروی قرار بود سندی را تایپ کند فکر می‌کنید بین یک لینوکس آزاد که خودش متن آن را خوانده و از کاربری اش مطمئن (برای مثال توزیع لینوکس ستاره سرخ) و نرم افزار آفیس مایکروسافت که روی ویندوزی اجرا می شد که یک شرکت آمریکایی تهیه کرده‌ بود، کدامیک را ترجیح می‌داد؟

- کاربرانی که امنیت و پایداری سیستم هایشان برایشان اهمیت حیاتی دارد. مثلا بورس های جهان که نمی خواهند هیچگاه نگران ویروس باشند یا کامپیوترهای رومیزی کارمندان یک بخش نظامی که آخرین چیزی که می خواهند وقت گذاشتن برای نصب آنتی ویروس در وسط حمله دشمن است.

- کسانی که می خواهند از قابلیت های فنی و معماری پیشرفته گنو/لینوکس استفاده کنند. برای مثال بسیاری از هکرها به خاطر دسترسی آسان به ابزارهای گنو، به سراغ این سیستم ها می آیند.

تصویر زیر آماری از کاربرانی که در اینترنت مشغول گشت زنی هستند و سیستم عامل مورد استفاده آنها را نشان می‌دهد:

 

لینوکس توکار
در نهایت طبقه بندی ای داریم در انگلیسی که امبد (Embeded) نامیده می شود. این را شاید بتوانیم به فارسی «توکار» یا «جاساز» یا «تعبیه» شده ترجمه کنیم. این جا یک میدان بسیار مناسب برای قدرت نمایی لینوکس است.

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

بسیاری از این سیستم ها با لینوکس راه اندازی می شوند چرا که به خاطر آزاد و بازمتن بودن، این امکان هست که با حذف قسمت های غیر مورد نیاز، آن را تا حد ممکن کوچک کرد. بهترین نمونه از سیستم های امبد در اطراف ما گوشی های موبایل اندرویدی هستند که از کرنل لینوکس استفاده می کنند و اگر بخواهیم به سراغ ابزارهای بزرگ برویم شتاب دهنده های ذرات و مریخ نوردها شاید مثال های پرهیجانی باشند.

در این میان هم خیلی چیزها با لینوکس زنده می شوند که ما اصولا آنها را نمی بینیم، مثلا مشهورترین ربات های شیردوش باعث می شوند هر لیوان شیری که می خورید، حاوی لینوکس باشد یا سیستم های کنترل قطارهای تندرو و چراغ های هوشمند کنترل ترافیک، هر حرکت شما در شهر را با لینوکس همراه می‌کنند.


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

دیدیم که لینوکس روی سرورها، سوپرکامپیوترها، کامپیوترهای خانگی و حتی بسیار از ابزارهای اطراف ما در حال اجرا است و لذت بردیم از اینکه بسیاری از جنبه های زندگی روزمره ما به لینوکس آغشته است بدون اینکه حتی متوجه آن باشیم. قبول داریم که این جلسه طولانی بود اما خوشحال باشید چرا که جلسه بعدی قرار است در مورد نصب لینوکس صحبت کنیم که از یک طرف درس را «عملی» تر می کند و از یک طرف پر از عکس و تصویر. لطفا جلسه بعد آماده به سر کلاس بیاید چون قرار است برای اولین بار با یک سیستم لینوکس واقعی آشنا شوید.

پنج شنبه 27 مهر 1391  12:15 AM
تشکرات از این پست
hoseinmos
hoseinmos
کاربر برنزی
تاریخ عضویت : آذر 1389 
تعداد پست ها : 437
محل سکونت : کرمانشاه

سیستم عاملی به نام گنو/لینوکس

سیستم عاملی به نام گنو/لینوکس

 

در آموزش قبل گفتیم که هکری اسطوره ای به نام ریچارد استالمن در اوایل دهه ۸۰، درس را رها کرد و با ایجاد موسسه ای نرم افزاری شروع به تبلیغ مفهوم آزادی در دنیای کامپیوتر کرد. دغدغه اصلی استالمن این بود که مردم باید کنترل کامل ابزاری که از آن استفاده می کنند را شخصا در دست داشته باشند و بتوانند با بررسی، بهبود و به اشتراک گذاشتن نرم افزارها، در خلق دنیایی بهتر و آزادتر سهیم باشند. مشخص است که این کار باید از پایین ترین لایه نرم افزاری شروع شود: سیستم عامل.

 

سیستم عامل آزاد گنو

همانطور که می دانید کامپیوتر از دو بخش سخت افزار و نرم افزار تشکیل شده.

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

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

 

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

‎به دلیل این اهمیت بالای سیستم عامل در کاربری کامپیوتر، استالمن تصمیم گرفت یک سیستم عامل آزاد بنویسد. سیستم عاملی که هر کس  بتواند برای هر کاری که می خواهد از آن استفاده کند، آن را بهبود بخشد و با دیگران به اشتراک بگذارد. مشخص است که این پروژه‌ ای است بسیار بزرگ که سال های سال طول می کشد اما یک هکر واقعی، هیچ وقت نگران وقت نیست و البته هکرهای واقعی، تنها هم نیستند.

‎استالمن و دیگران اسم پروژه خودشان را GNU گذاشتند که به فارسی می توانیم آن را گِنو تلفظ کنیم. آنها بهترین معماری سیستم عامل موجود یعنی معماری UNIX که در آن زمان بر روی کامیپوترهای بزرگ به شکل تجاری و بسته موجود بود را انتخاب کردند و شروع کردند به نوشتن یک سیستم عامل کاملا آزاد براساس آن معماری پیشرفته. براساس این معماری لازم بود تا این چهار جزء تکمیل شوند:

  • کرنل (Kernel) که هسته اصلی سیستم عامل را تشکیل می داد و از آن انتظار می رفت با شناخت سخت افزارها بتواند با آنها ارتباط برقرار کند.
  • محیط توسعه نرم افزار؛ مانند کمپایلرها و کتابخانه های مختلفی که بقیه باید از آنها برای ساخت برنامه در این سیستم عامل جدید استفاده کنند.
  • دستورات عمومی زندگی روزمره مانند کپی فایل، برنامه هایی برای کارهای گرافیکی، پوسته ای متنی برای صادر کردن این دستورات، ابزارهایی برای فرمت کردن دیسک و... .
  • مستندات؛ راهنماهای سیستم عامل و توضیحات متنی پیرامون آن

‎پروژه گنو به سرعت پیش رفت و سه جزء آخر را با کیفیتی باور نکردنی تکمیل کرد. کیفیت نرم افزارهای آزاد تولید شده برای سه بخش آخر در حدی بودند که بسیاری از سیستم عامل های دیگر (بخصوص یونیکسی ها) شروع به استفاده از آنها کردند. شاید برایتان جالب باشد که در حال حاضر نیز سیستم عامل مک نسخه ده که بر روی کامپیوترهای اپل جدید اجرا می شوند در لایه پایینی دارای یونیکسی است که از ترکیب محصول پروژه گنو و یک هسته آزاد به نام BSD ساخته شده است.

 

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

لینوس توروالدز این پروژه را در سال ۱۹۹۱ و به گفته خودش برای تفریح شروع کرده بود و مطمئن بود که هیچ وقت جدی نخواهد شد اما بعد از اینکه آن را با مجوز GPL (همان مجوز آزادی که در درس اول در مورد آن صحبت کردیم) منتشر کرد، تقاضا برای ادامه راه آنقدر زیاد شد که نه فقط سال های بعدی زندگی لینوس و هزاران نفر دیگر صرف تکمیل این هسته شده، که تا امروز هم شغل اصلی او کنترل این پروژه و هماهنگ کردن هزاران نفری است که این هسته را توسعه می دهند.

همراه شدن این هسته قوی و سه جزء دیگر یک سیستم عامل یونیکس که در پروژه گنو در حال پیگیری هستند (محیط برنامه نویسی، ابزارهای عمومی و مستندات)، تشکیل چیزی را دادند که به شکل صحیح باید به آن «سیستم گنو/لینوکس» بگوییم اما بعضی ها در محاوره روزمره آن را به «سیستم عامل لینوکس» یا حتی «لینوکس» کوتاه می کنند هر چند که در نهایت باید بدانیم که «لینوکس» تنها هسته و در نتیجه یکی از چهار جزء اساسی «سیستم عامل گنو/لینوکس» است.

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

 

توزیع ها
حالا که پروژه گنو و هسته لینوکس دست به دست هم داده اند و یک سیستم عامل آزاد خوب ساخته اند، چگونه باید آن را به دست مصرف کننده نهایی رساند؟

می دانیم که نرم افزار آزاد قابل تکثیر است اما دسترسی به سورس یک برنامه یک چیز است و استفاده روزمره از آن یک چیز دیگر. شما برای بوت کردن یک کامپیوتر با گنو/لینوکس سال ۱۹۹۲ باید کرنل را با یکی از ابزارهای گنو به فایل اجرایی تبدیل می کردید. بعد آن را از یک جای بخصوص هارد به بعد روی آن می‌نوشتید. فلگ‌هایی را تنظیم می کردید تا این برنامه بتواند کامپیوتر را بوت کند و خط فرمان را اجرا کند و بعد تک تک برنامه های کاربردی و کتابخانه های نرم افزاری مورد نیاز آنها را جدا جدا باید کمپایل می کردید (تبدیل به فایل اجرایی می کردید) و براساس نظم و استانداردی که یونیکس استفاده می کند روی دیسک می نوشتید و اگر همه چیز درست و دقیق پیش رفته بود، سیستم با گنو/لینوکس بوت می شد. اینکار حتی حالا هم برای یک حرفه ای، یک پروژه جذاب پر از درگیری در تعطیلات عید به حساب می آيد!

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

‎با آمدن سی دی به بازار، فضای ذخیره سازی به ناگهان بسیار زیاد شده بود پس دیستروهای لینوکس هم شروع کردند به استفاده از این فضای عظیم که تازه در اختیارشان قرار گرفته بود. آنها نه فقط هسته لینوکس و ابزارهای گنو که بسیاری برنامه های آزاد دیگر را هم روی توزیع های خود عرضه می کردند. مثلا ممکن بود یک نفر تصمیم بگیرد که یک محیط کار گرافیکی، برنامه های آفیس آزاد (لیبره آفیس)، برنامه چت و فایرفاکس را در توزیع خود بگنجاند. در صورتی که شما این سی دی را در کامپیوتر می گذاشتید و آن را بوت می کردید با لینوکسی روبرو می شدید که این برنامه ها در آن نصب بود. یا ممکن بود یک توزیع دیگر تصمیم بگیرد با حذف آفیس از نصب پیش فرض، برنامه ادیت تصویر قوی تری به سی دی اضافه کند و به جای فایرفاکس هم، گوگل کروم را نصب نماید و تم و بک گراوند را هم از آبی به قهوه ای تغییر دهد.

‎علاوه بر انتخاب بسته ها و تنظیمات عمومی، توزیع ها گاهی برنامه های مخصوص به خودشان را هم به کل سیستم عامل گنو/لینوکس اضافه می کنند. این برنامه ها معمولا برای تنظیمات راحت تر سیستم یا حذف و اضافه برنامه ها یا آپدیت برنامه های نصب شده بکار می روند.

‎از مشهورترین توزیع ها می شود به ردهت (RedHat) و دبیان (Debian) اشاره کرد که بسیاری از توزیع های مشهور دیگر از آنها منشعب شده اند. برای مثال اوبونتو که این روزها یکی از پرطرفدارترین لینوکس های موجود است (یا به عبارت صحیح تر یکی از مشهورترین توزیع های گنو/لینوکس‌ موجود) از دبیان انشعاب یافته و فدورا (Fedora) هم به نوبه خود شاخه ای از ردهت به شمار می رود.

پنج شنبه 27 مهر 1391  12:16 AM
تشکرات از این پست
دسترسی سریع به انجمن ها