لینوکس ، یک سیستم عامل قدرتمند، پایدار و رایگان است و هم اکنون توسط شرکت ها و سازمان های متعددی از سراسر جهان پشتیبانی و حمایت می شود.
این سیستم عامل به صورت متن باز ارائه می شود و بدین ترتیب برنامه نویسان و دانشجویان به راحتی میتوانند کدهای آن را تغییر دهند.
لینوکس یک سیستم عامل رایگان، سریع، پایدار،قابل اطمینان و انعطاف پذیر است که بر روی طیف وسیعی از کامپیوترها همانند کامپیوترهای شخصی، ایستگاههای کاری، سرویس دهنده ها و مسیریاب ها استفاده می شود.
در ابتدا لینوکس برای پردازنده های x86 شرکت اینتل طراحی شده بود ولی امروزه لینوکس پردانده های اینتل،مک،اسپارک،آلفا و سایر سکوهای سخت افزاری بکار می رود.
بطور کلی لینوکس یک سیستم عامل چند کاربره و چند منظوره است و بدلیل چند کاربره بودن، کاربران متعددی می توانند به طور همزمان به آن متصل شوند.
با خاصیت چند برنامه ای نیز امکان اجرای همزمان برنامه های متعدد فراهم می شود.
بطور معمول انواع مختلف لینوکس، سرویس دهنده های متنوعی برای سرویس وب، پست الکترونی، سرویس نام دامنه و ...
ارائه می دهند که از قدرت، کارایی سرعت و پایداری مناسبی برخوردارند.لینوکس ردهت یکی از معروفترین انواع لینوکس بشمار می رود و قدرت و انعطاف پذیری کاربردی استگاههای کاری یونیکس را به کامپیوترهای شخصی آورده و مجموعه کاملی از برنامه های کاربردی و محیط های گرافیکی کارآمد را ارئه می دهد.
محیط های گرافیکی مورد استفاده در ردهت دو محیط قدرتمند GNOME و KDE هستند که هر یک از آنها براحتی قابل تنظیم و پیکربندی بوده و برای مدیریت سیستم, برنامه ها.
فایلها .شبکه و غیره بکار می روند.
شروع داستان لینوکس
در سال 1991 در حالی که جنگ سرد رو به پایان میرفت و صلح در افق ها هویدا میشد، در دنیای کامپیوتر، آینده بسیار روشنی دیده میشد.
با وجود قدرت سختافزارهای جدید، محدودیت های کامپیوترها رو به پایان میرفت.
ولی هنوز چیزی کم بود ...
و این چیزی نبود جز فقدانی عمیق در حیطه سیستم های عامل.
DOS، امپراطوری کامپیوترهای شخصی را در دست داشت.
سیستم عامل بیاستخوانی که با قیمت 50000 دلار از یک هکر سیاتلی توسط بیل گیتز (Gates Bill) خریداری شده بود و با یک استراتژی تجاری هوشمند، به تمام گوشههای جهان رخنه کرده بود.
کاربران PC انتخاب دیگری نداشتند.
کامپیوترهای اپل مکینتاش بهتر بودند.
ولی قیمت های نجومی، آن ها را از دسترس اکثر افراد خارج میساخت.
خیمهگاه دیگر دنیای کامپیوترها، دنیای یونیکس به خودی خود بسیار گرانقیمت بود.
آنقدر گرانقیمت که کاربران کامپیوترهای شخصی جرات نزدیک شدن به آن را نداشتند.
کد منبع یونیکس که توسط آزمایشگاه های بل بین دانشگاه ها توزیع شده بود، محتاطانه محافظت میشد تا برای عموم فاش نشود.
برای حل شدن این مسئله، هیچیک از تولیدکنندگان نرمافزار راه حلی ارائه ندادند.
بنظر میرسید این راه حل به صورت سیستم عامل MINIX ارائه شد.
این سیستم عامل، که از ابتدا توسط اندرو اس.
تانناوم (Andrew S.
Tanenbaum) پروفسور هلندی، نوشته شده بود به منظور تدریس عملیات داخلی یک سیستم عامل واقعی بود.
این سیستم عامل برای اجرا روی پردازندههای 8086 اینتل طراحی شده بود و بزودی بازار را اشباع کرد.
بعنوان یک سیستم عامل، MINIX خیلی خوب نبود.
ولی مزیت اصلی آن، در دسترس بودن کد منبع آن بود.
هر کس که کتاب سیستم عامل تاننباوم را تهیه میکرد، به 12000 خط کد نوشته شده به زبان C و اسمبلی نیز دسترسی پیدا میکرد.
برای نخستین بار، یک برنامهنویس یا هکر مشتاق میتوانست کد منبع سیستم عامل را مطالعه کند.
چیزی که سازندگان نرمافزارها آن را محدود کرده بودند.
یک نویسنده بسیار خوب، یعنی تاننباوم، باعث فعالیت مغزهای متفکر علوم کامپیوتری در زمینه بحث گفتگو برای ایجاد سیستم عامل شد.
دانشجویان کامپیوتر در سرتاسر دنیا با خواندن کتاب و کدهای منبع، سیستمی را که در کامپیوترشان در حال اجرا بود، درک کردند و یکی از آن ها بینوس توروالدز نام داشت.
تولد سیستم عامل جدید
در سال 1991 لینوس بندیکت توروالدز (Linus Benedict Torvalds) دانشجوی سال دوم علوم کامپیوتر دانشگاه هلسینکی فنلاند و یک هکر خود آموخته بود.
این فنلاندی 21 ساله عاشق وصله پینه کردن محدودیت هایی که سیستم را تحت فشار قرار میدادند.
ولی مهمترین چیزی که وجود نداشت یک سیستم عامل بود که بتواند نیازهای حرفهایها را برآورده نماید.
MINIX خوب بود ولی فقط یک سیستم عامل مخصوص دانشآموزان بود و بیشتر به عنوان یک ابزار آموزشی بود تا ابزاری قدرتمند برای به کارگیری در امور جدی.
در این زمان برنامهنویسان سرتاسر دنیا توسط پروژه گنو (GNU) که توسط ریچارد استالمن (Richard Stallman) آغاز شده بود، تحریک شده بودند.
هدف این پروژه ایجاد حرکتی برای فراهم نمودن نرمافزارهای رایگان و در عین حال با کیفیت بود.
استالمن خط مشی خود را از آزمایشگاه معروف هوش مصنوعی دانشگاه MIT با ایجاد برنامه ویرایشگر emacs در اواسط و اواخر دهه 70 آغاز نمود.
تا اوایل دهه 80، بیشتر برنامهنویسان نخبه آزمایشگاه های هوش مصنوعی MIT جذب شرکت های نرمافزاری تجاری شده بودند و با آن ها قراردادهای حفظ اسرار امضا شده بود.
ولی استالمن دیدگاه متفاوتی داشت.
وی عقیده داشت بر خلاف سایر تولیدات، نرمافزار باید از محدودیت های کپی و ایجاد تغییرات در آن آزاد باشد تا بتوان روز به روز نرمافزارهای بهتر و کارآمدتری تولید نمود.
با اعلامیه معروف خود در سال 1983 پروژه GNU را آغاز کرد.
وی حرکتی را آغاز کرد تا با فلسفه خودش به تولید و ارائه نرمافزار بپردازد.
نام GNU مخفف GNU is Not Unix است.
ولی برای رسیدن به رویای خود برای ایجاد یک سیستم عامل رایگان، وی ابتدا نیاز داشت تا ابزارهای لازم برای این کار را ایجاد نماید.
بنابراین در سال 1984 وی شروع به نوشتن و ایجاد کامپایلر زبان C گنو موسوم به GCC نمود.
ابزاری مبهوتکننده برای برنامهنویسان مستقل.
وی با جادوگری افسانهای خود به تنهایی ابزاری را ایجاد نمود که برتر از تمام ابزارهایی که تمام گروه های برنامهنویسان تجاری ایجاد کرده بودند قرار گرفت.
GCC یکی از کارآمدترین و قویترین کامپایلرهایی است که تاکنون ایجاد شده است.
تا سال 1991 پروژه GNU تعداد زیادی ابزار ایجاد کرده بود ولی هنوز سیستم عامل رایگانی وجود نداشت.
حتی MINIX هم لایسنس شده بود.
کار بر روی هسته سیستم عامل گنو موسوم به HURD ادامه داشت ولی به نظر نمیرسید که تا چند سال آینده قابل استفاده باشد.
این زمان برای توروالدز بیش از حد طولانی بود ...
در 25 آگوست 1991، این نامه تاریخی به گروه خبری MINIX از طرف توروالدز ارسال شد:
از: لینوس بندیکت توروالدز
به : گروه خبری MINIX
موضع: بیشتر چه چیزی را میخواهد در MINIX ببینید؟
خلاصه: نظرخواهی کوچک در مورد سیستم عامل جدید من
با سلام به تمام استفادهکنندگان از MINIX من در حال تهیه یک سیستم عامل رایگان فقط به عنوان سرگرمی و نه به بزرگی و حرفهای GNU برای دستگاههای 386 و 486 هستم.
این کار از آوریل شروع شده و در حال آماده شدن است.
من مایلم تا نظرات کاربران را در مورد چیزهایی که در MINIX دوست دارند یا ندارند، جمعآوری کنم.
زیرا سیستم عامل من حدوداً شبیه آن است.
مانند ساختار سیستم فایل مشابه و چیزهای دیگر ...
من اکنون bash نسخه 1.08 و GCC نسخه 1.40 را به آن منتقل کردهام و به نظر میرسد که کار میکند.
من در عرض چند ماه چیزی آزمایشی درست کردهام و مایلم بدانم که کاربران بیشتر به چه قابلیتهایی نیاز دارند؟
من از هر پیشنهادی استقبال میکنم.
ولی قول نمیدهم همه آنها را اجرا کنم.
لینوس
همانطور که در این نامه پیداست، خود توروالدز هم باور نمیکرد که مخلوقش آنقدر بزرگ شود که چنین تحولی در دنیا ایجاد کند.
لینوکس نسخه 1.0 در اواسط سپتامبر 1991 منتشر شد و روی اینترنت قرار گرفت.
شور و اشتیاقی فراوان حول مخلوق توروالدز شکل گرفت.
کدها دانلود شده، آزمایش شدند و پس از بهینهسازی به توروالدز بازگردانده شدند.
لینوکس نسخه 2.0 در پنجم اکتبر به همراه اعلامیه معروف توروالدز
آماده شد:
آماده شد: از: لینوس بندیکت توروالدز به: گروه خبری MINIX آیا شما از روزهای زیبای MINIX 1.1 محروم شدهاید؟
هنگامی که مردها مرد بودند و راهاندازهای دستگاه خود را خودشان مینوشتند؟ آیا شما فاقد یک پروژه زیبا هستید و میمیرید تا سیستم عاملی داشته باشید تا بتوانید آنرا مطابق با نیازهای خود درآورید؟
اگر اینگونه است، این نامه برای شما نوشته شده است.
همانطور که ماه پیش گفتم من در حال کار بر روی یک سیستم عامل رایگان مشابه MINIX برای کامپیوترهای 386 هستم.
این سیستم عامل اکنون بجایی رسیده است که قابل استفاده است و مایل هستم که کدهای منبع را در سطح گستردهتر پخش نمایم.
این نسخه 2.0 است ولی من موفق شدهام که نرمافزارهای compress , GUN-sed , GNU – Make, GCC, Bash و غیره را تحت آن اجرا کنم.
کدهای منبع این پروژه را میتوانید از آدرس nic.funet.
fi با آدرس 128.214.6.100 در دایرکتوری pub OS/linux پیدا کنید.
این دایرکتوری همچنین دارای چند فایل README و تعدادی باینری قابل اجرا تحت لینوکس است.
تمام کدهای منبع ارائه شده است زیرا هیچ یک از کدهای MINIX در آن استفاده نشده است.
سیستم را میتوانید همانطور که هست کامپایل و استفاده کنید.
کدهای منبع باینریها را هم میتوانید در مسیر pub GNU پیدا کنید.
لینوکس نسخه 3.0 پس از چند هفته آماده شد و تا دسامبر، لینوکس به نسخه 10.0 رسید.
هنوز لینوکس فقط چیزی کمی بیشتر از یک فرم اسکلت بود.
این سیستم عامل فقط دیسکهای سخت AT را پشتیبانی میکرد و ورود به سیستم نداشت و مستقیماً به خط فرمان بوت میشد.
نسخه 11.0 خیلی بهتر شد.
این نسخه از صفحه کلیدهای چند زبانه پشتیبانی میکرد، دیسکهای فلاپی و کارتهای گرافیکی EGA, VGA هرکولس و ...
نیز پشتیبانی میشدند.
شماره نسخهها از 12.0 به 95.0 و 0.96 افزایش پیدا کرد و ادامه یافت.
بزودی کد آن بوسیله سرویسدهندهای FTP در فنلاند و مناطق دیگر، در سرتاسر جهان منتشر شد.
مقایسه و توسعه بزودی توروالدز با مقایسههایی از طرف اندروتاننباوم، معلم بزرگی که MINIX را نوشته بود، مواجه شد.
تاننباوم برای توروالدز مینویسد: "من برین نکته تاکید دارم که ایجاد یک هسته یکپارچه در سال 1991 یک اشتباه پایهای بود.
خدا را شکر که شما شاگرد من نیستید، و اگر نه چنین طرحی نمره بالایی نمیگرفتید." توروالدز بعداً پذیرفت که این بدترین نکته در توسعه لینوکس بوده است.
تاننباوم یک استاد مشهور بود و هر چه که میگفت واقعیت داشت.
ولی وی در مورد لینوکس اشتباه میکرد.
توروالدز کسی نبود که به این سادگیها پذیرای شکست باشد.
تاننباوم همچنین گفته بود: "لینوکس منسوخ شده است".
اکنون نوبت حرکت نسل جدید لینوکس بود.
با پشتیبانی قوی از طرف اجتماع لینوکس، توروالدز یک پاسخ مناسب برای تاننباوم فرستاد: "شغل شما استاد دانشگاه و محقق بودن است و این بهانه خوبی برای برخی مغز خرابکنیهای MINIX است".
و کار ادامه یافت.
بزودی صدها نفر به اردوگاه لینوکس پیوستند.
سپس هزاران نفر و سپس صدها هزار نفر، لینوکس دیگر اسباب بازی هکرها نبود.
با پشتیبانی نرمافزارهای پروژه GNU، لینوکس آماده یک نمایش واقعی بود.
لینوکس تحت مجوز GPL قرار داده شد.
با این مجوز همه میتوانستند کدهای منبع لینوکس را به رایگان داشته باشند، بر روی آنها مطالعه کرده و آنها را تغییر دهند.
دانشجویان و برنامهنویسان آن را قاپیدند.
و خیلی زود تولیدکنندگان تجاری وارد شدند.
لینوکس به خودی خود رایگان بود و هست.
کاری که این تولیدکنندگان انجام دادند، کامپایل کردن بخشها و نرمافزارهای مختلف و ارائه آن بصورت یک فرمت قابل توزیع همانند سایر سیستم عاملها بود، تا مردم عادی نیز بتوانند از آن استفاده کنند.
اکنون توزیعهایی مانند ردهت، دبیان و زوزه دارای بیشترین سهم کاربران در سرتاسر جهان هستند.
با رابطهای گرافیکی کاربر جدید مانند KDE و GNOME توزیعهای لینوکس در بین مردم بسیار گسترش یافتند.
همچنین اتفاقات جالبی با لینوکس رخ میدهد.
در کنار PC، لینوکس به روی اکثر پلاتفورم ها منتقل شده است.
لینوکس تغییر داده شد تا کامپیوتر دستی شرکت com3 یعنی palmpilot را اجرا نماید.
تکنولوژی کلاستر کردن این امکان را بوجود آورد تا بتوان تعداد زیادی از ماشینهای لینوکس را به یک مجموعه واحد پردازشی تبدیل نمود.
یک کامپیوتر موازی.
در آوریل 1996 محققین آزمایشگاههای ملی لوس آلاموس از 68 کامپیوتر مبتنی بر لینوکس برای پردازش موازی و شبیهسازی موج انفجار اتمی استفاده کردند.
ولی بر خلاف ابر کامپیوترهای دیگر، هزینه آنها بسیار ارزان تمام شد.
ابر کامپیوتر خود ساخته آنها با تمام تجهیزات و سختافزارها 152000 دلار هزینه در برداشت و این یک دهم هزینه یک ابر کامپیوتر تجاری است.
این ابر کامپیوتر به سرعت 16 بیلیون محاسبه در ثانیه دست یافت و به رتبه 315 ام این ابر کامپیوتر جهان دست پیدا کرد.
و صد البته یکی از پایدارترین آن ها بود.
پس از سه ماه از آغاز فعالیت، هنوز بوت نشده بود.
بهترین موردی که امروزه برای لینوکس وجود دارد، طرفداران متعصب آن هستند.
هنگامی که یک قطعه سختافزاری جدید ارائه میشود، هسته لینوکس برای استفاده از آن تغییر داده میشود.
برای مثال هنگام ارائه پردازنده 64 بیتی شرکت AMD هسته به سرعت چند هفته برای کار با آن آماده شد.
اکنون لینوکس بر روی تمام انواع خانوادههای سختافزاری موجود اعم از Alpha, MAC, PC و انواع سختافزارهای درونهای قاب اجراست که آن را برای استفاده در ماشینآلات صنعتی و آلات و ادواتی که نیاز به پردازش کامپیوتری دارند، بسیار مناسب نموده است.
لینوکس با همان فلسفه و هدفی که در سال 1991 ایجاد شد، وارد هزاره جدید شده است.
توروالدز، هوز یک انسان ساده است.
بر خلاف بیل گیتش، او یک میلیاردر نیست.
پس از اتمام مطالعاتش وی به آمریکا رفت تا با شرکت Transmeta همکاری نماید.
پس از انجام یک پروژه فوق سری که توروالدز یکی از اعضای فعال بود، ترانسمتا پردازنده cruise را به بازار ارائه کرد.
توروالدز هنوز پرطرفدارترین و مشهورترین برنامهنویس جهان است.
در حال حاضر توروالدز، ترانسمتا را ترک نموده و با حمایت شرکتهای بزرگ به طور تمام وقت بر روی لینوکس کار میکند.
پس از یک دهه لینوکس امروز امروزه لینوکس بیش از یک دهه توسعه را پشت سر گذاشته است و یکی از سریعالتوسعهترین سیستمهای عامل به شمار میرود.
از چند کاربر انگشت شمار در سالهای 1991 و 1992 امروزه میلیونها کاربر از لینوکس استفاده میکنند.
IBM که زمانی بزرگترین دشمن جماعت open source به شمار میرفت، اکنون سرمایهگذاری عظیمی در زمنیه توسعه راه حلهای open source تحت لینوکس نموده است.
در حال حاضر تعداد توسعهدهندگانی که برای افزایش قابلیتهای لینوکس تلاش میکنند، روز به روز افزایش مییابد.
امروزه تعداد زیادی از شرکتها و موسسات حرفهای تجاری، پشتیبانی از محصولات مبتنی بر لینوکس را بر عهده گرفتهاند.
اکنون دیگر استفاده لینوکس در محیطها اداری، پذیرفتن ریسک نیست.
از نظر قابلیت اطمینان و پایداری و همچنین حفاظت در برابر انواع ویروسها چیزی بهتر از لینوکس وجود ندارد.
با تلاش شرکتهای بزرگی مانند ردهت استفاده از لینوکس در محیطهای تجاری توسعه فراوان یافته و اکنون تعداد زیادی از شرکتهای کوچک و بزرگ در حال استفاده از سرویسدهندهها و ایستگاههای کاری مبتنی بر لینوکس هستند.
گسترش لینوکس روی میزی (Desktop Linux): بزرگترین ایرادی که از لینوکس گرفته میشد چه بود؟
قبلاً محیط تمام متنی لینوکس، بسیاری از کاربران را از استفاده کردن از آن بر حذر میداشت.
با اینکه در استفاده از محیط متنی کنترل کامل سیستم در اختیار شماست.
ولی این محیط اصلا برای کاربران عادی سیستمهای کامپیوتری مناسب نیست.
محیطهای گرافیکی که بر پایه X- window وجود داشتند نیز پاسخگوی امکاناتی که سیستم عاملهای گرافیکی مانند ویندوز برای کاربران خود ارائه میکردند، نبودند.
ولی از چند سال گذشته این وضعیت در حال تغییر بوده است.
اکنون محیطهای گرافیکی حرفهای مانند KDE و GNOME تصویر لینوکس را کامل کردهاند.
این محیطهای گرافیکی اکنون بسیار کاربرپسند و قدرتمند شدهاند و وجود این سیستمهاست که امروزه کاربران عادی نیز میتوانند از لینوکس استفاده کنند.
لینوکس در جهان سوم ورود لینوکس به کشورهای جهان سوم تحولی ایجاد نموده است.
قبل از وجود لینوکس کشورهای جهان سومی در زمینه کامپیوتر در سطح بسیار پایین تری قرار داشتند.
هزینه سختافزارها بسیار پایین آمده بود ولی هزینه نرمافزار برای این گونه کشورها همچنان کمرشکن بود.
این امر باعث شد تا در بسیاری از این کشورها کپی غیرمجاز نرمافزارها گسترش پیدا کند که باعث میلیاردها دلار خسارت سالیانه میشود.
یکی از عمدهترین دلایل این کار پایین بودن درآمد سرانه در این کشورهاست.
هنگامی که مجموع درآمد سرانه سالیانه بیش از 200 تا 300 دلار نیست، هیچگاه امکان خرید یک سیستم عامل 100 دلاری وجود نخواهد داشت.
طلوع لینوکس و سایر تولیدات باز متن، این وضعیت را تغییر داده است.
این امکان وجود دارد تا بتوان لینوکس را در کامپیوترهای قدیمی 486 و پنتیوم که اکنون در کشورهای توسعه یافته به تاریخ پیوستهاند ولی هنوز در کشورهای در حال توسعه از آنها استفاده میشود، اجرا نمود.
همچنین استفاده از نرمافزارهای رایگان متن باز گسترش یافته تا جلوی هزینههای سرسامآور نرمافزاری این کشورها را بگیرد.
امروزه در کشورهای آسیایی، آفریقایی و آمریکای لاتین استفاده از لینوکس و نرمافزارهای متن باز گسترش فراوانی یافته و با استفاده از خصلت ذاتی تغییر پذیری لینوکس، برای استفاده از زبانهای ملی این کشورها سفارشی شده است.
امروزه مستندات لینوکس به اکثر زبانهای زنده جهان ترجمه شدهاند.
از میزکار تا ابر کامپیوترها هنگامی که توروالدز لینوکس را ایجاد نمود، این مخلوق جدید، فقط یک اسباب بازی تازه برای هکرها بود.
ولی از زمان دستگاههای 386 که نخستین هسته لینوکس بر روی آنها اجرا میشد، لینوکس راه درازی را طی نموده است.
یکی از مهمترین استفادههای امروزی لینوکس استفاده از آن در پردازشهای سنگین موازی در ابر کامپیوترهاست.
امروزه اکثر ابر کامپیوترهایی که در جهان ساخته میشوند، از لینوکس به عنوان سیستم عامل خود استفاده میکنند.
و همچنان پیشرفت حرکت لینوکس از یک پروژه هکری تا جهانی شدن یک انقلاب شگفتانگیز است.
پروژه GNU که در اوایل دهه 1980 توسط ریچارد استامن شروع شد، توسعه نرمافزارهای باز متن را رهبری نمود.
پروفسور اندروتانباوم و سیستم عامل MINIX او مطالعه سیستم عاملها را از حالت تئوری به عملی تبدیل نمود و در نهایت همت و تلاش توروالدز منجر به تولد لینوکس شد.
امروزه لینوکس دیگر یک پروژه هکری به شمار نمیرود بلکه یک حرکت جهانی است که توسط میلیونها نفر برنامهنویس متن باز و شرکتهای بزرگی مانند IBM حمایت میشود.
لینوکس در تاریخ کامپیوتر به عنوان یکی از شگفتانگیزترین محصولات تلاش بشری باقی خواهد ماند.
توکس، پنگوئن محبوب لینوکس نشان لینوکس یک پنگوئن است.
بر خلاف سایر سیستم عاملهای تجاری، این نشان زیاد جدی نیست!
توکس نشانگر وضعیت بدون نگرانی حرکت لینوکس است.
این نشان تاریخچه بسیار جالبی دارد.
لینوکس در ابتدا فاقد هر گونه نشانی بود.
هنگامی که توروالدز برای تعطیلات به استرالیا رفته بود، در دیداری که از یک باغ وحش داشت، هنگامی که میخواست با یک پنگوئن بازی کند، پنگوئن دست وی را گاز گرفت و همین ایدهای شد تا از پنگوئن به عنوان نشان لینوکس استفاده شود.
نگاهی به قابلیتهای لینوکس چه بخواهیم چه نخواهیم، کامپیوتر جزیی از زندگی روزمره ما شده است.
حتماً شما تا به حال کلیپی را با کامپیوتر تماشا کردهاید، از آهنگی با کیفیت دیجیتال لذت بردهاید، متنی را تایپ کردهاید یا شبی را به گشت و گذار در دنیای اینترنت یا چت رومها به صبح رساندهاید!
بستر اجرایی همه این برنامهها، برنامهای مادر، به نام سیستم عامل است.
به احتمال زیاد شما یکی از نسخههای ویندوز مایکروسافت مانند ویندوز 98 یا XP را استفاده میکنید.
آیا تا به حال برایتان پیش نیامده که کامپیوترتان خود به خود Rest شود یا یک روز صبح که کامپیوتر ادارهتان را روشن میکنید.
ویندوز بالا نمیآید.
آیا تا به حال به فکر امتحان کردن سیستم عامل دیگری افتادهاید؟ یک سیستم عامل با کارایی بیشتر: یک سیستم عامل امن، چند منظوره، قابل اعتماد و کاربردی به معنای واقعی کلمه، البته مقصود تولیدات شرکت انحصار طلب مایکروسافت یا سیستم عامل صنعتی یونیکس (UNIX) و یا سیستم گرانقیمت اپل مکینتاش (Apple Macintosh) نیست.
ما میخواهیم از سیستم عامل دیگری صحبت کنیم: سیستم عامل آزاد لینوکس linux اگرچه لینوکس خالق مشخصی ندارد، ولی این لینوس توروالدز (linus Torvalds) دانشجوی فنلاندی بود که در 215 آگوست 1991، این راه را آغاز کرد.
او از همان ابتدا رویای ایجاد یک سیستم عامل open source یا متن باز با کارایی بالا، ضریب اطمینان فوقالعاده و امنیت باور نکردنی را در سر میپروراند، صحبت از من باز با کارایی بالا، ضریب اطمینان فوقالعاده و امنیت باور نکردنی را در سر میپروراند.
صحبت از متن باز بودن لینوکس به میان آمد؛ کسانی که تا اندازهای با زبانهای برنامهنویسی آشنایی دارند میدانند که سیستم عاملهایی مانند ویندوز مایکروسافت که خود را در دسترس همگان قرار نمیدهند و آنچه که کاربران خریداری میکنند، تنها برنامه قابل اجرایی است که هیچ اطلاعاتی از جزئیات درونی کارکرد سیستم عامل را نمیتوان از آن فهمید.
اما در مورد لینوکس وضع به گونه دیگری است؛ به این صورت که sorce یا کد لینوکس برای کلیه علاقهمندان و برنامهنویسان باز و قابل تغییر و بهینهسازی است.
لینوس توروالدز هسته لینوکس موسوم به کرنل را تحت امتیاز Gpl: GNU General public license منتشر کرد، طبق این امتیاز که در برابر امتیاز انحصارطلبانه کپیرایت (copy right) کپی لفت (copy left) نامیده میشود، کاربران و برنامهنویسان اجازه هر گونه دخل و تصرف در کد برنامهها، استفاده مجدد از کل یا بخشی از برنامهها در برنامهای دیگر و فرش یا پخش مجدد برنامهها را دارند؛ به شرط اینکه ماهیت باز متن برنامهها تحدید نشود و تمام حقوق کپی لفت به خریدار نیز منتقل شود.
به گفته توروالدز فراهم کردن این امکان که لینوکس آزادانه در اختیار علاقهمندان قرار گیرد، قطعاً درستترین تصمیم زندگیام بوده است.
همه دست به دست هم میدهند تا لینوکس را کاراتر نمایند و هر یک نیز به نوعی نتیجه کوشش خود را میگیرند.
این برگ برندهای است که لینوکس در برابر سیستم عاملهای رقیب در دست دارد.
شما به واسطه همکاری با این پروژه آزاد چون قطرهای به دریای پهناور لینوکس وارد میشوید.
لینوس توروالدز اولین هسته لینوکس را ایجاد کرد، چرا که مانند تمامی برنامهنویسان ابتدای دهه نود میلادی، او نیز فقدان یک سیستم عامل متن باز را برای پیشرفت پروژه گنو (GNU) احساس میکرد.
پروژه گنو یک جنبش نرمافزاری بینالمللی جهت ایجاد یک سیستم شبیه یونیکس کاملاً آزاد است که ریچارد استالمن (استاد سابق دانشگاه MIT) در سال 1984 آن را پایهگذاری کرده بود.
هدف استالمن از آغاز این پروژه تحت لوای بنیاد نرمافزارهای آزاد (FSF: Free Software Foundation) ایجاد شرایطی بود که در آن هیچ کس نیازی به پرداخت پول برای خرید و استفاده از نرمافزار نداشته باشد.
در حقیقت اگر این اتفاق نمیافتاد استفاده شایسته از کامپیوتر در انحصار عده کم متمولین قرار میگرفت.
هسته لینوکس به دست دانشجویان و برنامهنویسانی از سراسر جهان پرورده شد و در کنار سایر برنامههای پروژه گنو به صورت توزیعهایی با کاربرد عام یا خاص در اختیار عموم قرار گرفت.
از آنجایی که بسیاری از نرمافزارهای مهم درون سیستم عامل لینوکس از محصولات پروژه گنو است نام صحیح این سیستم عامل گنو/ لینوکس است.
آنچه که من و شما به عنوان یک توزیع لینوکس از آن استفاده میکنیم در واقع نمونهای است از یک هسته واحد که لینوکس نامیده میشود، به همراه ابزارهایی که در پروژه متن باز گنو تولید شدهاند.
تعداد توزیعهای کنونی لینوکس دقیقاً مشخص نیست ولی با مراجعه به سایت www.linux.org میتوانید فهرستی از حدود 250 توزیع ثبت شده لینوکس را ببینید.
در واقع تفاوت توزیعهای مختلف لینوکس تنها در پشتیبانی و ابزارهایی است که به همراه هسته عرضه میشوند.
از جمله مهمترین توزیعهای لینوکس میتوان توزیعهای ردهت (Redhat) دبیان (Debian)، مندریک (Mandrake)، زوزه (Suse)، اسلک ور(Slackware) و جنتو (Gentoo) را نام برد.
مسئلهای که مطرح میشد این بود که آیا متن باز بودن لینوکس و فقدان سازنده خاص برای آن باعث کندی پیشرفت آن نمیشود؟
روند قضایا نشان داد که این گونه نبود، چرا که همانطور که لینوس توروالدز نیز گفته است، اغلب برنامهنویسان خوب برای کسب مستقیم درآمد برنامه نمینویسند، بلکه هدف آنها از این کار رسیدن به لذت خلق کردن است، لذتی که با دیدن حاصل کار آنها را فرا میگیرد.
شاهد این ماجرا همکاری جمع دوستانه چهارصد هزار نفری پروژه گنو برای توسعه لینوکس است در حالی که جمع برنامهنویسان مایکروسافت از ده هزار نفر بیشتر نیست.
البته بد نیست بدانید که بخش قابل توجهی از انرژی برنامهنویسان پروژه گنو صرف خنثیسازی کارشکنیهای تولیدکنندگان نرمافزار میشود.
به عنوان نمونه شرکت مایکروسافت از در اختیار قرار دادن جزئیات شیوه پارتیشنبندی ـ NTFS یکی از روشهای قرار دادن اطلاعات روی هارد دیسک ـ به عموم خودداری میکند.
در نتیجه برنامهنویسان پروژه لینوکس مجبور شدند این شیوه را به روش آزمون و خطا و مهندسی معکوس کشف کنند.
به همین دلیل است که اکنون کلیه بستههای نرمافزاری مجانی که با پارتیشن NTFS کار میکنند، فقط امکان خواندن از آن را برای کاربر فراهم مینمایند.
و توانایی نوشتن را با هشدار و به مسئولیت کاربر در اختیار او میگذارند.
از طرفی دیگر عدم همکاری تولیدکنندگان سختافزار با برنامهنویسان پروژه گنو/ لینوکس نیز باعث شده است که همه بار تولید راهانداز سختافزار بر دوش برنامهنویسان پروژه گنو بیفتد.
اتفاقی بعد با تو میجنگند.
ولی در نهایت پیروزی از آن توست و به جرأت میتوان گفت که لینوکستا یک قدمی پیروزی پیش آمده است، امروزه حدود 70 درصد از کل اطلاعات اینترنت بر روی سرویسدهندههای تحت سیستم عامل لینوکس قرار دارد.
شرکت اوراکل oracle، مطرحترین تولیدکننده برنامههای ایجاد و مدیریت بانکهای اطلاعاتی، آخرین نسخه برنامه خود را فقط برای اجرا بر بستر لینوکس عرضه کرده است.
این همه اطمینان به لینوکس برای چیست؟
برای آنکه جهان امروز بیش از هر چیز جویایی امنیت است، امنیتی که در لینوکس به واسطه دیواره آتش و لایههای امنیتی مختلف فراهم شده است.
تقریباً هیچ ویروسی برای لینوکس شناخته نشده است و کرمهای رایانهای (برنامههای مخرب) نهایتاً توانایی از بین بردن محتویات دایرکتوری خانگی یک کاربر ـ نه کل سیستم ـ را دارند.
این طور نیست که لینوکس فاقد هر گونه اشکال امنیتی باشد، ولی متن باز بودن آن باعث میشود بسیاری از اشکالات امنیتی، پیش از ایجاد خسارت و در مراحل توسعه و برنامهنویسی کشف و اصلاح شوند.
در صورتی که در سیستم عامل ویندوز برای مشخص شدن ضعفهای امنیتی باید هزینه سنگین ناشی از خسارتهای آنها را بپردازیم.
از دیگر مزایای لینوکس میتوان به پایداری بسیار بالا به دلیل طراحی درست هسته، عدم از کار افتادن کل سیستم به علت اشکال در یک قسمت از آن، سرعت بالای سیستم عامل، توانایی اجرای همزمان چند وظیفه از سوی چند کاربر، چند کاربری بودن به معنای واقعی و قابلیت اجرا بر روی سختافزارهای مختلف را نام برد.
سیستم عامل لینوکس حتی این امکان را دارد که از آن بتوان به صورت یک سیستم زنده و قابل حمل استفاده کرد، یعنی میتوان آن را بدون نیازی به نصب و از روی یک سی دی اجرا کرد، نام یکی از توزیعهای این لینوکس زنده، ناپیکس (knopixx) است.
نسخهای فارسی از ناپیکس ساخته شده که نام آن شبدیکس است.
نشان لینوکس یک پنگوئن است.
این پنگوئن تنبل نشسته که توکس نام دارد، مظهر پایداری لینوکس است.
این نشان داستان جالبی دارد.
لینوکس در ابتدا هیچ علامتی نداشت.
هنگامی که لینوس توروالدز برای تعطیلات به استرالیا رفته بود، موقع بازی با یک پنگوئن ، پنگوئن دست او را گاز گرفت!
همین ایدهای شد تا از به عنوان نشان لینوکس استفاده کند.
لینوکس در ایران حدود دو سال است که دولت جمهوری اسلامی ایران پروژهای را برای فارسیسازی لینوکس و نهایتاً تولید سیستم عامل ملی تدوین کرده است.
تصویب این طرح به پیشنهاد مرکز فناوری اطلاعات و ارتباطات پیشرفته شریف (AICTC) و با مدیریت این مرکز انجام شد.
این پروژه از پنج پروژه زیر تشکیل شده است: 1ـ توسعه نرمافزارهای منبع آزاد 2ـ تدوین استراتژی استفاده از نرمافزارهای منبع آزاد 3ـ پروژه لینوکس فارسی 4ـ توسعه کاربردیهای لینوکس 5ـ تشکیل انجمن open source ایران طبق برنامه زمانبندی شده نیمه سال 2006 میلادی باید شاهد اتمام این پروژه باشیم!
لینوکس یکی از زیباترین دستاوردهای بشری لینوکس در سایه همکاری و تبادلات علمی هزاران نفر در سرتاسر جهان ایجاد شده و توسعه یافته است.
گستردگی این مشارکت به قدری است که سیستم عامل لینوکس را زیباترین دستاورد همکاری جمعی بشر نامیدهاند.
فرهنگی که بر جامعه لینوکس و متن باز حاکم است فرهنگ یاری، اشتراک اطلاعات و تلاش برای بهبود هر چه بیشتر محصولات است.
هر کس میخواهد با این سیستم عامل کار کند، باید تمامی دیدگاهها و عقاید قبلی خود را درباره نرمافزار و سیستم عامل کنار بگذارد و با یک دیدگاه جدید وارد دنیای لینوکس شود، چون لینوکس در جهانی با فرهنگ متفاوت زندگی میکند.
مفهوم User/group در لینوکس User: نمایانگر هویت یک فرد در سیستم می باشد.
هر User در لینوکس دارای یک شماره UID می باشد.
کاربر اصلی سیستم (مدیر سیستم) دارای UID شماره صفر می باشد.
Group: هر User در گروه خاصی قرار می گیرد که با GID شناخته می شود.
هر کاربر می تواند متعلق به یک یا چند گروه باشد.
بوسیله دستور id می توانید از مشخصات گروه خود مطلع شوید.
بوسیله دستور newgrp می توانید گروه جاری خود را عوض کنید.
البته تنها در صورتی که عضو گروه جدید باشید.
توجه کنید که دو نفر نمی توانند دارای یک UID یکسان باشند اما می توانند در یک گروه قرار گیرند.
یک User می تواند عضو گروه های متعددی باشد.
دستور Groups به شمان نشان می دهد که یک کاربر در چه گروه هایی عضویت دارد.
انواع فایل در لینوکس با اجرای دستور Is – I می توان فهمید که نوع فایل چیست؟
بسته به نوع فایل اولین حرف ستون اول یکی از علائم زیر است.
- = regular file d = directory c = character special file (/de/v ttyp.) b = block special file (de/v fd.) l = symbolic link اولین حرف ستون اول خروجی دستور Is – I نوع فایل را مشخص می کند.
فایل های ویژه در /dev فایل های ویژه، فایل هایی هستند که از طریق آن ها می توان با ابزارهای سیستم ارتباط برقرار کرد.
فایل های ویژه به جای فیلد size دارای major, minor هستند.
کرنل در لیستی تناسب بین major, minor های مختلف و device های سخت افزاری متناسب با آن ها را نگهداری می کند.
برای ساختن یک فایل ویژه دستور mknod را می توان استفاده کرد.
Mknod newdev b 76 8 نکته مهم شماره های major, minor برای device های مختلف مشخص و رزرو شده می باشد.
سطوح دسترسی در لینوکس یک فایل، متعلق به کاربر است که آن کاربر را صاحب فایل می گوییم.
متعلق به یک گروه است (به احتمال زیاد همان گروهی که صاحب فایل در آن عضویت دارد).
هر فایل دارای یک سری اجازه های دسترسی است لینوکس برای کاربران سه نوع سطح دسترسی قارار داده است: سطح دسترسی Read: این سطح دسترسی تنها اجازه خواندن فایل یا لیست گرفتن از دایرکتوری را می دهد.
سطح دسترسی Write: این سطح دسترسی اجازه نوشتن بر روی فایل و یا ایجاد یک فایل در یک دایرکتوری را می دهد.
سطح دسترسی Execute: این سطح دسترسی اجازه اجرای یک فایل یا داخل شدن در یک دایرکتوری را می دهد.
طرح بندی فایل سیستم لینوکس چندین طرح بندی را پشتیبانی می کند.