0

5 ترفند براي مديريت بسته‌هاي RPM

 
samsam
samsam
کاربر طلایی1
تاریخ عضویت : بهمن 1387 
تعداد پست ها : 50672
محل سکونت : یزد

5 ترفند براي مديريت بسته‌هاي RPM

 

اگر توزیع شما فدورا یا مشتق شده از سیستم‌های ردهتی است، با این مطلب همراه شوید. گاهی اوقات می‌خواهیم بدانیم چه بسته‌ای چه فایلی را در اختیار دارد. برای این كار باید از دستور rpm-qf ‌‌ filename استفاده كنیم. به عنوان مثال، اگر بخواهیم بدانیم كه چه بسته‌ای فایل ‌/‌usr‌/‌lib‌/‌libkong.so.5 را در اختیار دارد، باید دستور زیر را وارد كنیم:

 

rpm-qf ‌/‌usr‌/‌lib‌/‌libkonq.so.5

این دستور خروجی زیر را بر می‌گرداند:

kdebase-libs-4.6.3-1.fc15.i686.

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

برای این كار باید از دستور زیر استفاده كنیم:

rpm -qc packagename

مثلا برای یافتن فایل‌های پیكربندی gnome- vfs2‌‌، كافی است دستور زیر را بزنیم و خروجی را در خط بعد مشاهده كنیم:

rpm -qc gnome-vfs2

/etc/gnome-vfs-2.0/modules/default-modules.conf

/etc/gnome-vfs-2.0/modules/ssl-modules.conf

این دستور فایل‌های موجود در بسته را نشان می‌دهد،؛ اما چطور است كه دستوری خاص برای آن بیابیم؟! برای این كار 2 گزینه cf را با دستور جستجو ادغام می‌كنیم تا فایل‌های پیكربندی را كه به دستور yum متصل هستند بیابیم، به عنوان مثال دستور ‌‌‌ rpm -qcf yum خروجی زیر را خواهد داد:

/etc/logrotate.d/yum

/etc/yum.conf

/etc/yum/version-groups.conf

توجه داشته باشید كه همه دستورها فایل پیكربندی ندارد و ممكن است گاهی این دستور پاسخ ندهد.

همچنین ممكن است به این فكر بیفتیم كه آیا فایل‌های نصب شده توسط یك بسته دستكاری شده‌اند یا هنوز در وضعیت زمان نصب خود قرار دارند؟ برای این كار دستور rpm -qs packagename تمام فایل‌های نصب شده به وسیله بسته را نشان می‌دهد و برای هر یك نیز یكی از وضعیت‌های normal، replaced و not installed را نشان می‌دهد.

این دستور در موارد زیادی به كار می‌آید، یكی از این موارد، تشخیص حمله است. همچنین می‌توان برای رفع عیب نیز از این دستور استفاده كرد. (فرض كنید مشغول تعمیر سیستم عامل یك مشتری هستید و او ادعا می‌كند به هیچ چیز دست نزده است و سیستم خودبه خود كار نمی‌كند.)

و در نهایت، اگر به دنبال بسته‌ای بودید كه پیش نیاز داشت، از دستور yum resolvedep dependency استفاده كنید. برای مثال دستور زیر نشان می‌دهد كه بسته zlib... برای نصب بسته libz.so.1 نیاز بوده است.

yum resolvedep libz.so.

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