کاوشگر لینوکس

آموزش لینوکس و معرفی نرم افزارهای کاربردی مرجع باز (open source)

کاوشگر لینوکس

آموزش لینوکس و معرفی نرم افزارهای کاربردی مرجع باز (open source)

نرم‌افزار آزاد یا باز‌متن چیست؟

نرم‌افزار با لوازم خانه، همانند میز، صندلی و یا سایر اشیای مصنوع تفاوت‌های عمده‌ای دارد. مهمترین تفاوت نرم‌افزار آن است که همگان طریقه‌ی ساخت و نحوه‌ی کارکرد صندلی را می‌دانند، حال آنکه نحوه‌ی ساخت و چگونگی کارکرد یک نرم‌افزار بدون دردست داشتن کد متن (Source Code) آن مشخص نمی‌باشد. شرکت‌های رایانه‌ای ما را وادار کرده‌اند که به نرم‌افزار نیز همانند اشیای مصنوع نگاه کنیم. آن‌ها نرم‌افزارهایی را به ما می‌فروشند، که ما حق دانستن طریقه‌ی کار آن‌ها را نداریم، از آنجایی که کد متن نرم‌افزار در اختیار ما نمی‌باشد. ما حق نداریم این‌نرم‌افزارها را بهبود بخشیم. ما حق نداریم این نرم‌افزارها را برای مصرف خودمان شخصی‌سازی کنیم. این وضعیتی است که نرم‌افزارهای انحصاری و غیر آزاد به وجود آورده‌اند. وضعیتی که ما کاربران فقط حق استفاده از یک نرم‌افزار بدان گونه که سازنده‌ی آن در نظر گرفته، را داریم. در ابتدای پیدایش صنعت رایانه، در اواخر دهه‌ی ۵۰، ۶۰ و حتی اوایل دهه ۷۰ میلادی، دانشمندان آن زمان علم رایانه، ترسی نداشتند که کدشان را در اختیار دیگران قرار دهند. در آن زمان‌ها، این دانشمندان، که پایه‌گذاران فن‌آوری‌های امروز هستند؛ همگی در جهت اعتلای دانش جامعه تلاش می‌کردند و پیشرفت علم را به منافع شخصی خود ترجیح می‌دادند. با گشترش صنعت رایانه، عده‌ای در صدد آن برآمدند که بتوانند از این میان، تجارت‌هایی بسازند. این‌ها برخلاف نسل قبلشان، از در اختیار گذاشتن کدهای خود به دیگران امتناع ورزیدند، و کد را اسرار شخصی خود تلقی کردند. بدین ترتیب بود که به مرور زمان فرهنگ همکاری میان دانشمندان علوم رایانه از بین رفت؛ و شرکت‌های رایانه‌ای اقدام به عرضه‌ی بسته‌هایی سیاه به عنوان نرم‌افزار نمودند. اما عده‌ای حاضر نشدند که این وضع را بپذیرند، و از دست رفتن آزادی‌هایشان در زمینه‌ی نرم‌افزاری که خریده‌اند را قبول کنند. از این جمله ریچارد استالمن یکی از متخصصین و برنامه‌نویس‌های دانشگاه MIT بود. او که با چشم خویش، شاهد از دست رفتن آزادی‌هایش بود، تصمیم گرفت که به مبارزه با نرم‌افزارهای انحصاری بپردازد. وی در سال ۱۹۸۴، بنیاد نرم‌افزار آزاد را پایه‌گذاری کرد. هدف اولیه‌ی این بنیاد، ساخت سیستم‌عاملی کاملا آزاد بود. برای این منظور پروژه‌ی گنو تاسیس گردید. در آن زمان قرار شد که GNU مخفف GNU's Not Unix، سیستم عاملی شبیه یونیکس باشد، که بتواند تمامی قابلیت‌ها و امکانات سایر یونیکس‌ها را در اختیار کاربرانش قرار دهد. پروژه‌ی گنو، بسیاری از برنامه‌های لازم برای ساخت چنین سیستمی را نوشت، و در سال ۱۹۹۱ با اضافه شدن هسته‌ی لینوکس به سایر نرم‌افزارهای گنو، سیستم‌عامل گنو/لینوکس عملا قابل استفاده گردید. در ابتدای تاسیس بنیاد نرم‌افزار آزاد، اکثر رسانه‌های جمعی، هدف این سازمان را خیالی واهی می‌پنداشتند. آنان می‌پرسیدند که "چگونه یک نفر به تنهایی می‌تواند سیستم عامل بنویسد؟" اما استالمن تنها نماند. در طول سا‌ل‌های بعد، تعداد کثیری از کسانی که عقایدی مشترک با استالمن داشتند به او پیوستند، و پروژه‌ی گنو تبدیل به پروژه‌ای جهانی متشکل از خیل عظیمی برنامه‌نویس گردید و تبدیل به سمبلی برای سایر پروژه‌های نرم‌افزار آزاد شد. پس از آن دانشگاه برکلی تصمیم گرفت که نسخه‌ای آزاد از سیستم‌عامل یونیکس خود با نام BSD را عرضه کند. این کار پس از مشکلات بسیار در سال ۱۹۹۴ انجام شد، و بازماندگان آن سیستم عامل، با نام‌های Free BSD ، Net BSD و Open BSD امروزه همچنان سیستم‌هایی بسیار محبوب و با قابلیت می‌باشند. در ۱۹۹۲، پروژه‌ی XFree 86 با هدف ساخت نسخه‌ای آزاد از X Window System بنیان نهاده شد و چند سال بعد بنیاد آپاچی (Apache) ، نیز، که امروزه تولید کننده‌ی محبوبترین نرم‌افزار کارگزار وب در جهان است، شروع به کار کرد. اما نرم‌افزار آزاد چیست؟ نرم‌افزار آزاد نرم‌افزاری است که کاربران آن مشخصا حقوق زیر را داشته باشند: ۰. آزادی در اجرای برنامه، برای هر مقصودی. ۱. آزادی مطالعه چگونگی کارکرد برنامه، و وفق آن با نیازهای خود. دسترسی به کد متن پیش‌شرط این مورد می‌باشد. ۲. آزادی پخش مجدّد کپی‌هایی از برنامه تا بتوانید به همسایه خود کمک کنید. ۳. آزادی بهبود برنامه، و انتشار اصلاحات به عموم، تا تمام جامعه بهره برد. دسترسی به کد مرجع پیش‌شرط این مورد می‌باشد. در سال ۱۹۹۸، عده‌ای که عقیده داشتند واژه‌ی نرم‌افزار آزاد مناسب نمی‌باشد، شروع به استفاده از واژه‌ی باز متن کردند. تفاوت این گروه با طرفداران پروژه‌ی گنو و نرم‌افزار آزاد در این است که به عقیده‌ی این گروه نرم‌افزار انحصاری اشکالی ندارد، اما نرم‌افزار متن باز صرفا بهتر است، حال آنکه به عقیده‌ی طرفداران نرم‌افزار آزاد، نرم‌افزار انحصاری غلط است و باعث عقب ماندن جامعه می‌گردد. گروهی نیز به تازگی برای آنکه خود را به هیچ یک از این کمپ‌ها نسبت ندهند،‌ از عبارت Free/Libre Open Source Software یا FLOSS استفاده می‌کنند که مجموعه‌ای از همه‌ی واژه‌های توصیف کننده‌ی نرم‌افزار آزاد می‌باشد.

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

به نظر میرسد واژه بهتر یا بدتر بودن را در مورد یک نرم افزار نمی توان به سادگی و بدون تعمق و تدبر در قابلیتها و کیفیت نرم افزار و خصوصا سازگاری آن با مشخصات مورد نیاز کاربران بومی یک منطقه جغرافیائی از جمله پشتیبانی از زبان و کاراکترهای بومی بررسی کرد و این مهم باید برعهده کارشناسان و اهل فن قرار گیرد تا ضمن بررسی قابلیتها به نقاط ضعف هم پرداخته شود . در کشور ما ایران نسخه و توزیع های متعددی از لینوکس عرضه شده و هر یک در جای خود نقاط قوت و ضعفی دارند اما در نسخ جدید گردآوری شده توسط شرکتهای توزیع کننده لینوکس به نظر میرسد که شرکت ردهت با ارائه نسخه 9 بلافاصله پس از نسخه 8 و پرش از روی نسخه های 8.1 و 8.2 و غیره که هیچگاه ارائه نگردید ، نتوانسته آنگونه که باید و شاید ارتقاء لازم را در برنامه و خود سیستم عامل ارائه نماید تا بتوان گفت کار جدید یا شاهکاری قابل توجه خلق گردیده است . در سایر توزیعهای لینوکس منجمله SUSE و DEBIAN و SLAKEWARE و LINDOWS و MANDRAKE نیز پشتیبانی از زبانهای بومی خصوصا فارسی با مشکل جدی روبروست و بیشتر سعی گردآورندگان اهتمام به اموری همچون زیبا کردن رابط کاربر و افزودن قابلیتهای محاوره ای و کاستن نیاز کاربران به استفاده از دستورات خط فرمان متنی و پشتیبانی هرچه بیشتر از سخت افزارهای موجود در بازار متمرکز شده است و در این مقوله نیز در اکثر موارد موفقیتهای محدودی کسب گردیده و نیاز به کار بیشتر و دقیقتر همچنان وجود دارد . در هرحال اگر ملاک و معیار و معیاری برای ماایرانیان وجودداشته باشد تا بخواهیم یکی از این مجموعه های موجود را برگزینیم مطمئنا مهمترین مبنای آن وجود رابط کاربر ساده و برنامه های کاربردی مفید و پشتیبانی از زبان مادری ما یعنی زبان فارسی است . براین مبناء و بابررسی مجموعه های مختلف لینوکس بنظر میرسد که MANDRAKE لینوکس در نسخ جدید خود یعنی نسخه 9 و 9.1 بسیار موفق بوده و از جمله بهترین توزیع های موفق لینوکس موجود در بازار نرم افزار ایران بشمار می آید . امیدوارم هرچه زودتر شاهد توزیع لینوکس فارسی یعنی همان سیستم عامل ملی مورد علاقه خودمان در کشور عزیزمان ایران باشیم .

سیستم عامل ملی بر مبنای لینوکس جایگزین ویندوز می شود

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

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

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

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

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

فعالیت‌های مطالعاتی و اجرایی سیستم عامل ملی از چه زمانی آغاز شده و تاکنون چه مراحلی را طی کرده است؟

   بر اساس مقدمات مذکور. مطالعاتی در سال 1380 آغاز شد تا ابعاد مسئله را بشکافد که اگر ما بخواهیم چنین کاری را انجام دهیم، حد و حدود آن چیست؟ بر اساس مطالعات، تعریف مسئله تقریبا روشن شد. بعد از مشخص شدن حدود مسئله، پروژه وارد مرحله اجرایی شد. در کنار دبیرخانه لازم بود یک سیستم مدیریت فنی هم وجود داشته باشد. برای این منظور، با مرکز فناوری اطلاعات و ارتباطات پیشرفته شریف ( وابسته به دانشگاه صنعتی شریف) قراردادی منعقد شد تا مسائل فنی و هدایت پروژه را به لحاظ استانداردهای فنی دنبال کنند و یک کمیته راهبردی هم از افراد متخصص تشکیل شد تا هدایت کلان پروژه را بر عهده بگیرد. بنابراین در اینجا دو دسته مسئله مطرح می‌شود: یکی مسائل مربوط به اینکه مجموع فعالیت چیست و پروژه چه مراحلی را پی می‌گیرد و دوم، مسائل مربوط به بعد فنی پروژه.

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

   این طرح کلان در کمیته راهبردی بررسی و تصویب شده است و انجام پروژه بر اساس طرح کلان پیش خواهد رفت.

   در این پروژه، زیر پروژه‌هایی هم تعریف شدند و روش این است که زیر پروژه‌ها به شرکت‌ها و گروه‌های متفاوتی سپرده شوند تا آنها را انجام دهند. پس از انجام و آزمون این فعالیت یکپارچه سازی آنها توسط همان مرکز مسئول بعدفنی کار ( مرکز فناوری اطلاعات و ارتباطات پیرشفته شریف) انجام می‌گیرد.

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

لطفا در خصوص زیر پروژه‌های طرح سیستم عامل ملی توضیح بیشتری ارائه فرمایید؟

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

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

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

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

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