APT na Aptitude ni nini? na Nini Tofauti Halisi Kati Yao?


Aptitude na apt-get ni zana mbili maarufu zinazoshughulikia usimamizi wa kifurushi. Zote mbili zina uwezo wa kushughulikia kila aina ya shughuli kwenye vifurushi ikiwa ni pamoja na usakinishaji, kuondolewa, utafutaji n.k. Lakini bado kuna tofauti kati ya zana zote mbili zinazofanya watumiaji kupendelea moja juu ya nyingine. Je, ni tofauti gani hizo zinazofanya zana hizi mbili kuzingatiwa tofauti ni upeo wa makala hii.

Apt ni nini

Apt au Advanced Packaging Tool ni programu huria na huria ambayo hushughulikia usakinishaji na uondoaji wa programu kwa uzuri. Hapo awali iliundwa kwa ajili ya vifurushi vya .deb vya Debian lakini imefanywa iendane na Kidhibiti cha Kifurushi cha RPM.

Apt ni safu nzima ya amri bila GUI. Kila inapoalikwa kutoka kwa safu ya amri pamoja na kubainisha jina la kifurushi kitakachosakinishwa, hupata kifurushi hicho katika orodha iliyosanidiwa ya vyanzo vilivyoainishwa katika '/etc/apt/sources.list' pamoja na orodha ya vitegemezi vya kifurushi hicho na kuvipanga na. huzisakinisha kiotomatiki pamoja na kifurushi cha sasa hivyo kuruhusu mtumiaji kutokuwa na wasiwasi wa kusakinisha vitegemezi.

Inaweza kunyumbulika sana kuruhusu Mtumiaji kudhibiti usanidi mbalimbali kwa urahisi, kama vile: kuongeza chanzo chochote kipya ili kutafuta vifurushi, apt-pinning yaani kuashiria kifurushi chochote kisichopatikana wakati wa uboreshaji wa mfumo hivyo kufanya toleo lake la sasa kuwa toleo lake la mwisho kusakinishwa, \smart ” boresha yaani kuboresha vifurushi muhimu zaidi na kuacha vile visivyo muhimu.

Aptitude ni nini?

Uwezo ni wa mbele kwa zana ya upakiaji ya hali ya juu ambayo huongeza kiolesura cha mtumiaji kwenye utendakazi, hivyo basi kumruhusu mtumiaji kutafuta kifurushi kwa maingiliano na kukisakinisha au kukiondoa. Hapo awali iliundwa kwa ajili ya Debain, Aptitude huongeza utendakazi wake kwa usambazaji wa msingi wa RPM pia.

Kiolesura chake cha mtumiaji ni msingi wa maktaba ya ncurses ambayo huongeza vipengele mbalimbali kwake vinavyoonekana katika GUI. Moja ya mambo yake muhimu ni kwamba inaweza kuiga hoja nyingi za mstari wa amri za apt-get.

Kwa ujumla, Aptitude ni wasimamizi wa vifurushi wa kiwango cha juu ambao huchota maelezo ya kiwango cha chini, na wanaweza kufanya kazi katika hali ya mwingiliano inayotegemea maandishi na hata katika hali isiyoingiliana ya mstari wa amri.

Iwapo unataka kujua matumizi ya APT na Aptitude na mifano halisi ya ulimwengu, unapaswa kuelekea kwenye makala yafuatayo.

  1. Jifunze Mifano 25 Muhimu kwenye APT-GET na APT-CACHE
  2. Jifunze Usimamizi wa Kifurushi cha Linux kwa Umahiri na Dpkg

Kuna tofauti gani kati ya APT na Aptitude?

Kando na tofauti kuu kuwa kwamba Aptitude ni meneja wa kifurushi cha kiwango cha juu wakati APT ni msimamizi wa kifurushi cha kiwango cha chini ambacho kinaweza kutumiwa na wasimamizi wengine wa kiwango cha juu cha vifurushi, mambo muhimu mengine muhimu ambayo yanatenganisha wasimamizi hawa wawili wa kifurushi ni:

  1. Aptitude ni pana katika utendakazi kuliko apt-get na inaunganisha utendakazi wa apt-get na vibadala vyake vingine ikijumuisha apt-mark na apt-cache.

Wakati apt-get inashughulikia usakinishaji wote wa kifurushi, uboreshaji, uboreshaji wa mfumo, kifurushi cha kusafisha, kusuluhisha utegemezi n.k., Aptitude hushughulikia vitu vingi zaidi kuliko apt, pamoja na utendakazi wa apt-mark na apt-cache yaani kutafuta kifurushi ndani orodha ya vifurushi vilivyosanikishwa, kuashiria kifurushi kitakachowekwa kiotomatiki au kwa mikono, kushikilia kifurushi na kuifanya isipatikane kwa uboreshaji na kadhalika.

  1. Wakati apt-get inakosa UI, Aptitude ina UI ya maandishi pekee na shirikishi

Apt-get kuwa msimamizi wa kifurushi wa kiwango cha chini anazuiliwa kwa safu ya amri pekee, huku Aptitude kuwa zana ya kiwango cha juu ina kiolesura chaguo-msingi cha maingiliano ya maandishi pekee pamoja na chaguo la utendakazi wa safu ya amri kwa kuweka amri zinazohitajika.

  1. Aptitude ina usimamizi bora wa kifurushi kuliko apt-get

Katika hali nyingi zinazohusisha usakinishaji, uondoaji na utatuzi wa migogoro kwa vifurushi, Aptitude inathibitisha thamani yake badala ya apt-get. Baadhi ya hali ni pamoja na:

1. Wakati wa kuondoa kifurushi chochote kilichosakinishwa, Aptitude itaondoa kiotomatiki vifurushi ambavyo havijatumika, huku apt-get itahitaji mtumiaji kubainisha hili kwa uwazi kwa kuongeza chaguo la ziada la '—auto-remove' au kubainisha 'apt-get autoremove'.4

2. Ili kuchunguza zaidi kwa nini hatua fulani inazuiwa au kwa nini au kwa nini-hatua fulani inapaswa kuchukuliwa, Aptitude inatoa kwanini na amri za ‘kwanini-sivyo’.

Kama: Aptitude inaweza kupata sababu ya kusanikisha kifurushi fulani kwa kuangalia katika orodha ya vifurushi vilivyosanikishwa na kuangalia ikiwa kifurushi chochote kilichopendekezwa kina utegemezi au utegemezi wao wowote unapendekeza kifurushi hicho au kadhalika.

$ aptitude why yaws-wiki
i   doc-base  Suggests   dhelp | dwww | doc-central | yelp | khelpcenter4
p   dwww      Depends    apache2 | httpd-cgi
p   yaws      Provides   httpd-cgi
p   yaws      Suggests   yaws-wiki

Kama hapa ilitafuta sababu ya kusakinisha kifurushi kinachoitwa yaws-wiki kuwa inapendekezwa na utegemezi (yaws) ambayo hutoa kifurushi pepe ( httpd-cgi) ni kifurushi kipi (dwww) kinategemea na kifurushi (dwww) kinapendekezwa na mojawapo ya kifurushi kilichosakinishwa kinachoitwa doc-base .

Kipengele hiki hakipo katika apt-get.

3. Ingawa apt-get inaweza kufa-out katika kesi ya hatua inayokinzana kuhusu usakinishaji au uondoaji wa kifurushi chenye ujumbe, Aptitude inaweza kupendekeza hatua zinazowezekana ili kuondoa mzozo huo.

Aptitude hutoa utafutaji wenye nguvu ambao unaweza kutumika kutafuta karibu kifurushi chochote sio tu kwenye mfumo lakini pia kwenye hazina nzima.

Ingawa apt-get inahitaji lahaja nyingine ya apt yaani apt-cache kutafuta kifurushi, Aptitude hutoa njia rahisi na bora ya kutafuta kifurushi ambacho kimesakinishwa au kipo kwenye hazina lakini bado hakijasakinishwa.

$ apt-cache search 'python' | head -n4
kate - powerful text editor
kcachegrind-converters - format converters for KCachegrind profiler visualisation tool
kig - interactive geometry tool for KDE
python-kde4 - Python bindings for the KDE Development Platform

$ aptitude search 'python' | head -n4
i   bpython                         - fancy interface to the Python interpreter 
p   bpython-gtk                     - fancy interface to the Python interpreter 
p   bpython-urwid                   - fancy interface to the Python interpreter 
p   bpython3                        - fancy interface to the Python3 interpreter

Hapa, kwa chaguo-msingi apt-cache na utaftaji wa aptitude wa kifurushi kwenye orodha nzima ya vifurushi kwenye hazina, lakini matokeo ya aptitude yanaonyesha ikiwa kifurushi kimewekwa kwenye mfumo au la kwa kutoa bendera ya kila kifurushi ambayo hapa ni p ikionyesha kuwa kifurushi kipo lakini hakijasakinishwa na i ambayo inaonyesha kuwa kifurushi kimesakinishwa, wakati apt-cache huorodhesha tu kifurushi na maelezo yake ya mstari mmoja bila kusema ikiwa kifurushi kimesakinishwa. au siyo.

1. Kutafuta kifurushi kwenye hifadhi chenye python2.7 kwa jina la kifurushi na 2.7 katika maelezo yake.

$ aptitude search '~npython2.7 ~d2.7'
p   idle-python2.7                   - IDE for Python (v2.7) using Tkinter       
i   libpython2.7                     - Shared Python runtime library (version 2.7
p   libpython2.7:i386                - Shared Python runtime library (version 2.7
p   libpython2.7-dbg                 - Debug Build of the Python Interpreter (ver
p   libpython2.7-dbg:i386            - Debug Build of the Python Interpreter (ver
i A libpython2.7-dev                 - Header files and a static library for Pyth
p   libpython2.7-dev:i386            - Header files and a static library for Pyth
i   libpython2.7-minimal             - Minimal subset of the Python language (ver
p   libpython2.7-minimal:i386        - Minimal subset of the Python language (ver
i   libpython2.7-stdlib              - Interactive high-level object-oriented lan
p   libpython2.7-stdlib:i386         - Interactive high-level object-oriented lan
p   libpython2.7-testsuite           - Testsuite for the Python standard library 
i   python2.7                        - Interactive high-level object-oriented lan
p   python2.7:i386                   - Interactive high-level object-oriented lan
p   python2.7-dbg                    - Debug Build of the Python Interpreter (ver
p   python2.7-dbg:i386               - Debug Build of the Python Interpreter (ver
i A python2.7-dev                    - Header files and a static library for Pyth
p   python2.7-dev:i386               - Header files and a static library for Pyth
p   python2.7-doc                    - Documentation for the high-level object-or
p   python2.7-examples               - Examples for the Python language (v2.7)   
i   python2.7-minimal                - Minimal subset of the Python language (ver
p   python2.7-minimal:i386           - Minimal subset of the Python language (ver

Hapa ~n inaonyesha jina na ~d inaonyesha maelezo. Aina nyingine ya amri sawa ni:

$ aptitude search '?name(python2.7) ?description(2.7)'

  1. ~i au ?installed(): Kutafuta kifurushi katika orodha ya vifurushi vilivyosakinishwa pekee.
  2. ~U au ~Inaweza kuboreshwa: Huorodhesha vifurushi vyote vinavyoweza kusasishwa na matoleo yao mapya zaidi yanayopatikana.
  3. ~E au ?Muhimu(): Vifurushi hivyo ama vilivyosakinishwa au vinapatikana, ambavyo ni muhimu.

$ aptitude versions '?Upgradable' | head -n 12
Package apache2:
ph  2.4.7-1ubuntu4                                trusty                    500 
ph  2.4.7-1ubuntu4.5                              trusty-security           500 
ih  2.4.7-1ubuntu4.8                                                        100 
ph  2.4.7-1ubuntu4.9                              trusty-updates            500 

Package apache2-bin:
p A 2.4.7-1ubuntu4                                trusty                    500 
p A 2.4.7-1ubuntu4.5                              trusty-security           500 
i A 2.4.7-1ubuntu4.8                                                        100 
p A 2.4.7-1ubuntu4.9                              trusty-updates            500 

Kama orodha fupi iliyoonyeshwa hapa ya vifurushi 3 vilivyo na toleo lililosakinishwa (lililoonyeshwa na i) na toleo lao linaloweza kuboreshwa lipo (lililoonyeshwa na p).

Ili kupata vifurushi vyote vinavyotoa huduma ya smtp:

$ aptitude search '?provides(smtp)'
p   libghc-smtpclient-dev            - Simple Haskell SMTP client library        
p   libghc-smtpclient-dev:i386       - Simple Haskell SMTP client library        
p   libghc-smtpclient-prof           - Simple Haskell SMTP client library; profil
p   libghc-smtpclient-prof:i386      - Simple Haskell SMTP client library; profil
p   syslog-ng-mod-smtp               - Enhanced system logging daemon (SMTP plugi
p   syslog-ng-mod-smtp:i386          - Enhanced system logging daemon (SMTP plugi

Kama hapa, tunaorodhesha vifurushi vyote vinavyopendekeza kifurushi cha 'gcc'.

$ aptitude search '~DSuggests:gcc' | head -n10
p   bochs                           - IA-32 PC emulator                         
p   bochs:i386                      - IA-32 PC emulator                         
p   cpp-4.4                         - GNU C preprocessor                        
p   cpp-4.4:i386                    - GNU C preprocessor                        
p   cpp-4.6                         - GNU C preprocessor                        
p   cpp-4.6:i386                    - GNU C preprocessor                        
p   cpp-4.7                         - GNU C preprocessor                        
p   cpp-4.7:i386                    - GNU C preprocessor                        
p   cpp-4.7-arm-linux-gnueabi       - GNU C preprocessor                        
p   cpp-4.7-arm-linux-gnueabi:i386  - GNU C preprocessor 

Hitimisho

Kwa hivyo, kwa visa vingi, syntax ya Aptitude huwekwa karibu sawa na ile ya apt-get, kufanya watumiaji wa apt-get kuwa na maumivu kidogo ya kuhamia Aptitude, lakini kwa kuongeza hii, vipengele vingi vya nguvu vimeunganishwa katika Aptitude. ambayo yanaifanya kuwa ndiyo itakayochaguliwa. Kando na tofauti hizi tulizoangazia, ukipata tofauti zozote za kuvutia kati ya wasimamizi hawa wawili wa vifurushi, zitaja kwenye maoni yako.