文件系统:使用 yum 安装软件包

一、yum命令的基本安装功能

[root@localhost ~]# man yum

command is one of:

 install package1 [package2] [...]  install + 包名

yum -y: 安装时自动回答为yes 

 

reinstall package1 [package2] [...] 重新安装

 

*** 补充rmp命令:rpm -ql + 包名 : 查询包安装生成的文件清单

 rpm -qf + /path/to/file_name: 查询某文件是由哪个软件包生成的

* provides | whatprovides feature1 [feature2] [...]

使用yum来查询软件包生成哪些文件,以及文件是由哪个软件包生成的。

 

update [package1] [package2] [...] 升级版本,可加多个包

update-to [package1] [package2] [...] 指定升级到哪个版本


downgrade package1 [package2] [...]  降级

 

check-update 安装前检查有哪些可以升级的软件包

        

upgrade [package1] [package2] [...]

upgrade-to [package1] [package2] [...]

    这两个命令已经被update取代了

 

remove | erase package1 [package2] [...]

    清除软件包:使用yum来清除包会同时清除它被依赖的包


search string1 [string2] [...]  只记得部分字符,可以进行模糊查询

       

groupinstall group1 [group2] [...] 组安装: 

    1) 针对RHEL 6

    Development tools + Server Platform Development + Desktop Platform Development 

    2) 针对RHEL 5 

    Development tools + development libraries

 安装了这些这些组之后,就可以编译rpm包了,即将源码制作成二进制格式包

    * groupupdate group1 [group2] [...] 升级组      

    * groupremove group1 [group2] [...] 移除组      

 

* localinstall yum除了可以自动安装外,也可以将软件包下载到本地,然后手动安装

  1RHEL 6 

统一使用yum install 来安装即可

    2RHEL 5: 

    需要使用yum localinstall 来安装,同样手动升级可以使用yum localupdateRHEL6处于兼容性需求,也支持这样的用法。

  yum安装软件包最大的优势在于可以自动解决依赖关系

 

-- nogpgcheck : 

对比rpm包,yum即使使用了localinstall,也会检查软件包的来源合法性,如果密钥无法匹配,则下载到本地的软件包也无法使用yum安装,故可以使用长选项 --nogpgcheck来避免检查

 

history : 查看此前的安装卸载等操作历史

 

二、yum命令安装实例演示

/*-------- 1) 基本安装 --------*/

[root@localhost ~]# yum install bind-chroot

1
2
3
4
5
6
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Setting up Install Process
Package 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64 already installed and latest version
Nothing to  do
# 已经安装了最新版,无需安装


 

现在先卸载这个软件包

[root@localhost ~]# rpm -e bind-chroot

1
grep /etc/sysconfig/named : No such  file  or directory


[root@localhost ~]# rpm -e bind-chroot --force

1
rpm: only installation, upgrading, rmsource and rmspec may be forced


[root@localhost ~]# rpm -e bind-chroot

1
error: package bind-chroot is not installed


 

[root@localhost ~]# yum install bind-chroot

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package bind-chroot.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be installed
--> Processing Dependency: bind = 32:9.8.2-0.17.rc1.el6_4.6  for  package: 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64
--> Running transaction check
---> Package bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be installed
--> Finished Dependency Resolution
#依赖关系自动解决
  
Dependencies Resolved
  
=============================================================================
  Package                  Arch                Version                                  Repository         Size
==============================================================================
Installing:
  bind-chroot              x86_64              32:9.8.2-0.17.rc1.el6_4.6                base               71 k
Installing  for  dependencies:
  bind                     x86_64              32:9.8.2-0.17.rc1.el6_4.6                base              4.0 M
  
Transaction Summary
=========================================================================
Install       2 Package(s)
  
Total download size: 4.0 M
Installed size: 7.3 M
Is this ok [y /N ]: 
  
# 输入y表示安装,N表示不安装,默认为不安装,yum可以使用-y自动回答安装
  
Is this ok [y /N ]: y
Downloading Packages:
--------------------------------------------------------------------------------
Total                                                                           42 MB /s  | 4.0 MB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
   Installing : 32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64                                                       1 /2 
   Installing : 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64                                                2 /2 
   Verifying  : 32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64                                                       1 /2 
   Verifying  : 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64                                                2 /2 
  
Installed:
   bind-chroot.x86_64 32:9.8.2-0.17.rc1.el6_4.6                                                                 
  
Dependency Installed:
   bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6                                                                        
  
Complete!


 

 

/*-------- 2) 重新安装 --------*/

 

[root@localhost ~]# yum install bind

1
2
3
4
5
6
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Setting up Install Process
Package 32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64 already installed and latest version
Nothing to  do
# 提示已经安装过了

 

[root@localhost ~]# yum reinstall bind

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# 不论是否安装,都会重新安装一遍
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Reinstall Process
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be reinstalled
--> Finished Dependency Resolution
  
Dependencies Resolved
  
============================================================================
  Package             Arch                  Version                                   Repository           Size
===========================================================================
Reinstalling:
  bind                x86_64                32:9.8.2-0.17.rc1.el6_4.6                 base                4.0 M
  
Transaction Summary
===============================================================================
Reinstall     1 Package(s)
  
Total download size: 4.0 M
Installed size: 7.3 M
Is this ok [y /N ]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
   Installing : 32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64                                                       1 /1 
   Verifying  : 32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64                                                       1 /1 
  
Installed:
   bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6                                                                        
  
Complete!


 

 

/*-------- 3) 卸载软件包 --------*/

[root@localhost ~]# yum remove bind

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be erased
--> Processing Dependency: bind = 32:9.8.2-0.17.rc1.el6_4.6  for  package: 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64
--> Running transaction check
---> Package bind-chroot.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be erased
--> Finished Dependency Resolution
  
Dependencies Resolved
  
================================================================================
  Package                  Arch                Version                                 Repository          Size
==============================================================================
Removing:
  bind                     x86_64              32:9.8.2-0.17.rc1.el6_4.6               @base              7.3 M
Removing  for  dependencies:
  bind-chroot              x86_64              32:9.8.2-0.17.rc1.el6_4.6               @base              0.0  
  # 清除bind的同时会清除bind-chroot,因为bind-chroot是依赖于bind的
  
Transaction Summary
==============================================================================
Remove        2 Package(s)
  
Installed size: 7.3 M
Is this ok [y /N ]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
   Erasing    : 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64                                            1 /2 
   Erasing    : 32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64            2 /2 
warning:  /etc/sysconfig/named  saved as  /etc/sysconfig/named .rpmsave
   Verifying  : 32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64                                                       1 /2 
   Verifying  : 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64                                                2 /2 
  
Removed:
   bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6                                                                        
  
Dependency Removed:
   bind-chroot.x86_64 32:9.8.2-0.17.rc1.el6_4.6                                                                 
  
Complete!


 

 

/*-------- 4)软件包安装信息查询 --------*/

[root@localhost ~]# rpm -qf /etc/inittab

1
initscripts-9.03.40-2.el6.centos.x86_64

[root@localhost ~]# rpm -qf /etc/fstab

1
setup-2.8.14-20.el6_4.1.noarch


  

[root@localhost ~]# yum provides /etc/fstab

1
2
3
4
5
6
7
8
9
10
11
12
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
setup-2.8.14-20.el6_4.1.noarch : A  set  of system configuration and setup files
# 此包生成了/etc/fstab
Repo        : base
Matched from:
Filename    :  /etc/fstab
   
setup-2.8.14-20.el6_4.1.noarch : A  set  of system configuration and setup files
Repo        : installed
Matched from:
Other       : Provides-match:  /etc/fstab


 

 

[root@localhost ~]# yum provides /etc/named.conf

1
2
3
4
5
6
7
8
9
#也可以显示没有安装的文件
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64 : The Berkeley Internet Name Domain (BIND) DNS (Domain Name System)
                                       : server
# 这个包之前被卸载了,这里显示的是服务器仓库上的包
Repo        : base
Matched from:
Filename    :  /etc/named .conf


 

 

/*-------- 5) 模糊匹配查询 --------*/

[root@localhost ~]# yum search init

1
2
3
4
5
6
7
8
9
10
11
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
==============================N /S  Matched: init ===============================
initscripts.x86_64 : The inittab  file  and the  /etc/init .d scripts
iscsi-initiator-utils-devel.x86_64 : Development files  for 
...
upstart.x86_64 : An event-driven init system
xhtml1-dtds.noarch : XHTML 1.0 document  type  definitions
xorg-x11-xinit-session.x86_64 : Display manager support  for  ~/.xsession and ~/.Xclients
  
   Name and summary matches only, use  "search all"  for  everything.

/*-------- 6) 安装包组 --------*/

 

通常安装开发环境,为避免依赖关系,通常需要安装三个组:Development tools; Server Platform Development; Desktop Platform Development

[root@localhost ~]# yum grouplist

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Group Process
Loading mirror speeds from cached hostfile
base /group_gz                                                                 | 220 kB     00:00 ... 
Installed Groups:
    Additional Development
    Base
    Debugging Tools
    ...
    Web Server
    X Window System
Installed Language Groups:
    Arabic Support [ar]
    ...
    Venda Support [ve]
Available Groups:
    Backup Client
    ...
    iSCSI Storage Client
Available Language Groups:
    Afrikaans Support [af]
   ...
    Zulu Support [zu]
Done


 

[root@localhost~]#yum -y groupinstall "Development tools" "Server Platform Development" "Desktop Platform Development"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  
...
  pixman-devel              x86_64         0.26.2-5.el6_4                             base          18 k
  ppl                       x86_64         0.10.2-11.el6                              base         1.3 M
  systemtap-client            x86_64         2.3-3.el6                                  base         3.4 M
  systemtap-devel            x86_64         2.3-3.el6                                  base         1.4 M
  xorg-x11-proto-devel       noarch         7.6-25.el6                                 base         274 k
  yajl                      x86_64         1.0.7-3.el6                                base          27 k
  
Transaction Summary
==============================================================================
Install     115 Package(s)
  
Total download size: 123 M
Installed size: 404 M
...                         
   systemtap-devel.x86_64 0:2.3-3.el6              xorg-x11-proto-devel.noarch 0:7.6-25.el6                    
   yajl.x86_64 0:1.0.7-3.el6                      
  
Complete!


 

 

/*-------- 7) 通过yum下载到本地,然后手动安装软件包 --------*/

[root@localhost ~]# cd /media/cdrom/Packages/

[root@localhost Packages]# yum install bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 这个包已经下载到本地了,因此不再从服务器下载
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Setting up Install Process
Examining bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm: 32:bind-9.8.2-0.17.rc1.el6_4.6.x86_64
Marking bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be installed
--> Finished Dependency Resolution
  
Dependencies Resolved
  
=========================================================================================
  Package     Arch          Version                            Repository                                  Size
==========================================================================================
Installing:
  bind        x86_64        32:9.8.2-0.17.rc1.el6_4.6           /bind-9 .8.2-0.17.rc1.el6_4.6.x86_64        7.3 M
  
Transaction Summary
==========================================================================================
Install       1 Package(s)
  
Total size: 7.3 M
Installed size: 7.3 M
Is this ok [y /N ]: N


 

 

[root@localhost Packages]# yum localinstall bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Local Package Process
Examining bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm: 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64
Marking bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm to be installed
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package bind-chroot.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be installed
--> Processing Dependency: bind = 32:9.8.2-0.17.rc1.el6_4.6  for  package: 32:bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64
--> Running transaction check
---> Package bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be installed
--> Finished Dependency Resolution
  
# 可以看到使用localinstall 也会自动解决依赖关系
  
Dependencies Resolved
  
=========================================================================================
  Package         Arch       Version                       Repository                                      Size
==========================================================================================
Installing:
  bind-chroot     x86_64     32:9.8.2-0.17.rc1.el6_4.6      /bind-chroot-9 .8.2-0.17.rc1.el6_4.6.x86_64     0.0  
Installing  for  dependencies:
  bind            x86_64     32:9.8.2-0.17.rc1.el6_4.6     base                                   4.0 M
  
Transaction Summary
==========================================================================================
Install       2 Package(s)
  
Total download size: 4.0 M
Installed size: 7.3 M
Is this ok [y /N ]: n
Exiting on user Command


 

/*-------- 8) 查看yum命令的历史记录 --------*/

 

[root@localhost ~]# yum history

1
2
3
4
5
6
7
8
9
Loaded plugins: fastestmirror, refresh-packagekit, security
ID     | Login user               | Date and  time     | Action(s)      | Altered
-------------------------------------------------------------------------------
      5 | root <root>              | 2014-08-17 06:53 | Install        |  115   
      4 | root <root>              | 2014-08-17 06:37 | Erase          |    2 EE
      3 | root <root>              | 2014-08-17 06:20 | Reinstall      |    1   
      2 | root <root>              | 2014-08-17 06:16 | Install        |    2  <
      1 | System < unset >           | 2014-07-09 21:22 | Install        | 1205 > 
history  list


 

 

/*-------- 9) 使用yum安装lftp工具包 --------*/

 

现在来安装一个比较常用的ftp工具包 lftp

 

[root@localhost ~]# rpm -ql lftp

1
2
# 首先检查这个软件包有没有安装
package lftp is not installed


[root@localhost ~]# yum install lftp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package lftp.x86_64 0:4.0.9-1.el6 will be installed
--> Finished Dependency Resolution
  
Dependencies Resolved
  
================================================================================
  Package            Arch                 Version                     Repository                   Size
=================================================================================
Installing:
  lftp               x86_64               4.0.9-1.el6                 cdrom-centos6               753 k
  
Transaction Summary
================================================================================
Install       1 Package(s)
  
Total download size: 753 k
Installed size: 2.5 M
Is this ok [y /N ]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
   Installing : lftp-4.0.9-1.el6.x86_64                                                             1 /1 
   Verifying  : lftp-4.0.9-1.el6.x86_64                                                             1 /1 
  
Installed:
   lftp.x86_64 0:4.0.9-1.el6                                                                            
  
Complete!


安装完成,现在可以使用lftpping服务器了:

 

[root@localhost ~]# ifconfig

1
2
3
4
5
6
7
8
9
eth0      Link encap:Ethernet  HWaddr 08:00:27:CA:DF:46  
           inet addr:192.168.56.103  Bcast:192.168.56.255  Mask:255.255.255.0
   # 本机的IP地址
           inet6 addr: fe80::a00:27ff:feca:df46 /64  Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:114790 errors:0 dropped:0 overruns:0 frame:0
           TX packets:46931 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000 
           RX bytes:10065569 (9.5 MiB)  TX bytes:12450568 (11.8 MiB)

 

[root@localhost ~]# lftp 192.168.56.103

1
2
3
4
5
6
7
  
lftp 192.168.56.103:~>  pwd
ftp : //192 .168.56.103 
# 查看登陆的站点
lftp 192.168.56.103:~> ! pwd
/root
#查看本地目录

 

lftp以使用的基本命令有

get 下载单个文件

mget下载多个文件

mirror镜像一个目录到本地

bye退出

cd切换目录

pwd查看当前位置


转自:http://blog.51cto.com/wuyelan/1615130

猜你喜欢

转载自blog.csdn.net/u011314442/article/details/80981439