APT: تفاوت بین نسخه‌ها

از ویکی فارسی اوبونتو
پرش به: ناوبری، جستجو
(طرز کار: اضافه کردن apt policy)
 
(۴۶ نسخه‌ٔ میانی ویرایش شده توسط ۴ کاربر نشان داده نشده)
سطر ۱: سطر ۱:
'''ابزار بسته‌بندی پیشرفته''' '''(اپت)''' (به انگلیسی APT : Advanced Packaging Tool) یکی از برنامه‌های مدیریت بسته در [[Distro|توزیع‌]]‌های مبتنی بر [[دبیان]] است. هدف از ایجاد این نرم‌افزار، جست‌وجو، نصب و مدیریت آسان بسته‌های نرم‌افزاری است.
+
'''ابزار بسته‌بندی پیشرفته(اپت)''' (به انگلیسی APT : Advanced Packaging Tool) یکی از برنامه‌های [[Package Manager|مدیریت بسته]] در [[Distro|توزیع‌]]‌های مبتنی بر [[دبیان]] است.
  
= رابط‌ها =
 
APT دارای چند رابط [[CLI|خط فرمان]] است که مهم‌ترین آن‌ها [[apt-get]] و [[apt-cache]] بودند. پس از اوبونتو ۱۴.۰۴، پیشنهاد می‌شود که کاربران از خود <code>apt</code> در محیط [[Terminal|پایانه]] استفاده کنند.
 
  
اپت در سیستم‌عامل [[Open Solaris]] نیز مورد استفاده قرار می‌گیرد. در عین حال امکان وارد کردن آن به سیستم‌عامل [[Mac OS|مک]] هم از طریق بستهٔ نرم‌افزاری فینک وجود دارد. با الهام از apt-get، نرم‌افزار win-get طرّاحی شده که شبیه به APT، ولی بر روی سیستم‌عامل [[Windows|ویندوز]] کار می‌کند.
+
== هدف ==
 +
جست‌وجو، نصب و مدیریت آسان بسته‌های نرم‌افزاری است.
  
= طرز کار =
+
== رابط‌ها ==
فهرست [[Repo|مخازن]] در پروندهٔ <code>etc/apt/sources.list/</code> و پرونده‌های مجزّا در مسیر <code>/etc/apt/sources.list.d/</code> قرار گرفته‌اند. این مخازن می‌توانند دیسک‌های نوری، پرونده‌های تحت شبکه و شاخه‌های [[ftp]] یا [[http]] باشند. اگر بسته‌ای در شاخه‌ها یا دیسک سخت موجود باشد، به صورت خودکار دریافت شده و نصب می‌گردد.
+
APT دارای چند رابط [[CLI|خط فرمان]] است که مهم‌ترین آن‌ها [[apt-get]] و [[apt-cache]] بودند. پس از اوبونتو ۱۴.۰۴، پیشنهاد می‌شود که کاربران از خود {{ic|apt}} در [[شبیه‌ساز پایانه]] استفاده کنند.
  
تمامی بسته‌ها با قالب [[deb]] بوده و پیش‌نیازها به صورت خودکار شناسایی و نصب می‌شوند، یعنی در هنگام نصب یک برنامه، کتاب‌خانه‌های مورد نیاز برای اجرای آن برنامه نیز دریافت و نصب می‌شوند. نرم‌افزار اپت برمبنای [[dpkg]] کار می‌کند.
+
اپت در سیستم‌عامل [[Open Solaris]] نیز استفاده می‌شود. در عین حال امکان وارد کردن آن به سیستم‌عامل [[Mac OS|مک]] هم با بستهٔ نرم‌افزاری فینک وجود دارد. با الهام از apt-get، نرم‌افزار win-get طرّاحی شده که شبیه به APT، ولی بر روی سیستم‌عامل [[Windows|ویندوز]] کار می‌کند. هم‌چنین با استفاده از کارهٔ Termux، امکان استفاده از اپت روی [[Android|اندروید]] نیز وجود دارد.
  
* برای دیدن بسته‌های نصب شده بر روی سیستم‌عامل، از این دستور استفاده می‌شود:
+
== روش کار ==
 +
فهرست [[Repo|مخازن]] در پروندهٔ {{ic|/etc/apt/sources.list}} و پرونده‌های مجزّا در مسیر {{ic|/etc/apt/sources.list.d/}} قرار گرفته‌اند. این مخازن می‌توانند دیسک‌های نوری، پرونده‌های تحت شبکه و شاخه‌های [[ftp]] یا [[http]] باشند. اگر بسته‌ای در شاخه‌ها یا دیسک سخت موجود باشد، به صورت خودکار دریافت شده و نصب می‌گردد.
  
<pre language="bash">
+
تمامی بسته‌ها در قالب [[deb]] بوده و پیش‌نیازها نیز به صورت خودکار شناسایی و نصب می‌شوند، یعنی در هنگام نصب یک برنامه، کتابخانه‌های مورد نیاز برای اجرای آن برنامه نیز دریافت و نصب می‌شوند. نرم‌افزار اپت برمبنای [[dpkg]] کار می‌کند.
$ apt list --installed
 
</pre>
 
  
* برای [[Update|به‌روز رسانی]] مخازن، از دستور زیر استفاده می‌شود. این کار، فهرست بسته‌های موجود، توضیحات، نگارش و گزارش تغییرات آن‌ها را از مخازن گرفته و در [[Database|پایگاه دادهٔ]] سامانه ذخیره می‌کند.
 
  
<pre language="bash">
+
===نصب و حذف بسته‌ها===
$ sudo apt update
 
</pre>
 
  
* برای دیدن بسته‌های قابل [[Upgrade|ارتقا]]، از این دستور استفاده می‌شود:
+
* برای [[Update|به‌روز رسانی]] مخازن، از فرمان زیر استفاده می‌شود. این کار، فهرست بسته‌های موجود، توضیحات، نگارش و گزارش تغییرات آن‌ها را از مخازن گرفته و در [[Database|پایگاه دادهٔ]] سامانه ذخیره می‌کند.
 +
{{bc|$ sudo apt update}}
  
<pre language="bash">
+
* برای نصب یک بسته، یا ارتقای آن از فرمان زیر استفاده می‌شود:
$ apt list --upgradable
+
{{bc|$ sudo apt install PACKAGE}}
</pre>
 
  
* برای دیدن اطلاعات بیشتر در مورد بسته‌ه، شامل توضیحات، حجم، صفحهٔ خانگی و... از این دستور استفاده می‌شود:
+
* برای برداشتن یک بستهٔ نصب‌شده، از این فرمان استفاده می‌شود:
 +
{{bc|$ sudo apt remove PACKAGE}}
  
<pre language="bash">
+
* برای برداشتن یک بسته به صورتی که پرونده‌های وابسته به آن نیز به طور کامل حذف شوند، از فرمان زیر استفاده می‌شود:
$ apt show PACKAGE
+
{{bc|$ sudo apt remove --purge PACKAGE}}
</pre>
 
  
* برای ارتقای بسته‌های عادی از این دستور استفاده می شود:
+
* برای حذف کتابخانه‌ها و بسته‌های پیش‌نیازی که دیگر به آن‌ها نیازی نیست، از این فرمان استفاده می‌شود:
 +
{{bc|$ sudo apt autoremove}}
  
<pre language="bash">
+
* می‌توان عملیات بالا را به صورت هم‌زمان انجام داد:
$ sudo apt upgrade
+
{{bc|$ sudo apt remove --purge --autoremove PACKAGE}}
</pre>
+
این کار به معنی حذف یک بسته و تمام پرونده‌ها و پیش‌نیازهای وابسته به آن بسته است.
  
* برخی از ارتقاها برای رفع ناسازگاری‌ها، نیاز به حذف بسته‌های دیگر دارند. برای انجام این دسته از ارتقاها از دستور زیر استفاده می‌شود:
 
  
<pre language="bash">
+
====نصب نرم‌افزار از یک مخزن خاص ====
$ sudo apt full-uprgade
+
برای نصب نرم‌افزار از مخزنی خاص که پیش‌فرض نیست از انتحاب t- استفاده می‌شود:
</pre>
+
برای نمونه
  
* برای نصب یک بسته از دستور زیر استفاده می‌شود:
+
نصب از مخزن sid
 +
{{bc|$ apt install vlc -t sid}}
  
<pre language="bash">
+
دریافت کد منبع از مخزن sid
$ sudo apt install PACKAGE
+
{{bc|$ apt source vlc -t sid}}
</pre>
 
  
* برای برداشتن و حذف یک بستهٔ نصب‌شده، از این دستور استفاده می‌شود:
+
دریافت پروندهٔ deb از مخزن sid
 +
{{bc|$ apt download vlc -t sid}}
  
<pre language="bash">
+
بدیهی است که برای استفاده از این ویژگی باید فهرست مخازن sid در تنظیمات apt موجود باشد.
$ sudo apt remove PACKAGE
 
</pre>
 
  
* برای حذف یک بسته به صورتی که پرونده‌های وابسته به آن نیز به طور کامل حذف شوند، از دستور زیر استفاده می‌شود:
+
===ارتقای بسته‌های نصب شده===
  
<pre language="bash">
+
نخست سیاههٔ مخازن را به روز می‌کنیم.
$ sudo apt purge PACKAGE
+
{{bc|$ sudo apt update}}
</pre>
 
  
* برای حذف کتاب‌خانه‌ها و بسته‌های پیش‌نیازی که دیگر به آن‌ها نیازی نیست، از این دستور استفاده می‌شود:
+
* برای دیدن بسته‌های قابل [[Upgrade|ارتقا]]، از این فرمان استفاده می‌شود:
 +
{{bc|$ apt list --upgradable}}
  
<pre language="bash">
+
* برای ارتقای بسته‌های عادی از این فرمان استفاده می شود:
$ sudo apt autoremove
+
{{bc|$ sudo apt upgrade}}
</pre>
 
  
یا از معادل آن،به این صورت:
+
* برخی از ارتقاها برای رفع ناسازگاری‌ها، نیاز به حذف بسته‌های دیگر دارند. برای انجام این دسته از ارتقاها از فرمان زیر استفاده می‌شود:
 +
{{bc|$ sudo apt full-uprgade}}
  
<pre language="bash">
+
===بارگیری===
$ sudo apt purge --autoremove PACKAGE
+
* برای بارگیری پرونده deb:
</pre>
+
{{bc|$ apt download PACKAGE}}
  
استفاده می‌شود که به معنی حذف یک بسته و تمام پرونده‌ها و پیش‌نیازهای وابسته به آن بسته می‌باشد.
+
* برای بارگیری کد منبع نرم‌افزار:
 +
{{bc|$ apt source PACKAGE}}
 +
برای این کار باید فهرست مخازن deb-src از پیش تنظیم شده باشد.
  
 +
===اطلاعات یک بسته===
  
 +
* برای دیدن اطلاعات بیش‌تر در مورد بسته‌، شامل توضیحات، حجم، صفحهٔ خانگی و... از این فرمان استفاده می‌شود:
 +
{{bc|$ apt show PACKAGE}}
  
 
* برای نشان دادن نسخه‌های موجود از یک بسته و اولویت آن‌ها
 
* برای نشان دادن نسخه‌های موجود از یک بسته و اولویت آن‌ها
 +
{{bc|$ apt policy PACKAGE}}
  
<pre language="bash">
+
* برای جست‌وجوی بسته‌های مربوط به یک عبارت، از این فرمان استفاده می‌شود:
$ sudo apt policy PACKAGE
+
{{bc|$ apt search PATTERN}}
</pre>
 
  
 +
* برای دیدن همهٔ بسته‌های نصب شده با مدیربستهٔ apt، از این فرمان استفاده می‌شود:
 +
{{bc|$ apt list --installed}}
  
* برای جست‌وجوی بسته‌های مربوط به یک عبارت، از این دستور استفاده می‌شود:
+
===سایر===
 
+
*برای تمیز کردن کش apt
<pre language="bash">
+
{{bc|$ apt clean}}
$ apt search PATTERN
 
</pre>
 
 
 
* برای بارگیری کد منبع نرم‌افزار:
 
 
 
<pre language="bash">
 
$ apt source PACKAGE
 
</pre>
 
  
 
*برای دیدن گاو!
 
*برای دیدن گاو!
 +
{{bc|$ apt moo}}
  
<pre language="bash">
+
== بسته‌های مکمّل ==
$ apt moo
 
</pre>
 
  
= بسته‌های مکمّل =
+
=== apt-transport-https ===
 
+
این بسته، بسته‌ٔ مکمّلی برای APT است که پشتیبانی از [https://wiki.ubuntu.ir/wiki/%D9%85%D8%AE%D8%B2%D9%86 مخزن‌‌های] رمزشده با [[Protocol|قرارداد]] https را به آن می‌افزاید.
== apt-transport-https ==
+
منظور شاخه‌های https در داخل پروندهٔ {{ic|/etc/apt/sources.list}} است.
این بسته، بسته‌ٔ مکمّلی برای APT است که پشتیبانی از [[Repository|مخزن‌‌های]]‌ رمزشده با [[Protocol|قرارداد]] https را به آن می‌افزاید.
 
منظور شاخه‌های https در داخل پروندهٔ <code>etc/apt/sources.list/</code> می‌باشد.
 
  
 
برای نصب، از فرمان زیر استفاده کنید:
 
برای نصب، از فرمان زیر استفاده کنید:
 +
{{bc|$ sudo apt install apt-transport-https}}
  
<pre language="bash">
+
=== apt-transport-tor ===
$ sudo apt install apt-transport-https
 
</pre>
 
 
 
== apt-transport-tor ==
 
 
این بسته، بسته‌ٔ مکمّلی برای APT است که پشتیبانی از [[Repository|مخزن‌‌ها]]‌ را از پشت شبکهٔ [[Tor|تور]] به آن می‌افزاید.
 
این بسته، بسته‌ٔ مکمّلی برای APT است که پشتیبانی از [[Repository|مخزن‌‌ها]]‌ را از پشت شبکهٔ [[Tor|تور]] به آن می‌افزاید.
  
 
برای نصب، از فرمان زیر استفاده کنید:
 
برای نصب، از فرمان زیر استفاده کنید:
 +
{{bc|$ sudo apt install apt-transport-tor}}
  
<pre language="bash">
+
== مشکلات مرسوم ==
$ sudo apt install apt-transport-tor
 
</pre>
 
 
 
= مشکلات مرسوم =
 
  
== خراب شدن فهرست‌ها ==
+
=== خراب شدن فهرست‌ها ===
 
در هنگام بروز این مشکل که معمولاً به خاطر خراب شدن پرونده‌های فهرست روی [[Disk|دیسک]] رخ می‌دهد، اجرای تقریباً هر دستور مرتبط با apt با مشکلاتی مانند خط زیر مواجه می‌شود:
 
در هنگام بروز این مشکل که معمولاً به خاطر خراب شدن پرونده‌های فهرست روی [[Disk|دیسک]] رخ می‌دهد، اجرای تقریباً هر دستور مرتبط با apt با مشکلاتی مانند خط زیر مواجه می‌شود:
 
+
{{bc|E: The package lists or status file could not be parsed or opened}}
<pre language="bash">
 
E: The package lists or status file could not be parsed or opened.
 
</pre>
 
  
 
در این مورد ساده‌ترین کار، حذف این پرونده‌ها و سپس ایجاد دوبارهٔ آن‌ها به‌وسیلهٔ عمل به‌روز رسانی فهرست‌هاست:
 
در این مورد ساده‌ترین کار، حذف این پرونده‌ها و سپس ایجاد دوبارهٔ آن‌ها به‌وسیلهٔ عمل به‌روز رسانی فهرست‌هاست:
 
+
{{bc|
<pre language="bash">
 
 
$ sudo rm -rf /var/lib/apt/lists/*
 
$ sudo rm -rf /var/lib/apt/lists/*
 
$ sudo apt update
 
$ sudo apt update
</pre>
+
}}
  
== فعال نبودن قابلیت بارگیری کد منبع به صورت پیش‌گزیده ==
+
=== فعال نبودن قابلیت بارگیری کد منبع به صورت پیش‌گزیده ===
در صورت فعال نبودن این قابلیت به صورت پیش‌گزیده، می‌بایستی ابتدا در <code>/etc/apt/sources.list</code> خط‌هایی که با deb-src شروع می‌شوند رو از حالت [[Comment|توضیحات]] خارج کرد، یعنی # را از اول خط‌ها برداشت.
+
در صورت فعال نبودن این قابلیت به صورت پیش‌گزیده، می‌بایستی ابتدا خط‌هایی که با deb-src شروع می‌شوند را به سیاههٔ مخازن افزود:
 
+
{{bc|$ sudo apt edit-sources}}
<pre language="bash">
 
$ sudo nano /etc/apt/sources.list
 
</pre>
 
  
 
در غیر این صورت با این پیغام خطا مواجه خواهید شد:
 
در غیر این صورت با این پیغام خطا مواجه خواهید شد:
 
+
{{bc|
<pre language="bash">
 
 
Reading package lists... Done
 
Reading package lists... Done
 
E: You must put some 'source' URIs in your sources.list
 
E: You must put some 'source' URIs in your sources.list
</pre>
+
}}
  
و سپس همچنین مطمئن شد که بسته dpkg-dev نصب می‌باشد.
+
و سپس همچنین مطمئن شد که بسته dpkg-dev نصب است.
 
+
{{bc|$ sudo apt install dpkg-dev}}
<pre language="bash">
 
$ sudo apt install dpkg-dev
 
</pre>
 
  
 
در غیر این صورت با پیغامی مشابه زیر مواجه خواهید شد (gnome-terminal نام بستهٔ مورد نظر است):
 
در غیر این صورت با پیغامی مشابه زیر مواجه خواهید شد (gnome-terminal نام بستهٔ مورد نظر است):
 
+
{{bc|
<pre language="bash">
 
 
sh: 1: dpkg-source: not found
 
sh: 1: dpkg-source: not found
 
Unpack command 'dpkg-source -x gnome-terminal_3.18.3-1ubuntu1.dsc' failed.
 
Unpack command 'dpkg-source -x gnome-terminal_3.18.3-1ubuntu1.dsc' failed.
 
Check if the 'dpkg-dev' package is installed.
 
Check if the 'dpkg-dev' package is installed.
 
E: Sub-process dpkg-source returned an error code (1)
 
E: Sub-process dpkg-source returned an error code (1)
</pre>
+
}}
  
 
و همچنین مطمئن شوید که بسته debian-keyring برای چک کردن امضای بسته بارگیری و نصب شده باشد.
 
و همچنین مطمئن شوید که بسته debian-keyring برای چک کردن امضای بسته بارگیری و نصب شده باشد.
 
+
{{bc|$ sudo apt install debian-keyring}}
<pre language="bash">
 
$ sudo apt install debian-keyring
 
</pre>
 
  
 
در غیر این صورت با پیغامی مشابه زیر مواجه خواهید شد (gnome-terminal نام بستهٔ مورد نظر است):
 
در غیر این صورت با پیغامی مشابه زیر مواجه خواهید شد (gnome-terminal نام بستهٔ مورد نظر است):
 
+
{{bc|
<pre language="bash">
 
 
gpgv: Signature made Tue 15 Mar 2016 07:00:36 PM CET using RSA key ID 1C5041D4
 
gpgv: Signature made Tue 15 Mar 2016 07:00:36 PM CET using RSA key ID 1C5041D4
 
gpgv: Can't check signature: public key not found
 
gpgv: Can't check signature: public key not found
 
dpkg-source: warning: failed to verify signature on ./gnome-terminal_3.18.3-1ubuntu1.dsc
 
dpkg-source: warning: failed to verify signature on ./gnome-terminal_3.18.3-1ubuntu1.dsc
</pre>
+
}}
 +
 
 +
== سایر ویژگی‌ها ==
 +
 
 +
* جستجوی بسته‌ای که حاوی برنامهٔ مورد نظر است.
 +
برای نمونه فرض کنید می‌خواهید برنامهٔ ls را نصب کنید.
 +
بسته‌ای با نام ls در مخازن نداریم و دستور زیر خطا دارد.
 +
{{bc|
 +
$ sudo apt install ls
 +
}}
  
 +
با نصب برنامهٔ apt-file جستجو را انجام می‌دهیم.
 +
{{bc|
 +
$ apt-file search --regexp '/ls$'
 +
}}
  
= ابزارهای مشابه =
+
== ابزارهای مشابه ==
 
* [[Aptitude]]
 
* [[Aptitude]]
 +
* [[dpkg]]
  
= راهنما =
+
== راهنما ==
برای مطالعهٔ جزئیات بیش‌تر و راهنمای برنامه، می‌توان [[Man|صفحهٔ راهنمای]] برنامه را مشاهده کرده و یا از انتخاب <code>help</code> در [[CLI|خط فرمان]] استفاده کنید:
+
برای مطالعهٔ جزئیات بیش‌تر و راهنمای برنامه، می‌توان [[Man|صفحهٔ راهنمای]] برنامه را مشاهده کرده و یا از انتخاب {{ic|help}} در [[CLI|خط فرمان]] استفاده کنید:
<pre language="bash">
+
{{bc|
 
$ man apt
 
$ man apt
$ apt --h
+
$ apt --help
</pre>
+
}}
  
  

نسخهٔ کنونی تا ‏۱۲ تیر ۱۴۰۳، ساعت ۱۴:۳۷

ابزار بسته‌بندی پیشرفته(اپت) (به انگلیسی APT : Advanced Packaging Tool) یکی از برنامه‌های مدیریت بسته در توزیع‌‌های مبتنی بر دبیان است.


هدف

جست‌وجو، نصب و مدیریت آسان بسته‌های نرم‌افزاری است.

رابط‌ها

APT دارای چند رابط خط فرمان است که مهم‌ترین آن‌ها apt-get و apt-cache بودند. پس از اوبونتو ۱۴.۰۴، پیشنهاد می‌شود که کاربران از خود apt در شبیه‌ساز پایانه استفاده کنند.

اپت در سیستم‌عامل Open Solaris نیز استفاده می‌شود. در عین حال امکان وارد کردن آن به سیستم‌عامل مک هم با بستهٔ نرم‌افزاری فینک وجود دارد. با الهام از apt-get، نرم‌افزار win-get طرّاحی شده که شبیه به APT، ولی بر روی سیستم‌عامل ویندوز کار می‌کند. هم‌چنین با استفاده از کارهٔ Termux، امکان استفاده از اپت روی اندروید نیز وجود دارد.

روش کار

فهرست مخازن در پروندهٔ /etc/apt/sources.list و پرونده‌های مجزّا در مسیر /etc/apt/sources.list.d/ قرار گرفته‌اند. این مخازن می‌توانند دیسک‌های نوری، پرونده‌های تحت شبکه و شاخه‌های ftp یا http باشند. اگر بسته‌ای در شاخه‌ها یا دیسک سخت موجود باشد، به صورت خودکار دریافت شده و نصب می‌گردد.

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


نصب و حذف بسته‌ها

  • برای به‌روز رسانی مخازن، از فرمان زیر استفاده می‌شود. این کار، فهرست بسته‌های موجود، توضیحات، نگارش و گزارش تغییرات آن‌ها را از مخازن گرفته و در پایگاه دادهٔ سامانه ذخیره می‌کند.
$ sudo apt update
  • برای نصب یک بسته، یا ارتقای آن از فرمان زیر استفاده می‌شود:
$ sudo apt install PACKAGE
  • برای برداشتن یک بستهٔ نصب‌شده، از این فرمان استفاده می‌شود:
$ sudo apt remove PACKAGE
  • برای برداشتن یک بسته به صورتی که پرونده‌های وابسته به آن نیز به طور کامل حذف شوند، از فرمان زیر استفاده می‌شود:
$ sudo apt remove --purge PACKAGE
  • برای حذف کتابخانه‌ها و بسته‌های پیش‌نیازی که دیگر به آن‌ها نیازی نیست، از این فرمان استفاده می‌شود:
$ sudo apt autoremove
  • می‌توان عملیات بالا را به صورت هم‌زمان انجام داد:
$ sudo apt remove --purge --autoremove PACKAGE

این کار به معنی حذف یک بسته و تمام پرونده‌ها و پیش‌نیازهای وابسته به آن بسته است.


نصب نرم‌افزار از یک مخزن خاص

برای نصب نرم‌افزار از مخزنی خاص که پیش‌فرض نیست از انتحاب t- استفاده می‌شود: برای نمونه

نصب از مخزن sid

$ apt install vlc -t sid

دریافت کد منبع از مخزن sid

$ apt source vlc -t sid

دریافت پروندهٔ deb از مخزن sid

$ apt download vlc -t sid

بدیهی است که برای استفاده از این ویژگی باید فهرست مخازن sid در تنظیمات apt موجود باشد.

ارتقای بسته‌های نصب شده

نخست سیاههٔ مخازن را به روز می‌کنیم.

$ sudo apt update
  • برای دیدن بسته‌های قابل ارتقا، از این فرمان استفاده می‌شود:
$ apt list --upgradable
  • برای ارتقای بسته‌های عادی از این فرمان استفاده می شود:
$ sudo apt upgrade
  • برخی از ارتقاها برای رفع ناسازگاری‌ها، نیاز به حذف بسته‌های دیگر دارند. برای انجام این دسته از ارتقاها از فرمان زیر استفاده می‌شود:
$ sudo apt full-uprgade

بارگیری

  • برای بارگیری پرونده deb:
$ apt download PACKAGE
  • برای بارگیری کد منبع نرم‌افزار:
$ apt source PACKAGE

برای این کار باید فهرست مخازن deb-src از پیش تنظیم شده باشد.

اطلاعات یک بسته

  • برای دیدن اطلاعات بیش‌تر در مورد بسته‌، شامل توضیحات، حجم، صفحهٔ خانگی و... از این فرمان استفاده می‌شود:
$ apt show PACKAGE
  • برای نشان دادن نسخه‌های موجود از یک بسته و اولویت آن‌ها
$ apt policy PACKAGE
  • برای جست‌وجوی بسته‌های مربوط به یک عبارت، از این فرمان استفاده می‌شود:
$ apt search PATTERN
  • برای دیدن همهٔ بسته‌های نصب شده با مدیربستهٔ apt، از این فرمان استفاده می‌شود:
$ apt list --installed

سایر

  • برای تمیز کردن کش apt
$ apt clean
  • برای دیدن گاو!
$ apt moo

بسته‌های مکمّل

apt-transport-https

این بسته، بسته‌ٔ مکمّلی برای APT است که پشتیبانی از مخزن‌‌های رمزشده با قرارداد https را به آن می‌افزاید. منظور شاخه‌های https در داخل پروندهٔ /etc/apt/sources.list است.

برای نصب، از فرمان زیر استفاده کنید:

$ sudo apt install apt-transport-https

apt-transport-tor

این بسته، بسته‌ٔ مکمّلی برای APT است که پشتیبانی از مخزن‌‌ها‌ را از پشت شبکهٔ تور به آن می‌افزاید.

برای نصب، از فرمان زیر استفاده کنید:

$ sudo apt install apt-transport-tor

مشکلات مرسوم

خراب شدن فهرست‌ها

در هنگام بروز این مشکل که معمولاً به خاطر خراب شدن پرونده‌های فهرست روی دیسک رخ می‌دهد، اجرای تقریباً هر دستور مرتبط با apt با مشکلاتی مانند خط زیر مواجه می‌شود:

E: The package lists or status file could not be parsed or opened

در این مورد ساده‌ترین کار، حذف این پرونده‌ها و سپس ایجاد دوبارهٔ آن‌ها به‌وسیلهٔ عمل به‌روز رسانی فهرست‌هاست:

$ sudo rm -rf /var/lib/apt/lists/*
$ sudo apt update

فعال نبودن قابلیت بارگیری کد منبع به صورت پیش‌گزیده

در صورت فعال نبودن این قابلیت به صورت پیش‌گزیده، می‌بایستی ابتدا خط‌هایی که با deb-src شروع می‌شوند را به سیاههٔ مخازن افزود:

$ sudo apt edit-sources

در غیر این صورت با این پیغام خطا مواجه خواهید شد:

Reading package lists... Done
E: You must put some 'source' URIs in your sources.list

و سپس همچنین مطمئن شد که بسته dpkg-dev نصب است.

$ sudo apt install dpkg-dev

در غیر این صورت با پیغامی مشابه زیر مواجه خواهید شد (gnome-terminal نام بستهٔ مورد نظر است):

sh: 1: dpkg-source: not found
Unpack command 'dpkg-source -x gnome-terminal_3.18.3-1ubuntu1.dsc' failed.
Check if the 'dpkg-dev' package is installed.
E: Sub-process dpkg-source returned an error code (1)

و همچنین مطمئن شوید که بسته debian-keyring برای چک کردن امضای بسته بارگیری و نصب شده باشد.

$ sudo apt install debian-keyring

در غیر این صورت با پیغامی مشابه زیر مواجه خواهید شد (gnome-terminal نام بستهٔ مورد نظر است):

gpgv: Signature made Tue 15 Mar 2016 07:00:36 PM CET using RSA key ID 1C5041D4
gpgv: Can't check signature: public key not found
dpkg-source: warning: failed to verify signature on ./gnome-terminal_3.18.3-1ubuntu1.dsc

سایر ویژگی‌ها

  • جستجوی بسته‌ای که حاوی برنامهٔ مورد نظر است.

برای نمونه فرض کنید می‌خواهید برنامهٔ ls را نصب کنید. بسته‌ای با نام ls در مخازن نداریم و دستور زیر خطا دارد.

$ sudo apt install ls

با نصب برنامهٔ apt-file جستجو را انجام می‌دهیم.

$ apt-file search --regexp '/ls$'

ابزارهای مشابه

راهنما

برای مطالعهٔ جزئیات بیش‌تر و راهنمای برنامه، می‌توان صفحهٔ راهنمای برنامه را مشاهده کرده و یا از انتخاب help در خط فرمان استفاده کنید:

$ man apt
$ apt --help