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

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

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

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

نصب بسته های rpm در لینوکس

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

توجه داشته باشید که برای نصب یا برداشتن یک بسته نرم افزاری در لینوکس باید ابتدا بعنوان کاربر ریشه root وارد سیستم شوید . البته بسیاری از توزیعهای لینوکس با تهیه برنامه گرافیکی مناسب در محیطهای دسکتاپ لینوکس این مشکل را با پرسیدن رمز کاربر ریشه در ابتدای اجرای برنامه نصب یا برداشتن  بسته ها برطرف نموره اند .

شکل کامل این دستور در خط فرمان عبارتست از :

$ rpm -i [option] package

package نام بسته rpm است. این بسته ممکن است در مسیر جاری روی هاد دیسک شما قرار داشته باشد، یا در روی درایو CD-ROM و یا روی سایت FTP .

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

همراه با گزینه i هنگام نصب می‌توانید از گزینه‌های زیر استفاده نمایید:

-vv- این گزینه اطلاعات Debugging را هنگام نصب چاپ میکند. با این گزینه تمام آنچه را هنگام نصب رخ میدهد خواهید دید.

- h- فرایند نصب بسته را بصورت تعدادی کاراکتر # نشان میدهد. این کاراکترها در کنار هم تشکیل یک نوار پیشروی (Progress bar) را میدهند که برای کسب اطلاعات از وضعیت نصب بسته مفید است.

- percent- درصد پیشرفت نصب بسته را حین فرایند نصب چاپ میکند.

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

- force-- با استفاده حتی اگر بسته در حال نصب قدیمی تر از بسته نصب شده باشد، نصب خواهد شد. این کار فایلهای جدیدتر را با فایلهای قدیمی تر جایگزین خواهد کرد. این گزینه مشابه استفاده از گزینه های oldpackage، rplacefiles و replacepkgs است.

- nodeps-- بسته های مورد نیاز برا نادیده گرفته و بسته را نصب میکند. البته ممکن است بسته ای که اینگونه نصب شود، کار نکند.

- ignorearch-- با استفاده از این گزینه اگر بسته با معماری پردازنده شما سازگاری نداشته باشد نیز نصب خواهد شد.

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

مثال زیر چگونگی نصب یک بسته را نشان می‌دهد :

$ rpm -i audiofile-devel-0.6-1.i386.rpm

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

$ rpm -ivv audiofile-devel-0.6-1.i386.rpm
D: counting packages to install
D: found 1 packages
D: looking for packages to download
D: retrieved 0 packages
D: New Header signature
D: Signature size: 160
...

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

$ rpm -ivh audiofile-devel-0.6-1.i386.rpm
audiofile-devel [###################################]100%

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

-خطای بسته های مورد نیاز (Package dependencies errors) : در صورتی که بسته‌هایی که نصب می‌کنید، برای کارکرد صحیح به بسته‌های دیگری نیاز داشته باشند، این خطا را دریافت خواهید کرد. برای حل این مشکل کافی است که بسته‌های مورد نیاز را نیز تهیه کرده و قبل از نصب بسته اصلی آنها را نصب کنید. البته همانطور که در بالا شرح داده شد، می‌توانید rpm را مجبور کنید تا بسته های مورد نیاز را بررسی نکند، ولی این کار به هیچ وجه توصیه نمی شود زیرا بسته نصب شده کار نخواهد کرد.

- خطاهای کاربر غیر ریشه : در صورتی که در حالت کاربر ریشه نباشید و دستور rpm را با گزینه i اجرا کنید، این خطاها را دریافت خواهید کرد. برای رفع این مشکل کافی است با استفاده از دستور su بصورت کاربر ریشه وارد شوید.

ارتقا بسته های rpm

گزینه ارتقا یا U بسیار شبیه به گزینه نصب بسته جدید می‌باشد. با این تفاوت که ابتدا بسته قدیمی را از روی سیستم برداشته و سپس بسته جدید را نصب میکند. به روش زیر توجه کنید :

$ rpm -U [options] package

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

$ rpm -U --oldpackage audiofile-devel-0.5-3.i386.rpm

در صورتی که بسته جدیدتر نصب باشد، از روی سیستم برداشته شده و بسته قدیمی تر نصب خواهد شد.

نکته : از گزینه U می‌توانید چه برای نصب جدید بجای گزینه i و چه برای ارتقا استفاده نمایید. گزینه U همیشه کار خواهد کرد. ولی گزینه i در صورتی که بسته قبلا نصب شده باشد، کار نخواهد کرد.

حذف بسته های rpm

در صورتی که دیگر به یک بسته نیازی ندارید و میخواهید برای آزاد شدن فضای دیسک سخت خود آنرا از روی سیستم برداشته و حذف نمایید، باید از گزینه e استفاده نمایید. روش این کار به صورت زیر است :

$ rpm -e package

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

$ rpm -q --whatrequires package

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

بدلیل اینکه معمولا در این موارد خروجی طولانی خواهد بود و از صفحه ترمینال فراتر خواهد رفت، می‌توانید خروجی را از طریق لوله بندی به یک برنامه دیگر و یا یک فایل هدایت نمایید. به مثال زیر توجه کنید:

$ rpm -evv xpilot | more

در مثال بالا خروجی rpm به برنامه more هدایت می‌شود و از طریق آن می‌توانید خروجی را بصورت صفحه به صفحه مطالعه نمایید. برای این کار می‌توانید از کلید Space استفاده کنید.

سایر گزینه هایی که می‌توانید همراه با گزینه e برای نادیده گرفتن شرایطی که مانع حذف شدن یک بسته می‌شوند، استفاده کنید به شرح زیر هستند :

nodeps-- بسته را بدون توجه به سایر بسته هایی که به آن نیاز دارند حذف میکند.

nodcripts-- بسته را بدون اجرای هر گونه اسکریپتی حذف میکند.

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

$ rpm -evv –test xpilot | more

در صورتی که همه چیز به خوبی پیش رفت، می‌توانید دستور خود را بدون گزینه test اجرا نمایید تا بسته از روی سیستم برداشته شود.

بدست آوردن اطلاعات از بسته های rpm

با استفاده از گزینه q می‌توانید اطلاعات با ارزشی را از بسته های rpm دریافت نمایید. این اطلاعات می‌تواند از لیست بسته های نصب شده تا اطلاعات جزئی هر بسته متغییر باشد. روش استفاده از این گزینه به صورت زیر است :

$ rpm -q [options]

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

qa- لیستی از بسته‌های نصب شده را نمایش می‌دهد.

qf file- بسته‌ای که یک فایل خاص به آن تعلق دارد را چاپ می‌کند. بجای file باید مسیر کامل فایل مورد نظر را تایپ کنید و در صورتی که فایل در دایرکتوری جاری قرار دارد، تنها کافی است که نام فایل را تایپ کنید.

qi- اطلاعات جزئی یک بسته را چاپ می‌کند.

qR- اجزای مورد نیاز بسته را چاپ می‌کند.

ql- لیست فایلهایی که در بسته قرار دارند را چاپ می‌کند.

qd- مستنداتی که در بسته وجود دارند را چاپ می‌کند.

qc- فایلهای پیکربندی که در بسته قرار دارند را چاپ می‌کند.

همانطوری که در بالا گفته شد برای لیست کردن تمام بسته های موجود روی کامپیوترتان می‌توانید از گزینه qa استفاده کنید. بدلیل اینکه این لیست بسیار طولانی خواهد بود، می‌توانید خروجی آنرا به یک فایل هدایت نموده و یا با استفاده از دستور grep بسته های مورد تیازتان را پیدا کنید. برای روشن شدن مطلب به مثالهای زیر توجه کنید :

$ rpm -qa > myPackages
$
rpm -qa | grep -i php
phpdoc-4.0.6-133
mod_php4-4.1.0-104
mod_php4-core-4.1.0-104

در مثال اول خروجی دستور به فایلی به نام myPackages هدایت می‌شود. این فایل یک فایل متنی است که می‌توانید آنرا در یک ویرایشگر متنی مانند gedit یا vi مشاهده کنید. در مثال دوم، خروجی دستور به فیلتر grep هدایت شده و خواسته می‌شود تا نامهای حاوی php نمایش داده شوند. نتیجه وجود سه بسته نصب شده است.

در صورتی که به اطلاعات جزئی در مورد یک بسته خاص نیاز داشتید، می‌توانید از گزینه qi استفاده کنید. به مثال زیر توجه کنید :

$ rpm -qi phpdoc
Name : phpdoc Relocations: (not relocateable)
Version : 4.3.2 Vendor: Red Hat, Inc.
Release : 133
Build Date:
Sat 23 Mar 2002 11:30:27 AM PST
Install date : Thu 12 Jun 2003
11:55:13 AM PDT
Build Host: devel.redhat.com
Size : 8592660 License: the PHP Group
Description : Documentation to PHP as HTML, PDF and RTF.

برای کسب اطلاعات از محتوای یک بسته، باید از گزینه ql استفاده کنید.مثال زیر محتویات بسته phpdoc را نمایش میدهد :

$ rpm -ql phpdoc
/usr/share/doc/packages/phpdoc/manual/x61684.html
/usr/share/doc/packages/phpdoc/manual/x61688.html
/usr/share/doc/packages/phpdoc/manual/x61694.html
/usr/share/doc/packages/phpdoc/manual/x61720.html
...

آیا دوست دارید بدانید که همراه یک بسته خاص چه مستنداتی ارائه شده است؟ کافی است از گزینه qd استفاده کنید. با این کار می‌توانید به محل مستندات یک برنامه به راحتی پی ببرید. به مثال زیر توجه کنید :

$ rpm -qd ppp
/usr/share/doc/packages/ppp/FAQ
/usr/share/doc/packages/ppp/README
/usr/share/doc/packages/ppp/README.cbcp
/usr/share/doc/packages/ppp/README.linux
...

بیشتر بسته های نرم‌افزاری به همراه خود چندین فایل پیکربندی دارند . برای پیدا کردن آنها باید از گزینه qc استفاده کنید. به مثال زیر توجه کنید :

$ rpm -qc ppp
/etc/pam.d/ppp
/etc/ppp/chap-secrets
/etc/ppp/options
/etc/ppp/pap-secrets
...

در صورتی که نیاز دارید بدانید که یک فایل یا برنامه خاص به کدام بسته تعلق دارد، می‌توانید از گزینه qf استفاده نمایید. به مثال زیر توجه کنید:

$ rpm -qf /usr/bin/wvdial
wvdial-1.52-136

بررسی صحت نصب بسته های rpm

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

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

$ rpm -V ppp
S.5......T c /etc/ppp/chap-secrets
S.5......T c /etc/ppp/pap-secrets

خروجی مثال بالا نشان می‌دهد که از بسته ppp (نرم‌افزاری که برای ایجاد تماس dialup با اینترنت به کار می‌رود) پس از نصب۲ تغییر در فایلهایش داشته است. حرف S نشاندهنده تغییر در اندازه فایل، عدد ۵ نشان دهنده تغییر در ترکیب MD5 فایل، حرف T نشاندهنده تغییر در زمان تغییر فایل و حرف c نشان می‌دهد که این فایلها فایلهای پیکربندی هستند. با بررسی فایلها متوجه می‌شویم که تغییرات اعلام شده، تغییراتی است که خود من برای تنظیم برنامه ppp انجام داده‌ام. پس بسته ppp مشکلی ندارد. علائم نشاندهنده ای که با این گزینه با آنها برخورد خواهید کرد عبارتند از :

5 : نشانگر تغییر در MD5 checksum است. نشاندهنده ایجاد تغییراتی در محتوای یک فایل میباشد.

S : نشانگر تغییر در اندازه فایل میباشد.

L : نشانگر این است که فایل تبدیل به یک لینک ظاهری (Symbolic) به فایل دیگری شده است.

T : زمان تغییر فایل را نشان میدهد.

D : فایل مورد نظر تبدیل به یک فایل مخصوص ابزار (Device Special File) شده است.

U : کاربر مالک فایل تغییر کرده است.

G : گروه کاربری فایل تغییر کرده است.

M : مالکیت یا مجوزهای دسترسی به فایل تغییر کرده است.

انواع بسته های نرم افزاری در محیط لینوکس

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

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

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

درک نامگذاری و فرمت بسته های نرم‌افزاری

وقتی بسته ای را از اینترنت دانلود می‌کنید، می‌بینید که از یک نام، تعدادی شماره، نقطه، gz و tar تشکیل شده است. خوب اینها چه معنی دارند؟ ابتدا این اعداد و حرفها پیچیده به نظر می‌رسند در صورتی که اگر برایتان شرح داده شوند، بسیار ساده هستند. پس از مدتی به این شیوه نامگذاری عادت خواهید کرد. بیشتر بسته های نرم‌افزاری لینوکس از قاعده نامگذاری GNU استفاده می‌کنند. مثال‌های زیر فرمت‌های گوناگون بسته های نرم‌افزاری را نشان می‌دهد :

mycoolapp-4.2.3.i386.rpm
mycoolapp-4.2.3.tar.gz
mycoolapp-4.2.3.src.tar.gz
mycoolapp-4.2.3.bin.SPARC.tar.gz
mycoolapp-4.2.3.bin.ELF.static.tar.gz

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

خط نخست یک بسته نرم‌افزاری rpm را نشان می‌دهد. rpm مخفف Redhat Package Manager است. i386 که قبل از rpm قرار دارد، نشان دهنده این است که بسته حاوی نرم‌افزار اجرایی برای کامپیوترهای PC معمولی است. فرمت rpm که ابتدا توسط Redhat ارائه شد، اکنون تبدیل به یک استاندارد برای پخش بسته های نرم‌افزاری لینوکس شده است. ببیشتر توزیع‌های لینوکس مانند ردهت، زوزه، ماندریک و... از این سیستم بسته بندی نرم‌افزار استفاده می‌کنند.

rpm در مقابل کد منبع

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

- RPM: نصب نرم‌افزارها با استفاده از بسته‌های rpm بسیار آسان است. برای نصب یک بسته rpm شما نیازی به دانستن اطلاعاتی در مورد makefile ها و کامپایلرها ندارید. همانطور که در بالا نیز اشاره کردم، ابزارهایی نیز برای مدیریت این بسته‌ها فراهم آمده است. هنگامی که یک بسته rpm را نصب می‌کنید، ابزارهای rpm سایر نرم‌افزارهای احتمالی مورد نیاز این بسته را نیز بررسی کرده و در صورت نیاز به نصب بسته دیگری به شما اعلام میکنند.

- کد منبع (Source Code) : برخی اوقات تا ایجاد بسته های rpm یک نرم‌افزار، مدتی طول می‌کشد. در این مواقع باید از کد منبع آن استفاده کنید. همچنین می‌توانید با ایجاد تغییراتی در کد منبع نرم‌افزار، آنرا برای خود مناسبتر کنید. اکثر کاربران حرفه ای لینوکس کار کردن با کد منبع را ترجیح می‌دهند.

خوب به مثال بالا برمی‌گردیم. در دوخط بعدی بسته‌هایی قرار دارند که حاوی کد منبع نرم‌افزار هستند. هـمـانطور که مـی‌بـینید، این بسته‌ها توسط دستور tar آرشیو شده (tar) و توسط دستور gzip فشرده شده‌اند (gz). شما از این دو فرمان برای باز کردن و خارج کردن از حالت فشردگی بسته‌های نرم‌افزاری استفاده خواهید کرد.

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

استفاده از انواع گوناگون آرشیوها و فرمت مستندات

بسیاری از بسته‌های نرم‌افزاری که به یک توزیع خاص (مانند ردهت، SuSE، Debian و...) وابسته نیستند از روش tar/gzip برای فشرده سازی و آرشیو کردن فایل‌ها استفاده می‌کنند. البته ممکن است در سایتهای FTP لینوکس به فرمت‌های دیگری نیز بر بخورید. لازم به ذکر است که برخی از این فایلها مستندات همراه نرم‌افزار بوده و کد منبع یا اجرایی نیستند.

جدول زیر فرمت های مختلف فایلی که شما هنگام چرخش در سایتهای FTP لینوکس مشاهده خواهید کرد .برای اینکه بدانید یک فایل دارای چه فرمتی است، می‌توانید از دستور file استفاده کنید. به مثال زیر توجه کنید :

$ file telnet.htm
telnet.htm: HTML document text

فرمت

پسوند

شرح

Gzip file

gz or .z

این فایل با استفاده از ابزار GNU gzip فشرده شده است. این فایل توسط ابزارهای gzip یا gunzip باز خواهد شد.

Tar File

tar

این فایل با استفاده از دستور tar آرشیو شده است. این فرمان برای ایجاد یک بسته از چند فایل بکار می‌رود. برای باز کردن این آرشیو از خود دستور tar استفاده می‌شود.

Bzip2

bz2

این فایل با استفاده از برنامه bzip2 فشرده شده است. میزان فشرده سازی این برنامه از gzip بیشتر است.

Tar/compressed

taz or .tz

این فایل توسط دستور compress یونیکس فشرده شده است.

Linux Software Map

lsm

این فایل حاوی متنی است که محتویات یک آرشیو را نشان می‌دهد.

Debian binary package

deb

این فایل یک بسته نرم‌افزاری است که توسط ابزارهای لینوکس debian ایجاد شده است.

Redhat Package Manager

rpm

این فایل بسته نرم‌افزاری است که با استفاده از ابزارهای rpm ایجاد شده است و غیر از ردهت، توسط توزیع کنندگان دیگر لینوکس هم استفاده می شود.

بررسی لینوکس فارسی شبدیکس به نقل از سایت technotux.com

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

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

در ادامه این پروژه و با هدف گسترش یک سیستم‌عامل کاملا فارسی و البته قانونی در ایران، شرکت چاپار شبدیز تصمیم به ارائه نخستین توزیع فارسی سیستم‌عامل لینوکس که مبتنی بر FarsiKDE است، نمود. با اینکه در سالهای اخیر استفاده از سیستم‌عامل لینوکس در ایران گسترش فراوانی یافته است، ولی هنوز اکثریت کاربران ایرانی، حتی با اطلاع از مزایای لینوکس، از نصب این سیستم‌عامل بر روی دستگاهشان بیمناک هستند. علت این امر هم عدم آشنایی دقیق از سطح امکانات و محیط این سیستم‌عامل است. به همین دلیل، شرکت چاپار شبدیز تصمیم گرفت توزیع خود را مبتنی بر لینوکس Knoppix قرار دهد که یک توزیع زنده بوده و از روی دیسک CD بوت شده و قابل استفاده است و کاربر نیازی ندارد تا آنرا روی کامپیوتر خود نصب نماید. نام این توزیع که نخستین توزیع فارسی سیستم‌عامل لینوکس به شمار می‌رود، شبدیکس (Shabdix) است.

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

خوب نخستین قدم برای بررسی شبدیکس، بوت کردن آن بود. بنابراین CD را در دستگاه خود قرار داده و بوت کردم. نخستین چیزی که جلب توجه می‌کند نمایش لوگوی جالب شبدیکس در ابتدای بوت است. با فشردن کلید Enter بوت ادامه یافته و پس از نمایش پیام «با درود!»، سخت‌افزارهای سیستم بصورت خودکار شناسایی شده و با راه‌اندازی FarsiKDE اجرای سیستم کامل میشود. تمامی این فرایندها در کمتر از یک دقیقه به اتمام می‌رسند. سیستم از نظر پایه‌ای تفاوتی با Knoppix ندارد و تفاوت عمده در بکارگیری FarsiKDE است. نسخه Knoppix مورد استفاده، نسخه 3.2 می‌باشد. با توجه به گسترده بودن کاربران کارتهای گرافیکی مبتنی بر تراشه‌های nVidia، یکی از کارهای جالبی که امکان انجام آن وجود دارد، جایگزین کردن درایورهای استاندارد nv با درایور nvidia است که شتابدهنده سه بعدی را پشتیبانی می‌کند. با این اقدام، تعداد زیادی از کاربران می‌توانند قابلیت سه بعدی و کیفیت بهتر خروجی کارت گرافیک را داشته باشند.

یکی از نکاتی که هنگام راه‌اندازی و خاموش کردن شبدیکس جلب توجه می‌کند،صدای انگلیسی Initiating .... sequence است که جالب و بهتر خواهد بود با یک صدای فارسی جایگزین شود.

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

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

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

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

با اینکه شبدیکس با ۱۲۸ مگابایت حافظه هم کار می‌کند، توصیه می‌کنم برای روانی و راحتی بیشتر، آنرا روی کامپیوتری با حداقل ۲۵۶ مگابایت رم اجرا نمایید. در این صورت بسیار روان کار خواهد کرد و برنامه‌ها نیز با سرعت بیشتری اجرا خواهند شد. دلیل نیاز به این مقدار حافظه هم روشن است. شبدیکس از دیسک سخت سیستم استفاده نمی‌کند تا با ایجاد swap بخشی از اطلاعات خود را روی آن قرار دهد.

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

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

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

تصویر۱تصویر۲تصویر۳تصویر۴

در کل بسیار خوشحال هستم که می‌بینم بالاخره ایران هم صاحب یک توزیع لینوکس مخصوص به خودش شده است. من به آینده این کار بسیار امیدوار هستم و برای تمامی دست اندرکاران این پروژه آرزوی موفقیت دارم. shabdix

منبع مقاله : سایت technotux