apt-cache -
پرسوجو و
جستجو در
حافظه
پنهان APT
apt-cache [-agipns]
[-o=config_string]
[-c=config_file] {gencaches |
showpkg pkg... | showsrc pkg... | stats | dump |
dumpavail | unmet | search regex... |
show pkg [{=pkg_version_number | /target_release}]...
|
depends pkg [{=pkg_version_number | /target_release}]...
|
rdepends pkg [{=pkg_version_number | /target_release}]...
| pkgnames [prefix] |
dotty pkg [{=pkg_version_number | /target_release}]...
|
xvcg pkg [{=pkg_version_number | /target_release}]...
| policy [pkg...] | madison pkg... |
{-v | --version} | {-h | --help}}
apt-cache عملیات
گوناگونی
را روی
حافظه
پنهان
بستههای APT
انجام
میدهد. apt-cache
وضعیت
سیستم را
تغییر
نمیدهد،
اما
عملیاتی را
برای جستجو
و تولید
خروجیهای
کاربردی از
فرادادههای
بستهها
فراهم
میکند. این
فرادادهها
از طریق
دستور «update»
به عنوان
مثال توسط
apt-get دریافت و
بهروزرسانی
میشوند،
بنابراین
اگر از
آخرین
بهروزرسانی
مدت زیادی
گذشته باشد
ممکن است
قدیمی
باشند، اما
در عوض apt-cache
مستقل از در
دسترس بودن
مخازن
پیکربندیشده
(مثلاً در
حالت
آفلاین) کار
میکند.
مگر اینکه
گزینه -h یا
--help مشخص شده
باشد، یکی
از
دستورهای
زیر باید
داده شود.
gencaches
دستور gencaches
حافظه
پنهان
بستههای APT
را ایجاد
میکند. این
کار در صورت
مفقود بودن
یا قدیمی
بودن حافظه
پنهان، به
صورت ضمنی
توسط تمام
دستوراتی
که به این
حافظه
پنهان نیاز
دارند
انجام
میشود.
showpkg pkg...
دستور showpkg
اطلاعات
مربوط به
بستههای
ذکرشده در
خط فرمان را
نمایش
میدهد.
آرگومانهای
باقیمانده
نام
بستهها
هستند.
نسخههای
موجود و
وابستگیهای
معکوس هر
بسته
ذکرشده، و
همچنین
وابستگیهای
مستقیم
برای هر
نسخه فهرست
میشوند.
وابستگیهای
مستقیم
(معمولی)
بستههایی
هستند که
بسته مورد
نظر به
آنها
وابسته
است؛
وابستگیهای
معکوس
بستههایی
هستند که به
بسته مورد
نظر وابسته
هستند.
بنابراین،
وابستگیهای
مستقیم
باید برای
یک بسته
برآورده
شوند، اما
نیازی به
برآورده
شدن
وابستگیهای
معکوس نیست.
برای
نمونه،
apt-cache showpkg
libreadline2 خروجی
مشابه زیر
تولید
میکند:
Package: libreadline2
Versions: 2.1-12(/var/state/apt/lists/foo_Packages),
Reverse Depends:
libreadlineg2,libreadline2
libreadline2-altdev,libreadline2
Dependencies:
2.1-12 - libc5 (2 5.4.0-0) ncurses3.0 (0 (null))
Provides:
2.1-12 -
Reverse Provides:
بدین ترتیب
میتوان
مشاهده کرد
که بسته libreadline2،
نسخه
2.1-12، به libc5
و ncurses3.0 وابسته
است که برای
کارکرد libreadline2
باید نصب
شده باشند.
به نوبه
خود، libreadlineg2 و libreadline2-altdev
به libreadline2 وابسته
هستند. اگر
libreadline2 نصب باشد،
libc5 و ncurses3.0 (و ldso) نیز
باید نصب
باشند؛ اما
نیازی به
نصب libreadlineg2 و libreadline2-altdev
نیست. برای
درک معنای
دقیق
بخشهای
باقیمانده
خروجی،
بهتر است به
کد منبع apt
مراجعه
کنید.
stats
دستور stats
برخی
آمارها را
درباره
حافظه
پنهان
نمایش
میدهد. هیچ
آرگومان
دیگری
انتظار
نمیرود.
آمارهای
ارائهشده
عبارتند از:
•تعداد
کل نامهای
بسته (Total package names)
تعداد نام
بستههای
موجود در
حافظه
پنهان است.
•بستههای
عادی (Normal packages)
تعداد
نامهای
بستههای
عادی و
معمولی
است؛
اینها
بستههایی
هستند که
تطابق
یکبهیک
میان نام
آنها و
نامی که
سایر
بستهها
برای
وابستگیهای
خود
استفاده
میکنند
وجود دارد.
اکثر
بستهها در
این دسته
قرار
میگیرند.
•بستههای
کاملاً
مجازی (Pure virtual packages)
تعداد
بستههایی
است که فقط
به عنوان یک
نام بسته
مجازی وجود
دارند؛
یعنی
بستهها
صرفاً نام
بسته مجازی
را «ارائه»
(provide) میدهند و
هیچ
بستهای
واقعاً از
این نام به
عنوان نام
واقعی خود
استفاده
نمیکند.
برای مثال،
در سیستم
دبیان «mail-transport-agent»
یک بسته
کاملاً
مجازی است؛
چندین بسته
«mail-transport-agent» را
ارائه
میدهند،
اما هیچ
بستهای با
نام واقعی
«mail-transport-agent» وجود
ندارد.
•بستههای
مجازی
منفرد (Single virtual packages)
تعداد
بستههای
مجازی است
که تنها یک
بسته آن
بسته مجازی
خاص را
ارائه
میدهد.
برای
نمونه، در
سیستم
دبیان،
«X11-text-viewer» یک
بسته مجازی
است، اما
تنها یک
بسته، یعنی
xless، بسته «X11-text-viewer»
را ارائه
میدهد.
•بستههای
مجازی
ترکیبی (Mixed virtual packages)
تعداد
بستههایی
است که یا یک
بسته مجازی
خاص را
ارائه
میدهند یا
نام بسته
مجازی را به
عنوان نام
اصلی بسته
خود دارند.
برای
نمونه، در
سیستم
دبیان «debconf»
هم یک بسته
واقعی است و
هم توسط
بسته debconf-tiny
ارائه
میشود.
•مفقود
(Missing) تعداد
نامهای
بستهای
است که در یک
وابستگی به
آنها
ارجاع داده
شده اما
توسط هیچ
بستهای
ارائه
نشدهاند.
بستههای
مفقود ممکن
است زمانی
ظاهر شوند
که به توزیع
کامل
دسترسی
وجود
ندارد، یا
زمانی که یک
بسته (واقعی
یا مجازی) از
توزیع حذف
شده باشد.
معمولاً از
عبارات Conflicts یا
Breaks به آنها
ارجاع داده
میشود.
•تعداد
کل
نسخههای
متمایز (Total distinct versions)
تعداد
نسخههای
بسته موجود
در حافظه
پنهان است.
اگر به بیش
از یک توزیع
دسترسی
وجود داشته
باشد (برای
مثال stable و unstable)،
این مقدار
میتواند
به طور قابل
توجهی
بیشتر از
تعداد کل
نامهای
بسته باشد.
•تعداد
کل
وابستگیها
(Total dependencies) تعداد
روابط
وابستگی
است که توسط
تمام
بستههای
موجود در
حافظه
پنهان
درخواست
شده است.
showsrc pkg...
دستور showsrc
تمامی
رکوردهای
بسته سورس
(منبع) را که
با نامهای
بسته
دادهشده
مطابقت
دارند
نمایش
میدهد.
تمام
نسخهها و
همچنین
تمام
رکوردهایی
که اعلام
میکنند
این نام یک
بسته
دوتایی
(باینری) است
نمایش داده
میشوند. از
گزینه --only-source
برای نمایش
صرفاً نام
بستههای
سورس
استفاده
کنید.
dump
دستور dump
فهرستی
کوتاه از
تمامی
بستههای
موجود در
حافظه
پنهان را
نمایش
میدهد. این
دستور
عمدتاً
برای
اشکالزدایی
کاربرد
دارد.
dumpavail
دستور dumpavail
فهرستی از
بستههای
موجود را در
خروجی
استاندارد
چاپ میکند.
این خروجی
برای
استفاده
همراه با
dpkg(1)
مناسب بوده
و توسط روش
dselect(1) به کار
میرود.
unmet
دستور unmet
خلاصهای
از تمامی
وابستگیهای
برآوردهنشده
در حافظه
پنهان
بستهها را
نمایش
میدهد.
show pkg...
دستور show
عملیاتی
مشابه dpkg --print-avail
انجام
میدهد؛
این دستور
رکوردهای
بسته را
برای
بستههای
نامبرده
نمایش
میدهد.
search regex...
دستور search
یک جستجوی
متنی کامل
در تمام
فهرستهای
بستههای
موجود برای
الگوی
عبارت
باقاعده POSIX
دادهشده
انجام
میدهد؛ به
regex(7) مراجعه
کنید. این
دستور
نامها و
توضیحات
بستهها را
برای یافتن
موارد
منطبق با
عبارت
باقاعده
جستجو
میکند و
نام بسته به
همراه
توضیحات
کوتاه آن،
شامل
نامهای
بستههای
مجازی را
چاپ میکند.
اگر گزینه
--full مشخص شده
باشد،
خروجی
همانند
خروجی
دستور show برای
هر بسته
منطبق
تولید
میشود؛ و
اگر گزینه
--names-only مشخص شده
باشد،
توضیحات
طولانی
جستجو
نمیشوند و
فقط نام
بسته و
بستههای
ارائهشده
جستجو
میگردند.
میتوان
از
آرگومانهای
مجزا برای
مشخص کردن
چندین
الگوی
جستجو
استفاده
کرد که با
یکدیگر عطف
منطقی (AND)
میشوند.
depends pkg...
دستور depends
فهرستی از
تمام
وابستگیهای
یک بسته و
تمام
بستههای
احتمالی
دیگر که
میتوانند
آن وابستگی
را برآورده
کنند نمایش
میدهد.
rdepends pkg...
دستور rdepends
فهرستی از
تمام
وابستگیهای
معکوس یک
بسته را
نمایش
میدهد.
pkgnames [prefix]
این
دستور نام
تمام
بستههایی
را که APT
میشناسد
چاپ میکند.
آرگومان
اختیاری یک
پیشوند
برای فیلتر
کردن فهرست
نامها است.
خروجی برای
استفاده در
قابلیت
تکمیل با
کلید Tab در
پوسته
مناسب است و
بسیار سریع
تولید
میشود. این
دستور بهتر
است همراه
با گزینه
--generate
استفاده
شود.
توجه
داشته
باشید که
بستهای که
APT آن را
میشناسد
لزوماً
برای
بارگیری در
دسترس،
قابل نصب یا
نصبشده
نیست؛ برای
مثال
بستههای
مجازی نیز
در فهرست
تولیدشده
قرار
میگیرند.
dotty pkg...
دستور dotty
فهرستی از
بستهها را
در خط فرمان
دریافت
کرده و
خروجی
مناسبی
برای
استفاده
توسط dotty از
بسته
GraphViz[1]
تولید
میکند.
نتیجه
مجموعهای
از گرهها و
یالها
خواهد بود
که روابط
بین
بستهها را
نشان
میدهند. به
صورت
پیشفرض،
بستههای
دادهشده
تمام
بستههای
وابسته را
ردیابی
میکنند؛
این امر
میتواند
منجر به یک
نمودار
بسیار بزرگ
شود. برای
محدود کردن
خروجی تنها
به
بستههایی
که در خط
فرمان وارد
شدهاند،
گزینه APT::Cache::GivenOnly
را تنظیم
کنید.
گرههای
حاصل دارای
چندین شکل
هستند:
بستههای
عادی به شکل
جعبه،
بستههای
کاملاً
مجازی به
شکل مثلث،
بستههای
مجازی
ترکیبی به
شکل لوزی و
بستههای
مفقود به
شکل
ششضلعی
هستند.
جعبههای
نارنجی به
معنای
متوقف شدن
بازگشت
هستند
(بستههای
برگ)، خطوط
آبی
نشاندهنده
پیشوابستگیها
(Pre-Depends) و خطوط
سبز
نشاندهنده
تداخلها (Conflicts)
هستند.
توجه: dotty
نمیتواند
مجموعههای
بزرگتر
بستهها را
به تصویر
بکشد.
xvcg pkg...
مشابه dotty،
اما برای xvcg
از ابزار VCG[2].
policy [pkg...]
دستور policy
برای کمک به
اشکالزدایی
مسائل
مربوط به
فایل
ترجیحات (preferences)
در نظر
گرفته شده
است. بدون
آرگومان،
اولویتهای
هر منبع را
چاپ میکند.
در غیر این
صورت،
اطلاعات
مفصلی
درباره
اولویت
انتخاب
بستههای
نامبرده
چاپ
میکند.
madison pkg...
دستور madison
در apt-cache تلاش
میکند تا
فرمت خروجی
و
زیرمجموعهای
از
قابلیتهای
ابزار
مدیریت
آرشیو
دبیان،
یعنی madison را
شبیهسازی
کند. این
دستور
نسخههای
موجود یک
بسته را در
قالب یک
جدول نمایش
میدهد. بر
خلاف madison
اصلی، این
دستور فقط
میتواند
اطلاعات
معماریای
را نمایش
دهد که APT
فهرست
بستههای
آن را
دریافت
کرده است
(APT::Architecture).
تمام
گزینههای
خط فرمان را
میتوان با
استفاده از
فایل
پیکربندی
تنظیم کرد؛
توضیحات،
گزینه
پیکربندی
مربوطه را
مشخص
میکنند.
برای
گزینههای
بولی
(منطقی)،
میتوانید
تنظیمات
فایل
پیکربندی
را با
استفاده از
مواردی
مانند -f-،
--no-f، -f=no یا
چندین شکل
مختلف دیگر
لغو کنید.
-p, --pkg-cache
فایل
مورد نظر
برای ذخیره
حافظه
پنهان
بستهها را
انتخاب
میکند.
حافظه
پنهان
بستهها،
حافظه
پنهان اصلی
است که توسط
تمام
عملیات
استفاده
میشود.
مولفه
پیکربندی:
Dir::Cache::pkgcache.
-s, --src-cache
فایل
مورد نظر
برای ذخیره
حافظه
پنهان
منابع (سورس)
را انتخاب
میکند. این
منبع فقط
توسط gencaches
استفاده
میشود و
نسخهای
تجزیهشده
از اطلاعات
بسته را از
منابع راه
دور ذخیره
میکند.
هنگام ساخت
حافظه
پنهان
بستهها،
از حافظه
پنهان
منابع برای
جلوگیری از
تجزیه مجدد
تمامی
فایلهای
بسته
استفاده
میشود.
مولفه
پیکربندی:
Dir::Cache::srcpkgcache.
-q, --quiet
حالت
بیصدا؛
خروجی
مناسب برای
ثبت در
گزارش را با
حذف
نشانگرهای
پیشرفت
تولید
میکند.
تعداد
بیشتر حرف q
خروجی را
بیصداتر
میکند
(حداکثر تا ۲).
همچنین
میتوانید
از -q=# برای
تعیین سطح
بیصدا
بودن
استفاده
کنید که
تنظیمات
فایل
پیکربندی
را لغو
میکند.
مولفه
پیکربندی: quiet.
-i, --important
فقط
وابستگیهای
مهم را چاپ
میکند؛
برای
استفاده
همراه با unmet و
depends. باعث
میشود فقط
روابط Depends و Pre-Depends
چاپ شوند.
مولفه
پیکربندی:
APT::Cache::Important.
--no-pre-depends, --no-depends,
--no-recommends, --no-suggests, --no-conflicts,
--no-breaks, --no-replaces, --no-enhances
به صورت
پیشفرض
دستورات depends
و rdepends تمامی
وابستگیها
را چاپ
میکنند.
این رفتار
را میتوان
با این
گزینهها
که نوع
وابستگی
مشخصشده
را نادیده
میگیرند،
تغییر داد.
مولفه
پیکربندی:
APT::Cache::ShowDependencyType به
عنوان مثال:
APT::Cache::ShowRecommends.
--implicit
به طور
پیشفرض depends
و rdepends تنها
وابستگیهایی
را چاپ
میکنند که
به صراحت در
فرادادهها
قید
شدهاند. با
این گزینه،
وابستگیهایی
که به صورت
ضمنی و بر
اساس
دادههای
دیدهشده
اضافه
میشوند
نیز نمایش
داده
خواهند شد.
برای نمونه
عبارت Conflicts: foo به
صورت ضمنی
بیان
میکند که
این بسته با
بسته «foo» از
هر معماری
دیگری نیز
تداخل دارد.
مولفه
پیکربندی:
APT::Cache::ShowImplicit.
-f, --full
رکوردهای
کامل بسته
را هنگام
جستجو چاپ
میکند.
مولفه
پیکربندی:
APT::Cache::ShowFull.
-a, --all-versions
رکوردهای
کامل را
برای تمام
نسخههای
موجود چاپ
میکند. این
حالت
پیشفرض
است؛ برای
غیرفعال
کردن آن از
--no-all-versions
استفاده
کنید. اگر
--no-all-versions مشخص
شود، تنها
نسخه
کاندید
(نسخهای که
برای نصب
انتخاب
خواهد شد)
نمایش داده
میشود. این
گزینه فقط
برای دستور show
کاربرد
دارد. مولفه
پیکربندی:
APT::Cache::AllVersions.
-g, --generate
بازسازی
خودکار
حافظه
پنهان
بستهها را
انجام
میدهد، به
جای
استفاده از
حافظه
پنهان به
همان صورتی
که هست. این
حالت
پیشفرض
است؛ برای
خاموش کردن
آن، از --no-generate
استفاده
کنید. مولفه
پیکربندی:
APT::Cache::Generate.
--names-only, -n
تنها نام
بسته و نام
بستههای
ارائهشده
را جستجو
میکند، نه
توضیحات
طولانی را.
مولفه
پیکربندی:
APT::Cache::NamesOnly.
--all-names
باعث
میشود pkgnames
تمام
نامها، از
جمله
بستههای
مجازی و
وابستگیهای
مفقود را
چاپ کند.
مولفه
پیکربندی:
APT::Cache::AllNames.
--recurse
دستورات
depends و rdepends را
بازگشتی
میکند تا
تمامی
بستههای
ذکرشده یک
بار چاپ
شوند. مولفه
پیکربندی:
APT::Cache::RecurseDepends.
--installed
خروجی
دستورات depends و
rdepends را به
بستههایی
که در حال
حاضر نصب
هستند
محدود
میکند.
مولفه
پیکربندی:
APT::Cache::Installed.
--with-source filename
فایل
دادهشده
را به عنوان
یک منبع
برای
فرادادهها
اضافه
میکند. این
گزینه را
میتوان
برای
افزودن
چندین فایل
تکرار کرد.
موارد
پشتیبانیشده
فعلی
عبارتند از
فایلهای *.deb،
*.dsc، *.changes، Sources و Packages و
همچنین
دایرکتوریهای
بسته سورس.
تطابق
فایلها
صرفاً بر
اساس نام
فایل است،
نه محتوای
آنها!
فایلهای
Sources و Packages
میتوانند
به هر فرمتی
که apt
پشتیبانی
میکند
فشرده
شوند، تا
زمانی که
پسوند صحیح
را داشته
باشند. اگر
لازم است
چندین فایل
از این دست
را در یک
دایرکتوری
ذخیره
کنید،
میتوانید
نامی
دلخواه را
که آخرین
نویسه آن یک
زیرخط («_»)
است پیشوند
قرار دهید.
مثال: my.example_Packages.xz
توجه
داشته
باشید که
این منابع
به عنوان
منابع قابل
اعتماد در
نظر گرفته
میشوند (به
apt-secure(8) مراجعه
کنید). مولفه
پیکربندی:
APT::Sources::With.
-h, --help
نمایش
خلاصه
کوتاهی از
نحوه
استفاده.
-v, --version
نمایش
نسخه
برنامه.
--audit
پیامهای
ممیزی (audit) و
اعلان (notice) را
نمایش
میدهد. این
گزینه حالت
quiet را لغو
میکند،
اما فقط
برای
پیامهای
اعلان، نه
پیامهای
پیشرفت.
-c, --config-file
فایل
پیکربندی؛
یک فایل
پیکربندی
را برای
استفاده
مشخص
میکند.
برنامه
فایل
پیکربندی
پیشفرض و
سپس این
فایل
پیکربندی
را
میخواند.
اگر
تنظیمات
پیکربندی
باید پیش از
تجزیه
فایلهای
پیکربندی
پیشفرض
اعمال
شوند،
فایلی را با
متغیر
محیطی
APT_CONFIG
مشخص کنید.
برای
اطلاعات
مربوط به
نحو، به
apt.conf(5)
مراجعه
کنید.
-o, --option
تنظیم یک
گزینه
پیکربندی؛
این یک
گزینه
دلخواه
پیکربندی
را تنظیم
میکند. نحو
به صورت -o Foo::Bar=bar
است. -o و --option
میتوانند
چندین بار
برای تنظیم
گزینههای
مختلف
استفاده
شوند.
--cli-version
یک نسخه
خاص CLI را
درخواست
میکند. این
الگویی است
که یک نسخه
به صورت MAJOR.MINOR را
میپذیرد.
میتوانید
نسخه MINOR را
حذف کنید،
که در این
صورت از
آخرین نسخه
فرعی
پشتیبانیشده
استفاده
خواهد شد.
مسیرهای
نسخهها به
شرح زیر
ارائه
میشوند:
نسخه 3.2
نسخههای
معادل 0.32، 1.22 و 2.12
دارد که
ویژگیهای
جدیدی را
برای
نسخههای
اصلی
مشخصشده
پیادهسازی
میکنند.
یک حالت
خاص الگوی
نسخه X.9 است:
نسخهای
مانند 2.9 با 3.0
دنبال
میشود،
اما 2.10
مستقیماً
پس از 2.8 قرار
میگیرد؛
با توجه به
اینکه ما از
اعداد نسخه
فرد به
عنوان
سریهای
توسعه
استفاده
میکنیم (2.9
سری توسعه 3.0
است).
این ویژگی
در APT 3.1.10 معرفی
شده است و
جایگزین
پیکربندی
مختص
باینری
میشود.
میتوانید
از APT::Version برای
اثر مشابه
در
باینریهای
قدیمیتر
استفاده
کنید؛ برای
مثال از -o APT::Version=2
برای ایجاد
رفتاری
شبیه به سری
2.x در apt(8)
استفاده
کنید.
مقدار
پیشفرض،
نسخه فعلی APT
برای apt(8) و 0.(10 * major +
minor) برای
دستورات
کلاسیک است.
سری 0.X به
تدریج
منسوخ
میشود (soft-deprecated) و
سایر
دستورات در
آینده به
سری 2.x منتقل
خواهند شد.
--no-color, --color
روشن یا
خاموش کردن
رنگها.
رنگها
بهطور
پیشفرض در
پایانههای
پشتیبانیشده
برای
apt(8)
روشن هستند
و همچنین
میتوان
آنها را با
استفاده از
متغیرهای
محیطی
NO_COLOR یا
APT_NO_COLOR غیرفعال
کرد، یا با
استفاده از
گزینه و
حوزه
پیکربندی
APT::Color بیشتر
پیکربندی
کرد؛ برای
اطلاعات
بیشتر به
apt.conf(5)
مراجعه
کنید.
/etc/apt/sources.list
مکانهای
دریافت
بستهها.
مولفه
پیکربندی:
Dir::Etc::SourceList.
/etc/apt/sources.list.d/
قطعهفایلها
برای
مکانهای
دریافت
بستهها.
مولفه
پیکربندی:
Dir::Etc::SourceParts.
/var/lib/apt/lists/
ناحیه
ذخیرهسازی
برای
اطلاعات
وضعیت هر
منبع بسته
مشخصشده
در
sources.list(5).
مولفه
پیکربندی:
Dir::State::Lists.
/var/lib/apt/lists/partial/
ناحیه
ذخیرهسازی
برای
اطلاعات
وضعیت در
حال انتقال.
مولفه
پیکربندی:
Dir::State::Lists (عبارت partial
به صورت
ضمنی ضمیمه
میشود)
apt-cache در
عملکرد
عادی مقدار
صفر و در
صورت بروز
خطا مقدار
دهدهی ۱۰۰
را
بازمیگرداند.
صفحه
باگهای APT[3].
اگر مایل به
گزارش باگ
در APT هستید،
لطفاً
/usr/share/doc/debian/bug-reporting.txt یا
دستور reportbug(1)
را ببینید.
- 1.
- GraphViz
- 2.
- ابزار VCG
- 3.
- صفحه
باگهای APT