Amri 20 za YUM kwa Usimamizi wa Kifurushi cha Linux


Katika makala haya, tutajifunza jinsi ya kusakinisha, kusasisha, kuondoa, kupata vifurushi, kudhibiti vifurushi na hifadhi kwenye mifumo ya Linux kwa kutumia zana ya YUM (Yellowdog Updater Modified) iliyotengenezwa na RedHat.

Maagizo ya mfano yaliyoonyeshwa katika makala haya yanajaribiwa kivitendo kwenye uthibitishaji wetu wa RHEL, au kuchunguza tu njia za kusakinisha vifurushi vipya na kusasisha mfumo wako.

Mahitaji ya msingi ya makala hii ni, lazima uwe na uelewa wa msingi wa amri na mfumo wa uendeshaji wa Linux, ambapo unaweza kuchunguza na kufanya mazoezi ya amri zote zilizoorodheshwa hapa chini.

YUM ni nini?

YUM (Kisasisho cha Yellowdog Kilichobadilishwa) ni mstari wa amri wa chanzo huria na vile vile zana ya usimamizi wa kifurushi kulingana na picha kwa mifumo ya Linux ya RPM (RedHat Package Manager).

Huruhusu watumiaji na wasimamizi wa mfumo kusakinisha, kusasisha, kuondoa au kutafuta vifurushi vya programu kwenye mfumo kwa urahisi. Iliundwa na kutolewa na Seth Vidal chini ya GPL (Leseni ya Jumla ya Umma) kama chanzo huria, ambayo ina maana kwamba mtu yeyote anaweza kuruhusiwa kupakua na kufikia msimbo ili kurekebisha hitilafu na kutengeneza vifurushi vilivyobinafsishwa.

YUM hutumia hazina nyingi za wahusika wengine kusakinisha vifurushi kiotomatiki kwa kutatua masuala ya utegemezi wao.

Sasisha: Amri ya yum inabadilishwa na usambazaji wa msingi wa RPM.

Ili kusakinisha kifurushi kinachoitwa Firefox, endesha tu amri iliyo hapa chini itapata na kusakinisha vitegemezi vyote vinavyohitajika kwa Firefox.

# yum install firefox
Loaded plugins: fastestmirror
Dependencies Resolved

================================================================================================
 Package                    Arch        Version                    Repository            Size        
================================================================================================
Updating:
firefox                        i686        10.0.6-1.el6.centos     updates             20 M
Updating for dependencies:
 xulrunner                     i686        10.0.6-1.el6.centos     updates             12 M

Transaction Summary
================================================================================================
Install       0 Package(s)
Upgrade       2 Package(s)

Total download size: 32 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): firefox-10.0.6-1.el6.centos.i686.rpm                                |  20 MB   01:10
(2/2): xulrunner-10.0.6-1.el6.centos.i686.rpm                              |  12 MB   00:52
------------------------------------------------------------------------------------------------
Total                                                           63 kB/s |  32 MB   02:04

Updated:
  firefox.i686 0:10.0.6-1.el6.centos

Dependency Updated:
  xulrunner.i686 0:10.0.6-1.el6.centos

Complete!

Amri iliyo hapo juu itauliza uthibitisho kabla ya kusakinisha kifurushi chochote kwenye mfumo wako. Ikiwa ungependa kusakinisha vifurushi kiotomatiki bila kuomba uthibitisho wowote, tumia chaguo la -y kama inavyoonyeshwa hapa chini mfano.

# yum -y install firefox

Ili kuondoa kifurushi kabisa na tegemezi zote, endesha tu amri ifuatayo kama inavyoonyeshwa hapa chini.

# yum remove firefox
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package firefox.i686 0:10.0.6-1.el6.centos set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================
 Package                    Arch        Version                        Repository            Size        
====================================================================================================
Removing:
 firefox                    i686        10.0.6-1.el6.centos            @updates              23 M

Transaction Summary
====================================================================================================
Remove        1 Package(s)
Reinstall     0 Package(s)
Downgrade     0 Package(s)

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing        : firefox-10.0.6-1.el6.centos.i686                                                                                                                          1/1

Removed:
  firefox.i686 0:10.0.6-1.el6.centos

Complete!

Kwa njia hiyo hiyo, amri ya juu itaomba uthibitisho kabla ya kuondoa mfuko. Ili kuzima kidokezo cha uthibitishaji ongeza tu chaguo -y kama inavyoonyeshwa hapa chini.

# yum -y remove firefox

Wacha tuseme una toleo la kizamani la kifurushi cha MySQL na unataka kuisasisha hadi toleo thabiti la hivi karibuni. Endesha tu amri ifuatayo itasuluhisha kiotomati maswala yote ya utegemezi na kuyasakinisha.

# yum update mysql
Loaded plugins: fastestmirror
Dependencies Resolved

============================================================================================================
 Package            Arch                Version                    Repository                    Size
============================================================================================================
Updating:
 vsftpd             i386                2.0.5-24.el5_8.1           updates                       144 k

Transaction Summary
============================================================================================================
Install       0 Package(s)
Upgrade       1 Package(s)

Total size: 144 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : vsftpd                                                                     1/2
  Cleanup        : vsftpd                                                                     2/2

Updated:
  vsftpd.i386 0:2.0.5-24.el5_8.1

Complete!

Tumia kitendakazi cha orodha kutafuta kifurushi mahususi kilicho na jina. Kwa mfano kutafuta kifurushi kinachoitwa OpenSSH, tumia amri.

# yum list openssh
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: mirror.nus.edu.sg
Installed Packages
openssh.i386                                       4.3p2-72.el5_6.3                                                                      installed
Available Packages                                 4.3p2-82.el5                                                                          base

Ili kufanya utafutaji wako kuwa sahihi zaidi, fafanua majina ya vifurushi ukitumia toleo lao, iwapo unajua. Kwa mfano kutafuta toleo maalum la OpenSSH-4.3p2 la kifurushi, tumia amri.

# yum list openssh-4.3p2

[ Unaweza pia kupenda: Jinsi ya Kulinda na Kuimarisha Seva ya OpenSSH ]

Ikiwa hukumbuki jina halisi la kifurushi, kisha utumie kipengele cha utafutaji kutafuta vifurushi vyote vinavyopatikana ili kufanana na jina la kifurushi ulichotaja. Kwa mfano, kutafuta vifurushi vyote vinavyolingana na neno.

# yum search vsftpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: ftp.iitm.ac.in
============================== Matched: vsftpd ========================
ccze.i386 : A robust log colorizer
pure-ftpd-selinux.i386 : SELinux support for Pure-FTPD
vsftpd.i386 : vsftpd - Very Secure Ftp Daemon

Sema ungependa kujua maelezo kuhusu kifurushi kabla ya kukisakinisha. Ili kupata habari juu ya kifurushi toa tu amri ifuatayo.

# yum info firefox
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: ftp.iitm.ac.in
Available Packages
Name       : firefox
Arch       : i386
Version    : 10.0.6
Release    : 1.el5.centos
Size       : 20 M
Repo       : updates
Summary    : Mozilla Firefox Web browser
URL        : http://www.mozilla.org/projects/firefox/
License    : MPLv1.1 or GPLv2+ or LGPLv2+
Description: Mozilla Firefox is an open-source web browser, designed for standards
           : compliance, performance and portability.

Ili kuorodhesha vifurushi vyote vinavyopatikana kwenye hifadhidata ya Yum, tumia amri iliyo hapa chini.

# yum list | less

Ili kuorodhesha vifurushi vyote vilivyowekwa kwenye mfumo, toa tu amri iliyo chini, itaonyesha vifurushi vyote vilivyowekwa.

# yum list installed | less

Yum hutoa utendakazi hutumika kupata kifurushi maalum cha faili. Kwa mfano, ikiwa ungependa kujua jina la kifurushi ambacho kina /etc/httpd/conf/httpd.conf.

# yum provides /etc/httpd/conf/httpd.conf
Loaded plugins: fastestmirror
httpd-2.2.3-63.el5.centos.i386 : Apache HTTP Server
Repo        : base
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-63.el5.centos.1.i386 : Apache HTTP Server
Repo        : updates
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-65.el5.centos.i386 : Apache HTTP Server
Repo        : updates
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-53.el5.centos.1.i386 : Apache HTTP Server
Repo        : installed
Matched from:
Other       : Provides-match: /etc/httpd/conf/httpd.conf

Ili kupata ni vifurushi vingapi vilivyosakinishwa kwenye mfumo wako vina masasisho yanayopatikana, angalia ili kutumia amri ifuatayo.

# yum check-update

Ili kusasisha mfumo wako na masasisho yote ya usalama na kifurushi cha binary, endesha amri ifuatayo. Itasakinisha viraka vyote vya hivi punde na masasisho ya usalama kwenye mfumo wako.

# yum update

Katika Linux, idadi ya vifurushi huwekwa kwenye kikundi fulani. Badala ya kusakinisha vifurushi vya mtu binafsi na yum, unaweza kusakinisha kikundi fulani ambacho kitasakinisha vifurushi vyote vinavyohusiana ambavyo ni vya kikundi. Kwa mfano kuorodhesha vikundi vyote vinavyopatikana, toa tu amri ifuatayo.

# yum grouplist
Installed Groups:
   Administration Tools
   DNS Name Server
   Dialup Networking Support
   Editors
   Engineering and Scientific
   FTP Server
   Graphics
   Java Development
   Legacy Network Server
Available Groups:
   Authoring and Publishing
   Base
   Beagle
   Cluster Storage
   Clustering
   Development Libraries
   Development Tools
   Eclipse
   Educational Software
   KDE (K Desktop Environment)
   KDE Software Development

Ili kusakinisha kikundi fulani cha kifurushi, tunatumia chaguo kama groupinstall. Kwa mfano, kusakinisha MySQL Database, tekeleza amri iliyo hapa chini.

# yum groupinstall 'MySQL Database'
Dependencies Resolved

=================================================================================================
Package								Arch      Version			 Repository        Size
=================================================================================================
Updating:
 unixODBC                           i386      2.2.11-10.el5      base              290 k
Installing for dependencies:
 unixODBC-libs                      i386      2.2.11-10.el5      base              551 k

Transaction Summary
=================================================================================================
Install       1 Package(s)
Upgrade       1 Package(s)

Total size: 841 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : unixODBC-libs	1/3
  Updating       : unixODBC         2/3
  Cleanup        : unixODBC         3/3

Dependency Installed:
  unixODBC-libs.i386 0:2.2.11-10.el5

Updated:
  unixODBC.i386 0:2.2.11-10.el5

Complete!

Ili kusasisha vifurushi vyovyote vya kikundi vilivyosakinishwa, endesha tu amri ifuatayo kama inavyoonyeshwa hapa chini.

# yum groupupdate 'DNS Name Server'

Dependencies Resolved
================================================================================================================
 Package			Arch	        Version				Repository           Size
================================================================================================================
Updating:
 bind                           i386            30:9.3.6-20.P1.el5_8.2          updates              981 k
 bind-chroot                    i386            30:9.3.6-20.P1.el5_8.2          updates              47 k
Updating for dependencies:
 bind-libs                      i386            30:9.3.6-20.P1.el5_8.2          updates              864 k
 bind-utils                     i386            30:9.3.6-20.P1.el5_8.2          updates              174 k

Transaction Summary
================================================================================================================
Install       0 Package(s)
Upgrade       4 Package(s)

Total size: 2.0 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : bind-libs            1/8
  Updating       : bind                 2/8
  Updating       : bind-chroot          3/8
  Updating       : bind-utils           4/8
  Cleanup        : bind                 5/8
  Cleanup        : bind-chroot          6/8
  Cleanup        : bind-utils           7/8
  Cleanup        : bind-libs            8/8

Updated:
  bind.i386 30:9.3.6-20.P1.el5_8.2                  bind-chroot.i386 30:9.3.6-20.P1.el5_8.2

Dependency Updated:
  bind-libs.i386 30:9.3.6-20.P1.el5_8.2             bind-utils.i386 30:9.3.6-20.P1.el5_8.2

Complete!

Ili kufuta au kuondoa kikundi chochote kilichosakinishwa kutoka kwa mfumo, tumia tu amri iliyo hapa chini.

# yum groupremove 'DNS Name Server'

Dependencies Resolved

===========================================================================================================
 Package                Arch              Version                         Repository          Size
===========================================================================================================
Removing:
 bind                   i386              30:9.3.6-20.P1.el5_8.2          installed           2.1 M
 bind-chroot            i386              30:9.3.6-20.P1.el5_8.2          installed           0.0

Transaction Summary
===========================================================================================================
Remove        2 Package(s)
Reinstall     0 Package(s)
Downgrade     0 Package(s)

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing        : bind                                                   1/2
warning: /etc/sysconfig/named saved as /etc/sysconfig/named.rpmsave
  Erasing        : bind-chroot                                            2/2

Removed:
  bind.i386 30:9.3.6-20.P1.el5_8.2                                        bind-chroot.i386 30:9.3.6-20.P1.el5_8.2

Complete!

Ili kuorodhesha hazina zote za Yum zilizowezeshwa kwenye mfumo wako, tumia chaguo lifuatalo.

# yum repolist

repo id                     repo name                                            status
base                        CentOS-5 - Base                                      enabled:  2,725
epel                        Extra Packages for Enterprise Linux 5 - i386         enabled:  5,783
extras                      CentOS-5 - Extras                                    enabled:    282
mod-pagespeed               mod-pagespeed                                        enabled:      1
rpmforge                    RHEL 5 - RPMforge.net - dag                          enabled: 11,290
updates                     CentOS-5 - Updates                                   enabled:    743
repolist: 20,824

Amri ifuatayo itaonyesha hazina zote za yum zilizowezeshwa na kuzimwa kwenye mfumo.

# yum repolist all

repo id                     repo name                                            status
C5.0-base                   CentOS-5.0 - Base                                    disabled
C5.0-centosplus             CentOS-5.0 - Plus                                    disabled
C5.0-extras                 CentOS-5.0 - Extras                                  disabled
base                        CentOS-5 - Base                                      enabled:  2,725
epel                        Extra Packages for Enterprise Linux 5 - i386         enabled:  5,783
extras                      CentOS-5 - Extras                                    enabled:    282
repolist: 20,824

Ili kusakinisha kifurushi fulani kutoka kwa hazina maalum iliyowezeshwa au iliyozimwa, lazima utumie chaguo la --enablerepo katika amri yako ya yum. Kwa mfano kusakinisha kifurushi cha PhpMyAdmin, toa tu amri.

# yum --enablerepo=epel install phpmyadmin

Dependencies Resolved
=============================================================================================
 Package                Arch           Version            Repository           Size
=============================================================================================
Installing:
 phpMyAdmin             noarch         3.5.1-1.el6        epel                 4.2 M

Transaction Summary
=============================================================================================
Install       1 Package(s)

Total download size: 4.2 M
Installed size: 17 M
Is this ok [y/N]: y
Downloading Packages:
phpMyAdmin-3.5.1-1.el6.noarch.rpm                       | 4.2 MB     00:25
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : phpMyAdmin-3.5.1-1.el6.noarch             1/1
  Verifying  : phpMyAdmin-3.5.1-1.el6.noarch             1/1

Installed:
  phpMyAdmin.noarch 0:3.5.1-1.el6

Complete!

Huduma ya Yum hutoa ganda maalum ambapo unaweza kutekeleza amri nyingi.

# yum shell
Loaded plugins: fastestmirror
Setting up Yum Shell
> update httpd
Loading mirror speeds from cached hostfile
 * base: mirrors.sin3.sg.voxel.net
 * epel: ftp.riken.jp
 * extras: mirrors.sin3.sg.voxel.net
 * updates: mirrors.sin3.sg.voxel.net
Setting up Update Process
>

Kwa chaguo-msingi yum huweka data ya kifurushi kilichowezeshwa katika /var/cache/yum/ na kila saraka ndogo, kusafisha faili zote zilizohifadhiwa kutoka kwa hazina iliyowezeshwa, unahitaji kutekeleza amri ifuatayo mara kwa mara ili kusafisha kashe yote na kutengeneza. hakikisha kuwa hakuna nafasi isiyo ya lazima inayotumiwa. Hatutaki kutoa matokeo ya amri iliyo hapa chini, kwa sababu tunapenda kuweka data iliyohifadhiwa kama ilivyo.

# yum clean all

Kuangalia shughuli zote zilizopita za amri ya yum, tumia tu amri ifuatayo.

# yum history

Loaded plugins: fastestmirror
ID     | Login user               | Date and time    | Action(s)      | Altered
-------------------------------------------------------------------------------
    10 | root               | 2012-08-11 15:19 | Install        |    3
     9 | root               | 2012-08-11 15:11 | Install        |    1
     8 | root               | 2012-08-11 15:10 | Erase          |    1 EE
     7 | root               | 2012-08-10 17:44 | Install        |    1
     6 | root               | 2012-08-10 12:19 | Install        |    2
     5 | root               | 2012-08-10 12:14 | Install        |    3
     4 | root               | 2012-08-10 12:12 | I, U           |   13 E<
     3 | root               | 2012-08-09 13:01 | Install        |    1 >
     2 | root               | 2012-08-08 20:13 | I, U           |  292 EE
     1 | System            | 2012-08-08 17:15 | Install        |  560
history list

Tumejaribu kufidia mambo yote ya msingi ili kuendeleza amri za yum na mifano yao. Ikiwa kitu chochote kinachohusiana na amri za yum kinaweza kukosa. Tafadhali tusasishe kupitia kisanduku chetu cha maoni. Kwa hivyo, tunaendelea kusasisha sawa kulingana na maoni yaliyopokelewa.