APT, APT-Keş we olaryň ýygy-ýygydan ulanylýan buýruklaryna düşünmek


Ubuntu ýa-da Linux Mint ýaly Debian ýa-da Debian esasly paýlamany ulanan bolsaňyz, programma üpjünçiligini gurmak ýa-da aýyrmak üçin APT paket ulgamyny ulanmagyňyz ähtimal. Hiç haçan buýruk setirine girmedik bolsaňyzam, paket dolandyryjyňyzy GUI-e güýçlendirýän esasy ulgam APT ulgamydyr.

Bu gün, käbir tanyş buýruklara göz aýlap, az ýa-da ýygy-ýygydan ulanylýan APT buýruklaryna çümüp, bu ajaýyp dizaýn ulgamyna birneme yşyk bereris.

APT näme?

APT “Advanced Package Tool” diýmekdir. Ilkinji gezek 1999-njy ýylda Debian 2.1-de görlüpdi. Aslynda, APT * .deb giňeltmesinde görkezilişi ýaly dpkg paketleri dolandyrmak ulgamydyr. Diňe paketleri we täzelenmeleri dolandyrmak üçin däl, eýsem käbir paketleri guranyňyzda köp garaşlylyk meselelerini çözmek üçin döredildi.

Şol pioner günlerinde Linux ulanýan her bir adam hökmünde çeşmeden bir zat düzjek bolanymyzda ýa-da Red Hat-yň aýry-aýry RPM faýllary bilen iş salyşanymyzda\garaşlylyk dowzahy adalgasy bilen hemmämiz tanyşdyk.

APT bu garaşlylyk meseleleriniň hemmesini awtomatiki çözdi, bir setir buýrugynyň ululygyna ýa-da sanyna garamazdan islendik bukjany gurnady. Bu meseleler boýunça birnäçe sagatlap zähmet çekenlerimiz üçin bu Linux durmuşymyzdaky bulutlary bölýän pursatlaryň biri boldy!

APT konfigurasiýasyna düşünmek

Bu ilkinji faýl, APT-iň konfigurasiýa faýllaryndan biridir.

$ 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

Sources.list faýlymdan çykaryp bilşiňiz ýaly, Ubuntu 12.04 (Precise Pangolin) ulanýaryn. Şeýle hem üç ammar ulanýaryn:

  1. Esasy ammar
  2. verselem ammary
  3. Ubuntu Howpsuzlyk Ammary

Bu faýlyň sintaksisi birneme ýönekeý:

deb (url) release repository

Goşmaça setir çeşme faýl ammarydyr. Ol şuňa meňzeş formata eýerýär:

deb-src (url) release repository

Bu faýl, APT ulanyp redaktirlemeli ýeke-täk zadyňyzdyr, we deslapky görnüşler size gaty gowy hyzmat eder we asla redaktirlemegiňiz zerur bolmaz.

Şeýle-de bolsa, üçünji tarap ammarlaryny goşmak isleýän wagtlaryňyz bolýar. Olary şol bir formatda ýönekeýje girizip, täzelenme buýrugyny işledersiňiz:

$ sudo apt-get update

BELLIK: Üçünji tarap ammarlaryny goşmagy ýatdan çykarmaň !!! Diňe ynamdar we abraýly çeşmelerden goşuň. Gümürtik ammarlary goşmak ýa-da garyndylary garyşdyrmak ulgamyňyzy çynlakaý bulaşdyryp biler!

Source.list faýlymyza göz aýladyk we indi nädip täzelemelidigini bilýäris, indiki näme? Geliň, käbir paketleri guralyň. Serwer işleýäris we WordPress gurmak isleýäris diýeliň. Ilki bilen bukjany gözläliň:

$ 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-Keş näme?

Apt-keş, diňe APT keşini soraýan buýruk. Gözleg parametrini oňa geçirdik, elbetde, munuň üçin APT gözlemek isleýändigimizi mälim etdik. Aboveokarda görşümiz ýaly\wordpress gözlemek, her bukjanyň gysga beýany bilen gözleg setiri bilen baglanyşykly birnäçe paketleri yzyna gaýtardy.

Mundan,\wordpress - weblog dolandyryjysynyň esasy bukjasyny görýäris we ony gurmak isleýäris. Itöne onuň bilen birlikde haýsy baglylyklaryň guruljakdygyny görmek gowy bolmazmy? APT bize muny aýdyp biler şeýle hem:

$ 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:

Bu, “wordpress 3.3.1” -iň guruljak wersiýadygyny, guruljak ammaryny, tersine baglylyklary we oňa bagly beýleki paketleri we wersiýa belgilerini görkezýär.

BELLIK: (null wersiýanyň kesgitlenmändigini we ammarda iň soňky wersiýanyň guruljakdygyny aňladýar.)

Indi, hakyky gurnama buýrugy:

$ sudo apt-get install wordpress

Bu buýruk WordPress-3.3.1 we häzirki gurulmadyk ähli baglylyklary gurar.

Elbetde, bu APT bilen edip boljak zatlaryň hemmesi däl. Käbir beýleki peýdaly buýruklar aşakdakylar:

ÜNS BERI AP: APT buýruklarynyň haýsydyr bir seriýasyny işletmezden ozal apt-get täzelenmesini işletmek gowy tejribe. Apt-get täzelenme /etc/apt/sources.list faýlyňyzy deňeşdirýär we maglumat bazasyny täzeleýär.

Bukjany aýyrmak, bukjany gurmak ýaly aňsat:

$ sudo apt-get remove wordpress

Gynansagam, apt-get remove buýrugy ähli konfigurasiýa faýllaryny saklamaz. Olary hem aýyrmak üçin apt-get arassalamak islärsiňiz:

$ sudo apt-get purge wordpress

Her wagt, garaşlylygyň bozulan ýagdaýyna duçar bolup bilersiňiz. Bu, adatça maglumat bazasyny bozup, apt-get täzelenmesini dogry işlemeseňiz bolýar. Bagtymyza, APT-de düzediş bar:

$ sudo apt-get –f install

APT ammardan * .deb faýllarynyň hemmesini enjamyňyza göçürip alýandygy sebäpli (olary/var/cache/apt/arhiwde saklaýar), disk ýerini boşatmak üçin wagtal-wagtal aýyrmak isläp bilersiňiz:

$ sudo apt-get clean

Bu, APT, APT-Keşiň we käbir peýdaly buýruklaryň kiçijik bölegi. Aşakdaky makalada has ösen buýruklary öwrenmek we öwrenmek üçin entek köp zat bar.

  1. 25 APT-GET we APT-CACHE peýdaly we ösen buýruklar

Hemişe bolşy ýaly, has köp mümkinçilik üçin adam sahypalaryna göz aýlaň. APT bilen tanyş bolansoň, ulgamy täzeläp durmak üçin ajaýyp Cron skriptlerini ýazmak bolýar.