Kuelewa APT, APT-Cache na Amri Zao Zinazotumiwa Mara Kwa Mara


Ikiwa umewahi kutumia Debian au usambazaji wa msingi wa Debian kama Ubuntu au Linux Mint, basi kuna uwezekano kwamba umetumia mfumo wa kifurushi cha APT kusakinisha au kuondoa programu. Hata kama hujawahi kucheza kwenye mstari wa amri, mfumo wa msingi unaowezesha GUI yako ya kidhibiti ni mfumo wa APT.

Leo, tutaangalia baadhi ya amri zinazojulikana, na kuzama katika baadhi ya amri za APT zinazotumiwa mara nyingi au chache, na kutoa mwanga kuhusu mfumo huu ulioundwa kwa ustadi.

APT ni nini?

APT inasimama kwa Advanced Package Tool. Ilionekana kwa mara ya kwanza katika Debian 2.1 mwaka wa 1999. Kimsingi, APT ni mfumo wa usimamizi wa vifurushi vya dpkg, kama inavyoonekana kwenye kiendelezi *.deb. Iliundwa sio tu kudhibiti vifurushi na sasisho, lakini kutatua masuala mengi ya utegemezi wakati wa kusakinisha vifurushi fulani.

Kama mtu yeyote ambaye alikuwa akitumia Linux siku hizo za utangulizi, sote tulifahamu neno kuzimu ya utegemezi wakati wa kujaribu kukusanya kitu kutoka chanzo, au hata tunaposhughulikia idadi ya faili za RPM za Red Hat.

APT ilitatua masuala haya yote ya utegemezi kiotomatiki, na kufanya kusakinisha kifurushi chochote, bila kujali saizi au idadi ya vitegemezi kuwa amri ya mstari mmoja. Kwa wale wetu ambao tulifanya kazi kwa saa nyingi kwenye kazi hizi, hii ilikuwa mojawapo ya nyakati za jua kugawanya mawingu katika maisha yetu ya Linux!

Kuelewa Usanidi wa APT

Faili hii ya kwanza tutakayoangalia ni mojawapo ya faili za usanidi za APT.

$ sudo cat /etc/apt/sources.list
deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise main
deb-src http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise main

deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise-updates main
deb-src http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise-updates main

deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise universe
deb-src http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise universe
deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise-updates universe
deb-src http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise-updates universe

deb http://security.ubuntu.com/ubuntu precise-security main
deb-src http://security.ubuntu.com/ubuntu precise-security main
deb http://security.ubuntu.com/ubuntu precise-security universe
deb-src http://security.ubuntu.com/ubuntu precise-security universe

Kama unavyoweza kuamua kutoka kwa faili yangu ya sources.list, ninatumia Ubuntu 12.04 (Precise Pangolin). Ninatumia pia hazina tatu:

  1. Hazi kuu
  2. Hazina ya Ulimwengu
  3. Hazina ya Usalama ya Ubuntu

Syntax ya faili hii ni rahisi:

deb (url) release repository

Mstari unaoambatana ni hazina ya faili ya chanzo. Inafuata muundo sawa:

deb-src (url) release repository

Faili hii ndiyo kitu pekee utakachowahi kuhariri kwa kutumia APT, na kuna uwezekano kwamba chaguo-msingi zitakuhudumia vyema na hutawahi kuhitaji kuihariri hata kidogo.

Walakini, kuna nyakati ambazo unaweza kutaka kuongeza hazina za mtu wa tatu. Ungewaingiza kwa urahisi kwa kutumia umbizo sawa, na kisha endesha amri ya sasisho:

$ sudo apt-get update

KUMBUKA: Kuwa mwangalifu sana kuongeza hazina za watu wengine !!! Ongeza tu kutoka kwa vyanzo vinavyoaminika na vinavyotambulika. Kuongeza hazina za dodgy au kuchanganya matoleo kunaweza kuharibu mfumo wako!

Tumeangalia faili yetu ya sources.list na sasa tunajua jinsi ya kuisasisha, kwa hivyo ni nini kinachofuata? Wacha tusakinishe vifurushi kadhaa. Wacha tuseme kwamba tunaendesha seva na tunataka kusakinisha WordPress. Kwanza, tutafute kifurushi:

$ sudo apt-cache search wordpress
blogilo - graphical blogging client
drivel - Blogging client for the GNOME desktop
drupal6-mod-views - views modules for Drupal 6
drupal6-thm-arthemia - arthemia theme for Drupal 6
gnome-blog - GNOME application to post to weblog entries
lekhonee-gnome - desktop client for wordpress blogs
libmarkdown-php - PHP library for rendering Markdown data
qtm - Web-log interface program
tomboy-blogposter - Tomboy add-in for posting notes to a blog
wordpress - weblog manager
wordpress-l10n - weblog manager - language files
wordpress-openid - OpenID plugin for WordPress
wordpress-shibboleth - Shibboleth plugin for WordPress
wordpress-xrds-simple - XRDS-Simple plugin for WordPress
zine - Python powered blog engine

APT-Cache ni nini?

Apt-cache ni amri ambayo inauliza tu kashe ya APT. Tulipitisha kigezo cha utaftaji kwake, tukisema kwamba, ni wazi, tunataka kuitafuta APT. Kama tunavyoona hapo juu, kutafuta \wordpress kulirudisha idadi ya vifurushi vinavyohusiana na mfuatano wa utafutaji na maelezo mafupi ya kila kifurushi.

Kutokana na hili, tunaona kifurushi kikuu cha \wordpress - meneja wa blogu, na tunataka kukisakinisha. Lakini je, haitakuwa vyema kuona ni vitegemezi vipi hasa vitasakinishwa pamoja nacho? APT inaweza kutuambia kwamba vile vile:

$ sudo apt-cache showpkg wordpress
Versions:
3.3.1+dfsg-1 (/var/lib/apt/lists/us-west-2.ec2.archive.ubuntu.com_ubuntu_dists_precise_universe_binary-amd64_Packages)
 Description Language:
                 File: /var/lib/apt/lists/us-west-2.ec2.archive.ubuntu.com_ubuntu_dists_precise_universe_binary-amd64_Packages
                  MD5: 3558d680fa97c6a3f32c5c5e9f4a182a
 Description Language: en
                 File: /var/lib/apt/lists/us-west-2.ec2.archive.ubuntu.com_ubuntu_dists_precise_universe_i18n_Translation-en
                  MD5: 3558d680fa97c6a3f32c5c5e9f4a182a

Reverse Depends:
  wordpress-xrds-simple,wordpress
  wordpress-shibboleth,wordpress 2.8
  wordpress-openid,wordpress
  wordpress-l10n,wordpress 2.8.4-2
Dependencies:
3.3.1+dfsg-1 - libjs-cropper (2 1.2.1) libjs-prototype (2 1.7.0) libjs-scriptaculous (2 1.9.0) libphp-phpmailer (2 5.1) libphp-simplepie (2 1.2) libphp-snoopy (2 1.2.4) tinymce (2 3.4.3.2+dfsg0) apache2 (16 (null)) httpd (0 (null)) mysql-client (0 (null)) libapache2-mod-php5 (16 (null)) php5 (0 (null)) php5-mysql (0 (null)) php5-gd (0 (null)) mysql-server (2 5.0.15) wordpress-l10n (0 (null))
Provides:
3.3.1+dfsg-1 -
Reverse Provides:

Hii inatuonyesha kuwa nenopress 3.3.1 ndilo toleo litakalosakinishwa, hifadhi ambayo itasakinishwa kutoka, vitegemezi vya kinyume, na vifurushi vingine vinavyotegemea, pamoja na nambari za toleo lao.

KUMBUKA: (null inamaanisha kuwa toleo halijafafanuliwa, na toleo la hivi karibuni kwenye hazina litasakinishwa.)

Sasa, amri halisi ya kusakinisha:

$ sudo apt-get install wordpress

Amri hiyo itasakinisha WordPress-3.3.1 na vitegemezi vyote ambavyo havijasakinishwa kwa sasa.

Kwa kweli, hiyo sio tu unaweza kufanya na APT. Amri zingine muhimu ni kama zifuatazo:

KUMBUKA: Ni mazoezi mazuri kuendesha apt-get update kabla ya kutekeleza mfululizo wowote wa amri za APT. Kumbuka, apt-get update huchanganua faili yako /etc/apt/sources.list na kusasisha hifadhidata yake.

Kuondoa kifurushi ni rahisi kama vile kusanikisha kifurushi:

$ sudo apt-get remove wordpress

Kwa bahati mbaya, apt-get remove amri huacha faili zote za usanidi zikiwa sawa. Ili kuondoa hizo pia, utataka kutumia apt-get purge:

$ sudo apt-get purge wordpress

Kila mara, unaweza kukimbia katika hali ambapo kuna utegemezi uliovunjika. Hii kawaida hufanyika wakati hauendeshi apt-get update vizuri, ukitengeneza hifadhidata. Kwa bahati nzuri, APT ina marekebisho yake:

$ sudo apt-get –f install

Kwa kuwa APT inapakua faili zote za * .deb kutoka kwa hazina hadi kwa mashine yako (huzihifadhi kwenye /var/cache/apt/archives) unaweza kutaka kuziondoa mara kwa mara ili kutoa nafasi ya diski:

$ sudo apt-get clean

Hii ni sehemu ndogo tu ya APT, APT-Cache na baadhi ya amri zake muhimu. Bado kuna mengi ya kujifunza na kuchunguza amri za juu zaidi katika makala hapa chini.

  1. Amri 25 Muhimu na za Kina za APT-GET na APT-CACHE

Kama kawaida, tafadhali angalia kurasa za mtu kwa chaguzi zaidi. Mara tu mtu anapofahamiana na APT, inawezekana kuandika hati nzuri za Cron ili kusasisha mfumo.