APT-GET(8) APT APT-GET(8)

apt-get - ابزار خط فرمان APT برای مدیریت بسته‌ها

apt-get [-sqdyfmubV] [-o=config_string] [-c=config_file] [-t=target_release] [-a=architecture] {update | upgrade | dselect-upgrade | dist-upgrade | install pkg [{=pkg_version_number | /target_release}]... | remove pkg... | purge pkg... | source pkg [{=pkg_version_number | /target_release}]... | build-dep pkg [{=pkg_version_number | /target_release}]... | download pkg [{=pkg_version_number | /target_release}]... | check | clean | autoclean | autoremove | {-v | --version} | {-h | --help}}

apt-get یک ابزار خط فرمان برای مدیریت بسته‌ها است و می‌توان آن را به عنوان یک بخش پشتی (backend) برای ابزارهای دیگری که از کتابخانه APT استفاده می‌کنند در نظر گرفت. رابط‌های کاربری متعددی مانند aptitude(8)، synaptic(8) و wajig(1) برای آن وجود دارد.

مگر در مواردی که گزینه -h یا --help مشخص شده باشد، باید یکی از دستورات فهرست‌شده در زیر ارائه شود.

update

دستور update برای همگام‌سازی مجدد فایل‌های شاخص بسته با منابع آن‌ها استفاده می‌شود. شاخص‌های بسته‌های موجود از مکان‌های مشخص‌شده در /etc/apt/sources.list بارگیری می‌شوند. به عنوان مثال، هنگام استفاده از آرشیو دبیان، این دستور فایل‌های Packages.gz را دریافت و بررسی می‌کند تا اطلاعات مربوط به بسته‌های جدید و به‌روزشده در دسترس قرار گیرد. یک update باید همیشه پیش از یک upgrade یا dist-upgrade اجرا شود. لطفاً توجه داشته باشید که نوار پیشرفت کلی دقیق نخواهد بود، زیرا اندازه فایل‌های بسته از قبل مشخص نیست.

upgrade

دستور upgrade برای نصب جدیدترین نسخه از تمام بسته‌هایی که در حال حاضر بر روی سیستم نصب هستند، از منابع فهرست‌شده در /etc/apt/sources.list استفاده می‌شود. بسته‌های نصب‌شده فعلی که نسخه‌های جدیدتری از آن‌ها موجود است دریافت و ارتقا داده می‌شوند؛ تحت هیچ شرایطی بسته‌های نصب‌شده فعلی حذف نمی‌شوند یا بسته‌هایی که هنوز نصب نشده‌اند دریافت و نصب نخواهند شد. نسخه‌های جدید بسته‌های نصب‌شده فعلی که بدون تغییر وضعیت نصب بسته دیگر امکان ارتقای آن‌ها وجود ندارد، در نسخه فعلی خود باقی خواهند ماند. ابتدا باید یک update انجام شود تا apt-get از وجود نسخه‌های جدید بسته‌ها مطلع شود.

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

dist-upgrade

دستور dist-upgrade علاوه بر انجام وظایف upgrade، شامل یک سازوکار هوشمند برای حل تغییر وابستگی‌های بسته‌ها در نسخه‌های جدید است. apt-get دارای یک سیستم حل تعارض «هوشمند» است و تلاش می‌کند مهم‌ترین بسته‌ها را حتی در صورت لزوم به قیمت حذف بسته‌های کم‌اهمیت‌تر ارتقا دهد. به همین دلیل، دستور dist-upgrade ممکن است برخی بسته‌ها را حذف کند. فایل /etc/apt/sources.list حاوی فهرستی از مکان‌هایی است که فایل‌های بسته مورد نظر از آن‌ها دریافت می‌شوند. همچنین برای سازوکار لغو تنظیمات عمومی برای بسته‌های خاص، به apt_preferences(5) مراجعه کنید.

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

dselect-upgrade

دستور dselect-upgrade همراه با رابط کاربری سنتی دبیان، dselect(1) استفاده می‌شود. dselect-upgrade تغییرات اعمال‌شده توسط dselect(1) را در فیلد وضعیت (Status) بسته‌های موجود دنبال می‌کند و اقدامات لازم را برای تحقق آن وضعیت (به عنوان مثال حذف بسته‌های قدیمی و نصب بسته‌های جدید) انجام می‌دهد.

install

به دنبال دستور install یک یا چند بسته که نصب یا ارتقای آن‌ها مورد نظر است مشخص می‌شود. هر بسته یک نام بسته است، نه یک نام فایل کامل (به عنوان مثال در یک سیستم دبیان، آرگومان مورد نظر apt-utils خواهد بود، نه apt-utils_3.3.3_amd64.deb). تمام بسته‌هایی که برای بسته‌های مشخص‌شده مورد نیاز هستند نیز بارگیری و نصب خواهند شد. فایل /etc/apt/sources.list برای یافتن بسته‌های مورد نظر استفاده می‌شود. اگر یک علامت خط تیره (-) به نام بسته (بدون فاصله) پیوست شود، بسته مشخص‌شده در صورت نصب بودن حذف خواهد شد. به همین ترتیب می‌توان از علامت مثبت (+) برای نشانه‌گذاری یک بسته جهت نصب استفاده کرد. این قابلیت‌ها را می‌توان برای نادیده گرفتن تصمیماتی که توسط سیستم حل تعارض apt-get گرفته شده است به کار برد.

می‌توان یک نسخه خاص از یک بسته را با نوشتن نام بسته به همراه علامت مساوی (=) و نسخه بسته برای نصب انتخاب کرد. این امر باعث می‌شود که آن نسخه جستجو و برای نصب انتخاب شود. به عنوان جایگزین، می‌توان یک توزیع خاص را با درج نام بسته به همراه علامت اسلش (/) و نسخه توزیع یا نام آرشیو (»stable«، »testing«، »unstable«) انتخاب کرد.

هر دو سازوکار انتخاب نسخه می‌توانند موجب تنزل رتبه (downgrade) بسته‌ها شوند و باید با احتیاط استفاده شوند.

همچنین اگر بخواهید یک یا چند بسته از قبل نصب‌شده را بدون ارتقای تمام بسته‌های سیستم ارتقا دهید، این هدف مناسب خواهد بود. بر خلاف هدف »upgrade« که آخرین نسخه تمام بسته‌های نصب‌شده فعلی را نصب می‌کند، »install« تنها جدیدترین نسخه بسته‌های مشخص‌شده را نصب خواهد کرد. کافی است نام بسته‌ای را که می‌خواهید ارتقا دهید مشخص کنید و در صورتی که نسخه جدیدتری در دسترس باشد، دریافت و (به همراه وابستگی‌های آن، همان‌طور که در بالا توضیح داده شد) نصب خواهد شد.

در نهایت، سازوکار apt_preferences(5) به شما اجازه می‌دهد یک خط‌مشی نصب جایگزین برای بسته‌های شخصی خود ایجاد کنید.

اگر هیچ بسته‌ای با عبارت ارائه‌شده مطابقت نداشته باشد و عبارت شامل یکی از نویسه‌های ».«، »?« یا »*« باشد، فرض می‌شود که این یک عبارت باقاعده POSIX است و روی تمام نام‌های بسته‌ها در پایگاه داده اعمال می‌شود. سپس هر تطابقی نصب (یا حذف) خواهد شد. توجه داشته باشید که جستجو برای زیررشته‌های منطبق انجام می‌شود، بنابراین »lo.*« با »how-lo« و »lowest« مطابقت خواهد داشت. در صورتی که این مورد نظر شما نیست، عبارت باقاعده را با »^« یا »$« مهار کنید تا یک عبارت باقاعده دقیق‌تر ایجاد شود.

در APT 2.0، استفاده پیش‌فرض از عبارات باقاعده منسوخ شده و در apt(8) به جز برای عبارات مهارشده حذف شده است. این قابلیت در نسخه‌های آینده apt-get(8) نیز حذف خواهد شد. در عوض از apt-patterns(7) استفاده کنید.

reinstall

دستور reinstall یک نام مستعار برای install --reinstall است.

remove

دستور remove همانند install عمل می‌کند با این تفاوت که بسته‌ها به جای نصب شدن، حذف می‌شوند. توجه داشته باشید که حذف بسته‌ها فایل‌های پیکربندی آن‌ها را در سیستم باقی می‌گذارد. اگر یک علامت مثبت (+) به نام بسته پیوست شود (بدون فاصله)، بسته مشخص‌شده به جای حذف شدن، نصب خواهد شد.

purge

دستور purge مشابه remove است، با این تفاوت که بسته‌ها به طور کامل پاکسازی و حذف می‌شوند (تمامی فایل‌های پیکربندی نیز پاک خواهند شد).

source

دستور source موجب می‌شود apt-get بسته‌های منبع را دریافت کند. APT بسته‌های موجود را بررسی می‌کند تا تصمیم بگیرد کدام بسته‌های منبع باید دریافت شوند. سپس آخرین نسخه بسته منبع را یافته و در دایرکتوری جاری بارگیری می‌کند. در صورت امکان، اولویت نسخه توزیع که از طریق گزینه APT::Default-Release، گزینه -t یا برای هر بسته با نحو «بسته/توزیع» تنظیم شده است، در نظر گرفته می‌شود.

آرگومان‌ها به عنوان نام بسته‌های باینری و منبع تفسیر می‌شوند. اگر می‌خواهید این رفتار را تغییر دهید، گزینه --only-source را ببینید.

بسته‌های منبع به صورت جداگانه از بسته‌های باینری و از طریق خطوط deb-src در فایل sources.list(5) تعریف می‌شوند. این بدان معنی است که برای هر مخزنی که می‌خواهید منابع را از آن دریافت کنید، باید چنین خطی را اضافه کنید؛ در غیر این صورت ممکن است نسخه‌های اشتباه (خیلی قدیمی/خیلی جدید) یا اصلاً هیچ بسته منبعی دریافت نکنید.

اگر گزینه --compile مشخص شده باشد، بسته با استفاده از dpkg-buildpackage برای معماری تعریف‌شده توسط --host-architecture به یک فایل باینری .deb کامپایل می‌شود. اگر گزینه --download-only مشخص شده باشد، بسته منبع استخراج نخواهد شد.

یک نسخه منبع خاص را می‌توان با افزودن علامت مساوی (=) به نام بسته و به دنبال آن شماره نسخه دانلود کرد، مشابه سازوکاری که برای بسته‌های باینری استفاده می‌شود. این کار امکان تطابق دقیق نام و نسخه بسته منبع را فراهم می‌کند و به طور ضمنی گزینه APT::Get::Only-Source را فعال می‌سازد.

توجه داشته باشید که بسته‌های منبع مانند بسته‌های باینری معمولی در پایگاه داده dpkg نصب و ردیابی نمی‌شوند؛ آن‌ها صرفاً مانند بایگانی‌های تاربال (tarball) منبع در دایرکتوری جاری بارگیری می‌شوند.

build-dep

دستور build-dep باعث می‌شود apt-get بسته‌هایی را نصب یا حذف کند تا تلاش نماید وابستگی‌های ساخت (build-dependencies) یک بسته منبع را برآورده سازد. به طور پیش‌فرض، وابستگی‌ها برای ساخت بسته به صورت بومی (native) برآورده می‌شوند. در صورت تمایل، می‌توان یک معماری میزبان را با استفاده از گزینه --host-architecture مشخص کرد.

آرگومان‌ها به عنوان نام بسته‌های باینری یا منبع تفسیر می‌شوند. اگر می‌خواهید این رفتار را تغییر دهید، به گزینه --only-source نگاهی بیندازید.

satisfy

دستور satisfy باعث می‌شود apt-get رشته‌های وابستگی مشخص‌شده را برآورده سازد. رشته‌های وابستگی می‌توانند شامل نمایه‌های ساخت (build profiles) و فهرست‌های محدودیت معماری در وابستگی‌های ساخت خود باشند. می‌توان به صورت اختیاری "Conflicts: " را در ابتدای آن‌ها قرار داد تا از برآورده شدن رشته وابستگی جلوگیری شود. می‌توان چندین رشته از یک نوع را مشخص کرد.

مثال: apt-get satisfy "foo" "Conflicts: bar" "baz (>> 1.0) | bar (= 2.0), moo"

عملگر منسوخ »</>« پشتیبانی نمی‌شود، در عوض از »<=/>=« استفاده کنید.

check

دستور check یک ابزار عیب‌یابی است؛ این دستور حافظه نهان (کَش) بسته‌ها را به‌روزرسانی کرده و وجود وابستگی‌های معیوب یا شکسته را بررسی می‌کند.

download

دستور download بسته باینری مشخص‌شده را در دایرکتوری جاری بارگیری می‌کند. اصالت بسته طبق روال معمول تأیید می‌شود.

clean

دستور clean مخزن محلی را از فایل‌های بسته بارگیری‌شده پاکسازی می‌کند. این دستور همه‌چیز به جز فایل قفل را از /var/cache/apt/archives/ و /var/cache/apt/archives/partial/ حذف می‌کند.

autoclean (و نام مستعار auto-clean از نسخه 1.1)

همانند clean، دستور autoclean مخزن محلی را از فایل‌های بسته بارگیری‌شده پاکسازی می‌کند. تفاوت در این است که تنها بسته‌هایی را حذف می‌کند که دیگر قابل بارگیری نیستند و تا حد زیادی بی‌استفاده شده‌اند. این امکان را فراهم می‌سازد تا حافظه نهان برای مدت طولانی بدون رشد مهارنشدنی نگهداری شود. گزینه پیکربندی APT::Clean-Installed در صورتی که روی »off« تنظیم شده باشد، بسته‌های نصب‌شده را از حذف شدن محافظت می‌کند.

distclean (و نام مستعار dist-clean)

دستور distclean تمامی فایل‌ها به جز Release، Release.gpg و InRelease را از مسیر /var/lib/apt/lists حذف می‌کند. به عنوان مثال می‌توان از آن هنگام نهایی‌سازی ایمیج‌هایی که قرار است میان کاربران توزیع شوند استفاده کرد. فایل‌های Release به دلایل امنیتی و جهت جلوگیری از انواع مختلف حملات حفظ می‌شوند.

autoremove (و نام مستعار auto-remove از نسخه 1.1)

دستور autoremove برای حذف بسته‌هایی استفاده می‌شود که به طور خودکار جهت برآورده کردن وابستگی‌های سایر بسته‌ها نصب شده بودند و اکنون دیگر مورد نیاز نیستند.

autopurge

مانند autoremove عمل می‌کند، اما autopurge فایل‌های پیکربندی را نیز حذف می‌نماید. این دستور فرم کوتاه‌شده‌ای برای autoremove --purge است.

changelog

دستور changelog تلاش می‌کند گزارش تغییرات (changelog) یک بسته را بارگیری کرده و با استفاده از sensible-pager نمایش دهد. به طور پیش‌فرض، گزارش تغییرات مربوط به نسخه نصب‌شده را نمایش می‌دهد. با این حال، می‌توانید همان گزینه‌های مربوط به دستور install را برای آن مشخص کنید.

indextargets

دستور indextargets به طور پیش‌فرض فهرستی با فرمت Deb822 از اطلاعات تمام فایل‌های داده (معروف به اهداف شاخص یا index targets) که توسط apt-get update بارگیری می‌شوند را نمایش می‌دهد. این دستور از گزینه --format برای تغییر فرمت خروجی و همچنین پذیرش خطوطی از ورودی استاندارد جهت پالایش رکوردها پشتیبانی می‌کند. این دستور عمدتاً به عنوان رابطی برای ابزارهای خارجی که با APT کار می‌کنند استفاده می‌شود تا اطلاعات و نام فایل‌های بارگیری‌شده را دریافت کرده و به جای دانلود مجدد از آن‌ها استفاده کنند. مستندات کامل در اینجا گنجانده نشده است، بلکه می‌توان آن را در فایل /usr/share/doc/apt/acquire-additional-files.md.gz در بسته apt-doc یافت.

تمامی گزینه‌های خط فرمان را می‌توان از طریق فایل پیکربندی تنظیم کرد؛ توضیحات، گزینه مربوطه برای تنظیم را مشخص می‌کند. برای گزینه‌های بولی (boolean)، می‌توانید تنظیمات فایل پیکربندی را با استفاده از مواردی مانند -f-، --no-f، -f=no یا چندین نوع نگارش دیگر لغو کنید.

--no-install-recommends

بسته‌های توصیه‌شده (recommended) را به عنوان وابستگی برای نصب در نظر نمی‌گیرد. مورد پیکربندی: APT::Install-Recommends.

--install-suggests

بسته‌های پیشنهادی (suggested) را به عنوان وابستگی برای نصب در نظر می‌گیرد. مورد پیکربندی: APT::Install-Suggests.

-d, --download-only

فقط بارگیری؛ فایل‌های بسته فقط بارگیری می‌شوند و استخراج یا نصب نخواهند شد. مورد پیکربندی: APT::Get::Download-Only.

-f, --fix-broken

رفع خرابی؛ تلاش می‌کند تا سیستم را از وابستگی‌های شکسته و معیوب رها سازد. این گزینه هنگام استفاده همراه با »install«/»remove« می‌تواند برخی بسته‌ها را نادیده بگیرد تا به APT اجازه دهد یک راهکار احتمالی را استنتاج کند. در صورت مشخص شدن بسته‌ها، این بسته‌ها باید مشکل را به طور کامل برطرف کنند. این گزینه گاهی اوقات هنگام اجرای اولیه APT ضروری است. خود APT اجازه وجود وابستگی‌های بسته شکسته را در سیستم نمی‌دهد. این احتمال وجود دارد که ساختار وابستگی‌های یک سیستم به قدری خراب باشد که نیاز به مداخله دستی داشته باشد (که معمولاً به معنای استفاده از dpkg --remove برای حذف برخی از بسته‌های مشکل‌دار است). استفاده از این گزینه همراه با -m ممکن است در برخی شرایط منجر به بروز خطا شود. مورد پیکربندی: APT::Get::Fix-Broken.

-m, --ignore-missing, --fix-missing

نادیده گرفتن بسته‌های مفقود؛ اگر بسته‌ها قابل بارگیری نباشند یا بررسی یکپارچگی پس از بارگیری با شکست مواجه شود (فایل‌های بسته ناقص یا خراب)، این بسته‌ها نگه داشته شده و نتیجه پردازش می‌شود. استفاده از این گزینه همراه با -f ممکن است در برخی موقعیت‌ها منجر به بروز خطا شود. اگر بسته‌ای برای نصب انتخاب شده باشد (به‌ویژه اگر در خط فرمان مشخص شده باشد) و امکان دانلود آن وجود نداشته باشد، بدون هشدار و بی‌صدا نگه داشته می‌شود. مورد پیکربندی: APT::Get::Fix-Missing.

--no-download

بارگیری بسته‌ها را غیرفعال می‌کند. منطقی‌ترین حالت استفاده از آن همراه با --ignore-missing است تا APT مجبور شود تنها از بسته‌های deb که قبلاً بارگیری کرده است استفاده کند. مورد پیکربندی: APT::Get::Download.

-q, --quiet

حالت بی‌صدا؛ خروجی مناسبی برای ثبت در وقایع (لاگ) بدون نمایش نوار پیشرفت تولید می‌کند. تکرار بیشتر حرف »q« خروجی‌های بیشتری را سرکوب می‌کند (حداکثر تا ۲ بار). همچنین می‌توانید از -q=# برای تنظیم سطح سکوت استفاده کنید که تنظیمات فایل پیکربندی را لغو می‌کند. توجه داشته باشید که سطح سکوت ۲ به طور ضمنی گزینه -y را فعال می‌کند. شما هرگز نباید از -qq بدون یک سوییچ بدون‌عمل (مانند -d، --print-uris یا -s) استفاده کنید، زیرا ممکن است APT تصمیماتی بگیرد که انتظار آن را ندارید. مورد پیکربندی: quiet.

-s, --simulate, --just-print, --dry-run, --recon, --no-act

بدون عمل؛ شبیه‌سازی رویدادهایی را که بر اساس وضعیت فعلی سیستم رخ خواهند داد انجام می‌دهد، اما سیستم را واقعاً تغییر نمی‌دهد. قفل‌گذاری غیرفعال می‌شود (Debug::NoLocking)، بنابراین وضعیت سیستم ممکن است در حین اجرای apt-get تغییر کند. شبیه‌سازی‌ها می‌توانند توسط کاربران غیرریشه (non-root) نیز اجرا شوند که ممکن است دسترسی خواندن به تمام فایل‌های پیکربندی APT را نداشته باشند و این امر می‌تواند شبیه‌سازی را تحریف کند. علاوه بر این، به طور پیش‌فرض هشداری به کاربران غیرریشه نمایش داده می‌شود (APT::Get::Show-User-Simulation-Note). مورد پیکربندی: APT::Get::Simulate.

شبیه‌سازی مجموعه‌ای از خطوط را چاپ می‌کند که هر کدام نشان‌دهنده یک اقدام dpkg است: پیکربندی (Conf)، حذف (Remv) یا استخراج (Inst). کروشه‌ها بسته‌های شکسته را نشان می‌دهند و یک جفت کروشه خالی نشان‌دهنده شکستگی‌هایی است که عواقبی ندارند (نادر).

-y, --yes, --assume-yes

پاسخ «بله» خودکار به پرسش‌ها؛ تلاش می‌کند به تمام پرسش‌ها با «بله» پاسخ دهد و بدون تعامل کاربر اجرا شود. اگر وضعیت نامطلوبی رخ دهد (مانند تغییر در یک بسته نگه‌داشته‌شده، نصب یک بسته احرازهویت‌نشده یا حذف یک بسته حیاتی و ضروری)، عملیات apt-get متوقف خواهد شد. مورد پیکربندی: APT::Get::Assume-Yes.

--assume-no

پاسخ «خیر» خودکار به تمام پرسش‌ها. مورد پیکربندی: APT::Get::Assume-No.

--no-show-upgraded

فهرست تمام بسته‌هایی را که امکان ارتقای آن‌ها وجود دارد چاپ نمی‌کند. مورد پیکربندی: APT::Get::Show-Upgraded.

-V, --verbose-versions

نسخه‌های کامل بسته‌هایی را که ارتقا یافته یا نصب شده‌اند نمایش می‌دهد. مورد پیکربندی: APT::Get::Show-Versions.

--no-list-columns

فهرست بسته‌ها را بدون ستون‌بندی نمایش می‌دهد. به طور پیش‌فرض فهرست بسته‌ها به سبک دستور »ls« چیده می‌شوند. مورد پیکربندی: APT::Get::List-Columns.

--comment

مقدار مشخص‌شده را به فیلد Comment: در فایل history.log اضافه می‌کند. مورد پیکربندی: APT::History::Comment.

-a, --host-architecture

این گزینه معماری بسته‌های ساخته‌شده توسط apt-get source --compile و چگونگی برآورده ساختن وابستگی‌های چندمعماری (cross-build dependencies) را کنترل می‌کند. به طور پیش‌فرض تنظیم نشده است، بدین معنی که معماری میزبان همان معماری ساخت است (که توسط APT::Architecture تعریف می‌شود). مورد پیکربندی: APT::Get::Host-Architecture.

-P, --build-profiles

این گزینه نمایه‌های ساخت فعال‌شده‌ای را کنترل می‌کند که بسته منبع با استفاده از apt-get source --compile تحت آن‌ها ساخته می‌شود و همچنین نحوه برآورده شدن وابستگی‌های چندمعماری را مدیریت می‌کند. به طور پیش‌فرض هیچ نمایه ساختی فعال نیست. می‌توان چندین نمایه ساخت را به طور همزمان با جدا کردن آن‌ها به وسیله کاما فعال کرد. مورد پیکربندی: APT::Build-Profiles.

-b, --compile, --build

بسته‌های منبع را پس از بارگیری کامپایل می‌کند. مورد پیکربندی: APT::Get::Compile.

--ignore-hold

نادیده گرفتن نگه‌داشتن بسته؛ این گزینه باعث می‌شود apt-get وضعیت «نگه‌داشته‌شده» (hold) تعیین‌شده برای بسته را نادیده بگیرد. این امر می‌تواند در ترکیب با dist-upgrade برای نادیده گرفتن تعداد زیادی از وضعیت‌های نگه‌داری ناخواسته مفید باشد. مورد پیکربندی: APT::Ignore-Hold.

--with-new-pkgs

امکان نصب بسته‌های جدید را هنگام استفاده همراه با upgrade فراهم می‌کند. این مورد زمانی مفید است که ارتقای یک بسته نصب‌شده نیازمند نصب وابستگی‌های جدید باشد. به جای نگه‌داشتن بسته، دستور upgrade بسته را ارتقا داده و وابستگی‌های جدید را نصب خواهد کرد. توجه داشته باشید که upgrade با این گزینه هرگز بسته‌ای را حذف نخواهد کرد و فقط افزودن بسته‌های جدید را مجاز می‌شمارد. مورد پیکربندی: APT::Get::Upgrade-Allow-New.

--no-upgrade

عدم ارتقای بسته‌ها؛ هنگامی که همراه با install استفاده شود، گزینه no-upgrade در خط فرمان مانع از ارتقای بسته‌هایی می‌شود که قبلاً نصب شده‌اند. مورد پیکربندی: APT::Get::Upgrade.

--only-upgrade

عدم نصب بسته‌های جدید؛ هنگامی که همراه با install استفاده شود، گزینه only-upgrade فقط بسته‌های از قبل نصب‌شده را ارتقا داده و درخواست‌های نصب بسته‌های جدید را نادیده می‌گیرد. مورد پیکربندی: APT::Get::Only-Upgrade.

--allow-downgrades

این گزینه‌ای خطرناک است که باعث می‌شود APT هنگام تنزل رتبه بسته‌ها (downgrade) بدون پرسش و تأیید ادامه دهد. نباید از آن استفاده شود مگر در شرایط بسیار خاص. استفاده از آن ممکن است سیستم شما را تخریب کند. مورد پیکربندی: APT::Get::allow-downgrades. معرفی‌شده در APT 1.1.

--allow-remove-essential

اجبار پاسخ «بله»؛ این یک گزینه خطرناک است که باعث می‌شود APT در صورت نیاز به حذف بخش‌های حیاتی و اساسی سیستم، بدون درخواست تأیید ادامه دهد. نباید از آن استفاده شود مگر در شرایط بسیار خاص. استفاده از آن ممکن است سیستم شما را نابود کند. مورد پیکربندی: APT::Get::allow-remove-essential. معرفی‌شده در APT 1.1.

--allow-change-held-packages

اجبار پاسخ «بله»؛ این گزینه‌ای خطرناک است که باعث می‌شود APT در صورت نیاز به تغییر بسته‌های نگه‌داشته‌شده (held packages)، بدون درخواست تأیید ادامه دهد. نباید از آن استفاده شود مگر در شرایط بسیار خاص. استفاده از آن ممکن است سیستم شما را تخریب کند! مورد پیکربندی: APT::Get::allow-change-held-packages. معرفی‌شده در APT 1.1.

--force-yes

اجبار پاسخ «بله»؛ این گزینه‌ای خطرناک است که باعث می‌شود APT هنگام انجام اقدامات بالقوه مضر بدون درخواست تأیید ادامه دهد. نباید از آن استفاده شود مگر در شرایط بسیار ویژه. استفاده از force-yes می‌تواند سیستم شما را تخریب کند! مورد پیکربندی: APT::Get::force-yes. این گزینه منسوخ شده و در نسخه 1.1 با گزینه‌های --allow-unauthenticated، --allow-downgrades، --allow-remove-essential و --allow-change-held-packages جایگزین شده است.

--print-uris

به جای بارگیری فایل‌ها، آدرس‌های اینترنتی (URI) آن‌ها چاپ می‌شود. هر URI شامل مسیر، نام فایل مقصد، اندازه و هش MD5 مورد انتظار خواهد بود. توجه داشته باشید نام فایلی که نوشته می‌شود همیشه با نام فایل در سایت راه دور مطابقت ندارد. این گزینه برای دستورات source و update نیز کار می‌کند. هنگام استفاده با دستور update، مقادیر MD5 و اندازه گنجانده نمی‌شوند و استخراج و از حالت فشرده خارج کردن فایل‌ها بر عهده کاربر است. مورد پیکربندی: APT::Get::Print-URIs.

--purge

استفاده از »purge« به جای »remove« برای هر چیزی که قرار است حذف شود. یک علامت ستاره (»*«) در کنار بسته‌هایی که برای پاکسازی کامل نشانه‌گذاری شده‌اند نمایش داده می‌شود. remove --purge معادل دستور purge است. مورد پیکربندی: APT::Get::Purge.

--reinstall

نصب مجدد بسته‌هایی که در حال حاضر با جدیدترین نسخه نصب شده‌اند. مورد پیکربندی: APT::Get::ReInstall.

--list-cleanup

این گزینه به صورت پیش‌فرض فعال است. برای غیرفعال کردن آن از --no-list-cleanup استفاده کنید. در صورت فعال بودن، apt-get محتویات /var/lib/apt/lists را به صورت خودکار مدیریت می‌کند تا اطمینان حاصل شود فایل‌های منسوخ و قدیمی حذف می‌شوند. تغییر مکرر فهرست منابع تنها دلیل معقول برای غیرفعال کردن این گزینه است. مورد پیکربندی: APT::Get::List-Cleanup.

-S, --snapshot

این گزینه تصویر لحظه‌ای (snapshot) انتخاب‌شده را برای آرشیوهایی که دارای Snapshot: enable در مدخل منبع خود هستند کنترل می‌کند. به عنوان مثال، -S 20220102T030405Z یک تصویر لحظه‌ای از تاریخ ۲ ژانویه ۲۰۲۲ ساعت ۰۳:۰۴:۰۵ UTC را انتخاب می‌کند. مورد پیکربندی: APT::Snapshot؛ همچنین به صفحه راهنمای sources.list(5) مراجعه کنید.

-t, --target-release, --default-release

این گزینه ورودی پیش‌فرض موتور خط‌مشی (policy engine) را کنترل می‌کند؛ این گزینه با استفاده از رشته انتشار مشخص‌شده، یک پین (pin) پیش‌فرض با اولویت ۹۹۰ ایجاد می‌کند. این امر تنظیمات عمومی موجود در /etc/apt/preferences را نادیده می‌گیرد. بسته‌های دارای پین‌گذاری خاص تحت تأثیر مقدار این گزینه قرار نمی‌گیرند. به طور خلاصه، این گزینه به شما کنترل ساده‌ای بر روی این که بسته‌ها از کدام توزیع بارگیری شوند می‌دهد. چند مثال متداول می‌تواند شامل -t '2.1*'، -t unstable یا -t sid باشد. مورد پیکربندی: APT::Default-Release؛ همچنین صفحه راهنمای apt_preferences(5) را مطالعه کنید.

--trivial-only

تنها اقداماتی را اجرا می‌کند که «بدیهی» (trivial) هستند. از لحاظ منطقی شبیه به --assume-yes است؛ در جایی که --assume-yes به پرسش‌ها پاسخ «بله» می‌دهد، گزینه --trivial-only پاسخ «خیر» خواهد داد. مورد پیکربندی: APT::Get::Trivial-Only.

--mark-auto

پس از نصب موفقیت‌آمیز، تمام بسته‌های تازه نصب‌شده را به عنوان بسته‌های خودکار نشانه‌گذاری می‌کند، بنابراین در صورتی که هیچ بسته نصب‌شده دستی به آن‌ها وابسته نباشد، حذف خواهند شد. این امر معادل اجرای apt-mark auto برای تمام بسته‌های نصب‌شده است. مورد پیکربندی: APT::Get::Mark-Auto.

--no-remove

اگر قرار باشد هر بسته‌ای حذف شود، apt-get بلافاصله بدون درخواست تأیید متوقف می‌شود. مورد پیکربندی: APT::Get::Remove.

--auto-remove, --autoremove

اگر دستور اجراشده install یا remove باشد، این گزینه مانند اجرای دستور autoremove باعث حذف بسته‌های وابسته‌ای می‌شود که دیگر مورد نیاز نیستند. مورد پیکربندی: APT::Get::AutomaticRemove.

--only-source

تنها برای دستورات source و build-dep کاربرد دارد. نشان می‌دهد که نام‌های منبع مشخص‌شده از طریق جدول بسته‌های باینری جستجو نمی‌شوند. این بدان معنی است که در صورت تعیین این گزینه، این دستور فقط نام‌های بسته منبع را به عنوان آرگومان می‌پذیرد، به جای اینکه نام‌های بسته باینری را بپذیرد و به دنبال بسته منبع متناظر بگردد. مورد پیکربندی: APT::Get::Only-Source.

--diff-only, --dsc-only, --tar-only

فقط فایل‌های diff ،dsc یا tar یک آرشیو منبع را بارگیری می‌کند. موارد پیکربندی: APT::Get::Diff-Only، APT::Get::Dsc-Only و APT::Get::Tar-Only.

--arch-only

تنها وابستگی‌های ساخت وابسته به معماری را پردازش می‌کند. مورد پیکربندی: APT::Get::Arch-Only.

--indep-only

تنها وابستگی‌های ساخت مستقل از معماری را پردازش می‌کند. مورد پیکربندی: APT::Get::Indep-Only.

--arch-only --indep-only

تنها وابستگی‌های ساختی را پردازش می‌کند که نه وابسته به معماری هستند و نه مستقل از معماری؛ اشتراک دو گزینه قبلی.

--allow-unauthenticated

اگر امکان احراز هویت بسته‌ها وجود نداشته باشد، آن را نادیده گرفته و اعلام نمی‌کند. این مورد می‌تواند هنگام کار با مخازن محلی مفید باشد، اما در صورتی که اصالت داده‌ها به روش دیگری توسط خود کاربر تضمین نشده باشد، یک خطر امنیتی بزرگ به شمار می‌رود. استفاده از گزینه Trusted برای مدخل‌های sources.list(5) معمولاً باید بر این لغو سراسری ترجیح داده شود. مورد پیکربندی: APT::Get::AllowUnauthenticated.

--allow-insecure-repositories

به دستور »update« اجازه می‌دهد تا داده‌های غیرقابل تأیید را از منابع پیکربندی‌شده دریافت کند. در غیر این صورت APT در حین اجرای دستور »update« برای مخازن بدون امضای رمزنگاری معتبر با شکست مواجه می‌شود. جزئیات بیشتر درباره این مفهوم و پیامدهای آن را می‌توانید در apt-secure(8) بیابید. مورد پیکربندی: Acquire::AllowInsecureRepositories.

--allow-releaseinfo-change

به دستور به‌روزرسانی اجازه می‌دهد تا بارگیری داده‌ها از مخزنی را که اطلاعات انتشار موجود در آن تغییر کرده است (مانند یک انتشار اصلی جدید) ادامه دهد. APT هنگام اجرای دستور به‌روزرسانی برای چنین مخازنی تا زمان تأیید کاربر با شکست مواجه می‌شود تا اطمینان حاصل شود که کاربر برای تغییرات آماده است. جزئیات بیشتر این مفهوم و پیکربندی آن را در apt-secure(8) بیابید.

گزینه‌های ویژه‌ای (--allow-releaseinfo-change-Field) وجود دارند تا تغییرات را فقط برای فیلدهای خاصی مانند origin، label، codename، suite، version و defaultpin مجاز کنند. همچنین به apt_preferences(5) مراجعه کنید. مورد پیکربندی: Acquire::AllowReleaseInfoChange.

--show-progress

هنگام نصب، حذف یا ارتقای بسته‌ها، اطلاعات پیشرفت کاربرپسندی را در پنجره ترمینال نمایش می‌دهد. اطلاعات مربوط به نسخه ماشین‌خوان این داده‌ها را می‌توانید در فایل README.progress-reporting در دایرکتوری مستندات apt/doc بیابید. موارد پیکربندی: Dpkg::Progress و Dpkg::Progress-Fancy.

--with-source filename

فایل مشخص‌شده را به عنوان منبعی برای فراداده (متادیتا) اضافه می‌کند. این گزینه را می‌توان چندین بار برای افزودن چندین فایل به کار برد. برای جزئیات بیشتر درباره توضیحات --with-source به apt-cache(8) مراجعه کنید.

-eany, --error-on=any

در صورت وقوع هرگونه خطایی، حتی خطاهای موقتی، باعث شکست دستور به‌روزرسانی می‌شود.

-U, --update

دستور update را پیش از دستور مشخص‌شده اجرا می‌کند. این ویژگی برای دستورات نصب، حذف یا به‌روزرسانی بسته‌ها مانند install، remove، safe-upgrade و full-upgrade پشتیبانی می‌شود. این کار می‌تواند برای اطمینان از این که دستور همیشه آخرین نسخه را نصب می‌کند، یا در ترکیب با گزینه --snapshot جهت اطمینان از وجود تصویر لحظه‌ای در هنگام نصب، مفید باشد.

هشدار: به دلیل محدودیت‌های فنی، قفل‌های مجزا برای هر فاز دریافت می‌شوند؛ بنابراین در حین یک نصب، ممکن است پس از اجرای موفقیت‌آمیز به‌روزرسانی، دریافت قفل‌ها با شکست مواجه شود. تا زمانی که این مشکل برطرف شود، این قابلیت صرفاً یک شکر نحوی (syntactic sugar) برای apt update && apt install است.

-h, --help

نمایش خلاصه کوتاهی از نحوه استفاده

-v, --version

نمایش نسخه برنامه

--audit

نمایش پیام‌های بازرسی (و اعلان‌ها). این گزینه، گزینه »quiet« را لغو می‌کند، اما تنها برای پیام‌های اطلاع‌رسانی و نه برای پیام‌های پیشرفت.

-c, --config-file

فایل پیکربندی؛ فایل پیکربندی مورد استفاده را مشخص می‌کند. برنامه ابتدا فایل پیکربندی پیش‌فرض و سپس این فایل پیکربندی را می‌خواند. در صورتی که تنظیمات پیکربندی باید پیش از پیکربندی پیش‌فرض ارزیابی شوند، فایلی را در متغیر محیطی APT_CONFIG تعیین کنید. برای اطلاعات مربوط به نحو، apt.conf(5) را مطالعه کنید.

-o, --option

تنظیم یک گزینه پیکربندی؛ یک گزینه پیکربندی دلخواه را مقداردهی می‌کند. نحو آن به صورت -o Foo::Bar=bar است. -o و --option را می‌توان چندین بار برای تنظیم گزینه‌های مختلف استفاده کرد.

--cli-version

درخواست یک نسخه مشخص از رابط خط فرمان (CLI). این یک الگو است که نسخه MAJOR.MINOR را می‌پذیرد. می‌توانید نسخه MINOR را حذف کنید که در این صورت آخرین سطح فرعی (minor) پشتیبانی‌شده استفاده خواهد شد.

مسیرهای نسخه به شرح زیر ارائه می‌شوند: نسخه 3.2 نسخه‌های معادل 0.32، 1.22 و 2.12 دارد که قابلیت‌های جدید را برای نسخه‌های اصلی مشخص‌شده خود پیاده‌سازی می‌کنند.

یک حالت خاص الگوی نسخه X.9 است: نسخه‌ای مانند 2.9 پس از خود نسخه 3.0 را دارد، اما 2.10 مستقیماً پس از 2.8 قرار می‌گیرد؛ با توجه به اینکه ما از شماره نسخه‌های فرد به عنوان سری‌های توسعه استفاده می‌کنیم (2.9 سری توسعه 3.0 است).

این قابلیت در نسخه 3.1.10 از APT معرفی شده و جایگزین پیکربندی مخصوص به باینری شده است. می‌توانید از APT::Version برای تأثیر مشابه روی باینری‌های قدیمی‌تر استفاده کنید؛ برای مثال از -o APT::Version=2 استفاده کنید تا apt(8) مانند سری 2.x رفتار کند.

مقدار پیش‌فرض، نسخه فعلی 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.

/etc/apt/apt.conf

فایل پیکربندی APT. مورد پیکربندی: Dir::Etc::Main.

/etc/apt/apt.conf.d/

قطعه‌فایل‌های پیکربندی APT. مورد پیکربندی: Dir::Etc::Parts.

/etc/apt/preferences

فایل تنظیمات نسخه. در اینجا می‌توانید پین‌گذاری (pinning) را تعیین کنید، یعنی تنظیمی برای دریافت بسته‌های خاص از یک منبع مجزا یا از نسخه دیگری از یک توزیع. مورد پیکربندی: Dir::Etc::Preferences.

/etc/apt/preferences.d/

قطعه‌فایل‌ها برای ترجیحات و تنظیمات نسخه. مورد پیکربندی: Dir::Etc::PreferencesParts.

/var/cache/apt/archives/

محل ذخیره‌سازی فایل‌های بسته دریافت‌شده. مورد پیکربندی: Dir::Cache::Archives.

/var/cache/apt/archives/partial/

محل ذخیره‌سازی فایل‌های بسته در حال انتقال. مورد پیکربندی: Dir::Cache::Archives (به صورت ضمنی partial اضافه می‌شود)

/var/lib/apt/lists/

محل ذخیره‌سازی اطلاعات وضعیت هر منبع بسته مشخص‌شده در sources.list(5). مورد پیکربندی: Dir::State::Lists.

/var/lib/apt/lists/partial/

محل ذخیره‌سازی اطلاعات وضعیت در حال انتقال. مورد پیکربندی: Dir::State::Lists (به صورت ضمنی partial اضافه می‌شود)

apt-cache(8), apt-cdrom(8), dpkg(1), sources.list(5), apt.conf(5), apt-patterns(7), apt-config(8), apt-secure(8), راهنمای کاربری APT در /usr/share/doc/apt-doc/, apt_preferences(5), راهنمای چگونه APT (the APT Howto).

apt-get در صورت عملکرد عادی مقدار 0 و در صورت بروز خطا مقدار ده‌دهی 100 را بازمی‌گرداند.

صفحه باگ‌های APT[1]. اگر مایل به گزارش اشکال یا باگ در APT هستید، لطفاً /usr/share/doc/debian/bug-reporting.txt یا دستور reportbug(1) را ببینید.

Jason Gunthorpe

تیم APT

1.
صفحه باگ‌های APT
20 May 2026 APT 3.3.3