بستههای نرمافزاری کار نصب نرمافزارهای کاربردی را در لینوکس آسان کردهاند.
دیگر لازم نیست برای نصب هر نرمافزار، کاربر کدهای منبع را دریافت کرده، آنها را کامپایل نموده و نصب کند.
کاری که بسیاری از کاربران از انجام آن ناتوان هستند.
همانطور که متوجه شدید، بستههای نرمافزاری حاوی برنامههای قابل اجرا و آماده برای نصب هستند.
ممکن است در اینترنت به انواع مختلفی از بستههای نرمافزاری برخورد نمایید که البته همه آنها حاوی نرمافزارهای آماده برای نصب نیستند که جلوتر درباره آنها توضیح خواهم داد.
پر کاربردترین بستههای آماده نصب نرمافزارهای کاربردی، بستههای نوع rpm و deb هستند.
در این مقاله ما به بررسی بستههای نرمافزاری با فرمت rpm و مدیریت آنها خواهیم پرداخت و در مقاله جداگانهای، مدیریت بستههای deb را که مخصوص لینوکس debian و توزیعهای مبتنی بر آن است را بررسی خواهیم کرد.
در سیستم عامل لینوکس (Redhat) برای خواندن دیسک (فلاپی) یا CD-Rom ابتدا باید فلاپی یا CD مورد نظر را Mount (اتصال) کنیم.
برای این کار بر روی ناحیهی خالی میز کار (Desktop) راست کلیک کرده، از منوی ظاهر شده گزینه Mount سپس اگر فلاپی دیسک داشتیم، گزینه فلاپی (دیسک) و اگر CD-Rom داشتیم، گزینه فوق را انتخاب میکنیم.
برای نصب Package یا بستههای نرمافزاری ابتدا باید CD مورد نظر را Mount کنیم که اگر به صورت Auto Run باشد، به صورت خودکار اجرا میشود، در غیر این صورت باید مراحل نصب را طی کرد.
برای نصب در محیط متنی باید دستوراتی را در پنجره Terminal برای نصب Package تایپ کرده که در این تحقیق به بررسی این روش میپردازیم.
دلایل استفاده از محیط متنی در لینوکس
1.
برخی دستورات و فرامین پایهای سیستمهای عامل، از جمله پیکربندی اولیهی سیستمها و حتی شبکههای کامپیوتری را هنوز هم فقط در محیط متنی میتوان به اجرا درآورد.
2.
اصولاً کار در خط فرمان به دلیل اجتناب از بکارگیری رابطهای گرافیکی که حجم بالایی از منابع سیستم، از جمله حافظه را اشغال میکنند، بسیار بیشتر و کمخطرتر است.
3.
در واقع کلیهی برنامههای اجرایی در محیط گرافیکی به نحوی پس از اخذ دستورات ویژوال یا بصری از کاربر همان فرامین متنی را برای انجام عملیات خود در پس زمینه اجرا میکنند و چه بسا به دلیل ایرادات موجود در نرمافزارها، گاهی این دستورات را به کندی اجرا شده و یا آنها را به درستی نیز اجرا نمایند.
4.
Shen کار در محیط فرمان متنی و اجرای دستورات در محیطهایی از جمله نیازهای اصلی مدیران سیستم و کاربران پیشرفته کامپیوار است و هیچگاه به کلی منسوخ نخواهد شد.
5.
KDE برخی سیستمهای عامل همچون لینوکس با وجود توسعه چشمگیر رابطهای گرافیکی نظیر GNOME و ...
هنوز به فرامین متنی وابسته و بدون داشتن این فرامین نمیتوان از این سیستمها بطور کامل و موثر بهره برد.
درک نامگذاری و فرمت بسته های نرمافزاری
وقتی بسته ای را از اینترنت دانلود میکنید، میبینید که از یک نام، تعدادی شماره، نقطه، gz و tar تشکیل شده است.
خوب اینها چه معنی دارند؟
ابتدا این اعداد و حرفها پیچیده به نظر میرسند در صورتی که اگر برایتان شرح داده شوند، بسیار ساده هستند.
پس از مدتی به این شیوه نامگذاری عادت خواهید کرد.
بیشتر بسته های نرمافزاری لینوکس از قاعده نامگذاری GNU استفاده میکنند.
مثالهای زیر فرمتهای گوناگون بسته های نرمافزاری را نشان میدهد:
وقتی بسته ای را از اینترنت دانلود میکنید، میبینید که از یک نام، تعدادی شماره، نقطه، gz و tar تشکیل شده است.
مثالهای زیر فرمتهای گوناگون بسته های نرمافزاری را نشان میدهد: 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 اجرا خواهد شد.
ایجاد و نصب نرم افزارها از کدهای منبع در صورتی که هیچ کد اجرایی برای نرم افزار مورد نیاز شما وجود نداشته باشد، و یا نیاز داشته باشید تا نرم افزار مربوطه را مطابق نیاز خود تغییر دهید، باید از کد منبع استفاده نمایید.
کدهای منبع ممکن است هم بصورت بسته های rpm و هم بصورت بسته های tar/gz وجود داشته باشند.
معمولا در اکثر اوقات هنگام کامپایل و نصب برنامههای کاربردی با استفاده از کدهای منبع به خوبی پیش رفته و اشکالی پیش نمیآید.
ولی برای اینکه بتوانید بهتر اشکالات احتمالی را رفع نمایید، دانستن برنامه نوسی برایتان بسیار مفید خواهد بود.
به طور کلی استفاده از کدهای منبع را به کاربرانی که تازه کار با لینوکس را آغاز کردهاند، ممکن است کمی دشوار باشد.
پس بهتر است پس از اینکه مقداری با تجربهتر شدید از این بستهها استفاده نمایید.
برای کاربران مبتدی، استفاده از بستههای آماده نصب مانند rpm و deb بسیار راحتتر است.
البته در صورتی که کنجکاو هستید و مایلید این نوع نصب را هم آزمایش نمایید، من شما را بر حذر نمیدارم.
فقط دقت نمایید که چه کاری را دارید انجام میدهید.
نکته : برای اینکه بتوانید از کدهای منبع برای تولید برنامهها استفاده کنید، به ابزارهایی مانند کامپایلر ها و لینکرها و کتابخانه ها نیاز دارید.
مجموعه این ابزارها تحت عنوان Development Tools در توزیعهای مختلف لینوکس موجود هستند.
برای اینکه قادر باشید تا برنامههای موجود بصورت کدهای منبع را کامپایل و نصب نمایید، حتما به این ابزارها نیاز دارید.
بنابراین آنها را نصب نمایید.
استفاده از بسته های tar/gz تقریبا تمام بسته های کد منبع که در اینترنت موجود هستند، با این فرمت ارائه میشوند.
برای استفاده و نصب نرم افزارهایی که با این بسته ها ارائه میشوند باید مراحل زیر را انجام دهید : - بسته مربوطه را از اینترنت و یا CD در یک دایرکتوری خالی کپی نمایید.
- بسته را با استفاده دستور gzip یا gunzip از حالت فشردگی خارج نمایید.
نتیجه این کار یک بسته با فرمت tar است.
به مثال زیر توجه کنید : $ gzip -d mycoolapp.tar.gz - برای باز کردن بسته tar از دستور ذکر شده در مثال زیر استفاده نمایید .
این دستور تمام فایلهای موجود در بسته را در یک دایرکتوری درون دایرکتوری جاری باز میکند.
$ tar xvf mycoolapp.tar - با استفاده از دستور cd وارد دایرکتوری مربوطه شوید.
- در صورتی که همراه با بسته فایلهایی به نام INSTALL و یا README ارائه شده است، ابتدا حتما آنها را مطالعه نمایید.
- در مرحله بعدی باید بسته را برای کامپایل شدن پیکربندی نمایید.
برای این منظور باید از دستور configure استفاده نمایید .
به مثال زیر توجه نمایید: $ ./configure توجه : حتما و حتما فایلهای INSTALL و README همراه با بسته را مطالعه نمایید.
ممکن است که برای پیکربندی بسته لازم باشد تا آرگومانهای دیگری به دستور configure اضافه نمایید.
این دستور بسته برای برای کامپایل شدن آماده نموده و فایلهای لازم برای این کار را ایجاد میکند.
ضمنا در صورتی که از شما آرگومان یا گزینهای دریافت کرده باشد، آنرا نیز در فایلهای مربوط به کامپایل و نصب اعمال میکند.
- در صورتی که همه چیز به خوبی پیش رفت و هیچ پیام خطایی مشاهده نکردید، اکنون باید برنامه را کامپایل نمایید.
برای این منظور باید از دستور make استفاده کنید.
به مثال زیر توجه کنید: $ make - خوب در این مرحله کامپیوترتان شروع به کامپایل کردن برنامه میکند.
در صورتی که برنامه بزرگی را کامپایل کنید و یا پردازنده کامپیوترتان قدیمی باشد، ممکن است این بخش کمی طول بکشد.
در صورتی که پس از اتمام کار هیچگونه پیغام خطایی روی صفحه مشاهده نکردید معنی آن این است که برنامه بدون هیچ مشکلی کامپایل شده است و اکنون آماده نصب میباشد.
برای نصب برنامه باید مجوزهای کاربر ریشه را داشته باشید.
برای این کار از دستور su برای ورود به حالت کاربر ریشه استفاده کنید.
- برای نصب برنامه کامپایل شده باید از دستور make intall استفاده کنید.با این کار برنامه در محل خود نصب شده و از این پس میتوانید آنرا از خط فرمان اجرا نمایید.
به مثال زیر توجه کنید : $ make install توجه : هنگامی که یک برنامه را از طریق کد منبع نصب می کنید، هیچ آیکون و یا میانبر گرافیکی برای اجرای آن ایجاد نمیشود.
برای اینکه بتوانید آنرا به راحتی اجرا کنید، خودتان باید برای آنها آیکون و میانبر ایجاد کنید.
نکته: بدلیل اینکه دستور gzip بسته اصلی را حذف نموده و یک بسته tar ایجاد میکند، در صورتی که مایل به نگهداری یک نسخه از کد منبع هستید، یک کپی از آنرا در یک مسیر جداگانه نگهداری نمایید.
- پس از اینکه نصب برنامه نیز به موفقیت به پایان رسید، میتوانید با استفاده از دستور rm و گزینه R تمام فایلهای کد منبع را پاک کنید تا فضای دیسک شما بی جهت اشغال نشود.
در صورتی که فقط بخواهید برنامه کامپایل شده را از داخل کدهای منبع پاک کرده و کدهای منبع را نگهداری کنید، از دستور make clean استفاده کنید.
به مثال زیر توجه نمایید: $ make clean - برخی بستههای کد منبع، گزینه make uninstall را نیز پشتیبانی میکنند که از طریق آن میتوانید برنامهای را که نصب کردهاید، از روی کامپیوترتان پاک کنید.
نصب بسته های 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 گاهی اوقات مدتی پس از نصب یک بسته به نظر میرسد که نرمافزار مربوطه بطور صحیح کار نمیکند.
برای بررسی اینکه تمام محتویات یک بسته بدون تغییر باقی مانده اند یا خیر، باید از گزینه 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 مشکلی ندارد.
علائم نشاندهنده ای که با این گزینه با آنها برخورد خواهید کرد عبارتند از: نشانگر تغییر در MD5 checksum است.
نشاندهنده ایجاد تغییراتی در محتوای یک فایل میباشد.
S: نشانگر تغییر در اندازه فایل میباشد.
L : نشانگر این است که فایل تبدیل به یک لینک ظاهری (Symbolic) به فایل دیگری شده است.
T : زمان تغییر فایل را نشان میدهد.
D : فایل مورد نظر تبدیل به یک فایل مخصوص ابزار (Device Special File) شده است.
U : کاربر مالک فایل تغییر کرده است.
G : گروه کاربری فایل تغییر کرده است.
M : مالکیت یا مجوزهای دسترسی به فایل تغییر کرده است.
حذف بسته های 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- مستنداتی که در بسته وجود دارند را چاپ میکند.
فایلهای پیکربندی که در بسته قرار دارند را چاپ میکند.
همانطوری که در بالا گفته شد برای لیست کردن تمام بسته های موجود روی کامپیوترتان میتوانید از گزینه 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 منابع و ماخذ: فهرست مطالب انواع بسته های نرم افزاری در محیط لینوکس 1 دلایل استفاده از محیط متنی در لینوکس 2 درک نامگذاری و فرمت بسته های نرمافزاری 3 rpm در مقابل کد منبع 4 ایجاد و نصب نرم افزارها از کدهای منبع 5 استفاده از بسته های tar/gz 6 نصب بسته های rpm در لینوکس 9 ارتقا بسته های rpm 13 بررسی صحت نصب بسته های rpm 14 حذف بسته های rpm 16 بدست آوردن اطلاعات از بسته های rpm 17