软件包管理

1、软件包分类

1)源码包(脚本安装包)

优点:

l  开源,如果有足够的能力,可以修改源代码

l  可以自由选择所需的功能

l  软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高

l  卸载方便

缺点:

l  安装过程步骤较多,尤其安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误

l  编译过程时间较长,安装比二进制安装时间长

l  因为是编译安装,安装过程中一旦报错新手很难解决

2)二进制包(RPM包、系统默认包)

优点:

l  包管理系统简单,只通过几个命令就可以实现现包的安装、升级、查询和卸载

l  安装速度比源码包安装快的多

缺点:

l  经过编译,不再可以看到源代码

l  功能选择不如源码包灵活

l  依赖性

2、RPM包管理-rpm命令管理

1)命名规则:软件包名-版本-发布次数.适合的Linux平台.适合的硬件平台.rpm

2)依赖性

树形依赖:a->b->c

环形依赖:a->b->c->a

模块依赖:a依赖的b是其他模块的子模块(可到www.rpmfind.com查找b是属于哪个模块的)

3)包全名和包名

l  包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径

l  包名:操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm/中的数据库

4)prm安装

rpm -ivh 包全名

选项:

-i:install,安装

-v:verbose,显示详细信息

-h:hash,显示进度

--nodeps:不检测依赖性

5)rpm包升级

rpm-Uvh 包全名

选项:

-U:upgrade,升级

6)rpm卸载

rpm -e 包名

选项:

-e:erase,卸载

7)查询是否安装

rpm -q 包名

选项:

-q:query,查询

-a:all,所有

-p:查询未安装包信息

-i:info,查询软件包详细信息   rpm -qi 包名

-l:list 软件的文件安装位置     rpm -ql 包名

-f 查询系统文件属于哪个rpm包  rpm -qf 系统文件名

-R:查询软件包的依赖性      rpm -qR 包名

8)校验

rpm -V 已安装的包名

选项:

-V:verify,校验指定rpm包中文件

l  验证内容中的8个信息的具体内容如下:

S 文件大小是否改变

M文件的类型或文件的权限(rwx)是否被改变

5 文件MD5校验和是否改变(可以看成文件内容是否改变)

D 设备的中,从代码是否改变

L 文件路径是否改变

U 文件的属主(所有者)是否改变

G 文件的属组是否改变

·T 文件的修改时间是否改变

l  文件类型

c   配置文件(config file)

d   普通文档(documentation)

g  “鬼”文件(ghost file),很少见,就是该文件不应该被这个RPM包包含

1   授权文件(license file)

r   描述文件(read me)

9)rpm包中文件提取

rpm2cpio包全名 | cpio-idv.文件绝对路径

rpm2cpio:将rpm包转换为cpio格式的命令

cpio:是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

3、RPM包管理-yum在线管理

1)IP地址配置

setup            #使用setup工具

vi /etc/sysconfig/network-scripts/ifcfg-ethn,把ONBOOT=no改为ONBOOT=yes #启动网卡

service network restart   #重启网络服务

2)网络yum源

vi /etc/yum.repos.d/CentOS-Base.repo

配置说明:

[base]   容器名称,一定要放在门中

name   容器说明,可以自己随便写

mirrorlist镜像站点,这个可以注释掉

baseurl  我们的yum源服务器的地址。默认是CentOS官方的yum源服务器,是可以使用的,如果你觉得慢可以改成国内的yum源地址

enabled此容器是否生效,如果不写或写成enable=1都是生效,写成enable=0就是不生效

gpgcheck 如果是1是指RPM的数字证书生效,如果是0则不生效

gpgkey 数字证书的公钥文件保存位置。不用修改

3)常见yum软件管理命令

yum list:查询所有可用软件包列表

yum search 包名关键字:搜索服务器上所有和关键字相关的包

yum -y install 包名:安装  -y:自动回答yes

yum -y update 包名:升级

yum -y remove 包名:卸载

4)yum软件组管理命令

yum grouplist:列出所有可用的软件组列表

yum groupinstall 软件组名:安装指定软件组,组名可以由grouplist查询出来

yum groupremove 软件组名:卸载指定软件组

5)光盘yum源搭建

I   挂载光盘:mount /dev/sr0 /mnt/cdrom/

II   让网络yum源失效(使/etc/yum.repos.d/的文件后缀不再是repo)

III  修改光盘yum源文件:vim CentOS-Media.repo baseurl=file:///mnt/cdrom  enabled=1

Linux 第七天的更多相关文章

  1. Linux第七节随笔 diff /uniq /stat

    linux第七讲(上)1.diff link 作用:diff命令能比较单个文件或者目录内容.如果指定比较的是文件,则只有当输入为文本文件时才有效.以逐行的方式,比较文本文件的异同处. 如果指定比较的是 ...

  2. Linux第七周学习总结——可执行程序的装载

    Linux第七周学习总结--可执行程序的装载 作者:刘浩晨 [原创作品转载请注明出处] <Linux内核分析>MOOC课程http://mooc.study.163.com/course/ ...

  3. Linux 学习 (七) 挂载命令 & 用户登陆查看

    Linux达人养成计划 I 学习笔记 挂载命令 mount:查询系统中已经挂载的设备 mount -a:根据配置文件 /etc/fstab 的内容,自动挂载 mount [-t 文件系统] [-o 特 ...

  4. linux 第七周 总结及实验

    姬梦馨 原创作品 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 第七周 Linux内核如何装载和启动一 ...

  5. Linux 第七周实验 及总结

    姬梦馨 原创作品 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 第七周 Linux内核如何装载和启动一 ...

  6. linux第七章笔记

    第七章 链接 链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(或拷贝)到存储器并执行.链接可以执行于编译时,也就是在源代码被翻译成机器代码时:也可以执行于加载时,也就 ...

  7. 20135337朱荟潼 Linux第七周学习总结——可执行程序的装载

    朱荟潼 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 第七周 Linu ...

  8. linux第七章读书笔记

    Vim编辑器 Vim 仅仅通过键盘来在插入和执行命令等多种模式之间切换.这使得Vim可以不用进行菜单或者鼠标操作,并且最小化组合键的操作,对文字录入员或者程序员可以大大增强速度和效率. CHAPTER ...

  9. 【Linux】七种文件类型

    Linux中的七种文件类型 d 目录文件. l 符号链接(指向另一个文件). s 套接字文件. b 块设备文件,二进制文件. c 字符设备文件. p 命名管道文件. - 普通文件

  10. linux笔记七---------管道

    smarty的变量调节器就是linux的管道 管道:前者的输出是后者的输入 {$name|upper}   通过调节器使得名字变为大写输出 {$name|lower} linux的管道: ls –al ...

随机推荐

  1. 几种流行Webservice框架

    一. 几个比较流行的Webservice框架: Apache Axis1.Apache Axis2.Codehaus XFire.Apache CXF.Apache Wink.Jboss  RESTE ...

  2. 转wave 文件解析

    转 1 WAVE 文件格式分析 WAVE 文件作为多媒体中使用的声音波形文件格式之一,它是以RIFF(Resource Interchange File Format)格式为标准的.每个WAVE文件的 ...

  3. 7、Curator的常规操作

    package com.ourteam; import org.apache.curator.RetryPolicy;import org.apache.curator.framework.Curat ...

  4. js 一些方法

    1.js去除字符串前后的空格 function Trim(str) { return str.replace(/(^\s*)|(\s*$)/g, ""); } 2.js打乱数组的顺 ...

  5. bower install的时候报错

    安装错误提示:C:\Scott>bower install bootstrap bower not-cached git://github.com/twbs/bootstrap.git#* bo ...

  6. django 开发之前后端分离开发模式

    1. 什么是前后端分离开发的概念: 前端页面运行前端服务器上,负责页面的渲染(静态文件的加载)与跳转 后端代码运行在后端服务器上, 负责数据的处理(提供数据请求的接口) 2. 前后端分离开发碰到的问题 ...

  7. mac os High Sierra 升级错误

    升级mac OS High Sierra错误 已经成功从10.10升级到10.12.8 mac OS  Sierra了.就是升级到10.13报错. you may not install to thi ...

  8. JQ attr prop 区别

    解决方法:使用prop属性代替attr属性 一.Attr除 checked, selected, 或 disabled状态属性外,其余的属性均可用attr()设置和修改.$("img&quo ...

  9. chrome视频播放加速

    安装video speed controller, 下载源码https://github.com/igrigorik/videospeed,解压 在chrome输入chrome://extention ...

  10. Node2.js

    Node.js简单爬虫的爬取,也是跟着慕课网上抄的,网站有一点点改动,粘上来好复习嘛 var http = require('http') var cheerio = require('cheerio ...