1. rpm工具
rpm Redhat Package Manager, 设计理念是开放的,不仅仅是在RedHat平台上,在SUSE上也是可以使用的。

rpm包名字构成由-和.分成了若干部分,如abrt-cli-2.0.8-15.el6.centos.i686.rpm,abrt-cli是包名,2.0.8-15是版本号,el6指的是redhat企业版6,centos指的是这是在centos上用的,i686指的是平台类型。有些rpm包并没有写具体的平台而是noarch,这代表这个rpm包没有硬件平台限制。

安装一个包:rpm -ivh /mnt/Packages/libjpeg-turbo-devel-1.2.1-1.el6.i686.rpm

-i 表示安装,-v 可视化,-h显示安装进度 
--force : 强制安装,即使覆盖属于其他包的文件也要安装 
--nodeps : 当要安装的rpm包依赖其他包时,即使其他包没有安装,也要安装这个包 
升级:rpm -Uvh filename.rpm
-U 就是升级的意思

rpm的卸载:
rpm -e filename  //这里的filename是通过rpm的查询功能所查询到的 
rpm -qa |grep libjpeg-turbo-devel
rpm -e libjpeg-turbo-devel

查询一个包是否安装 
rpm -q  包名   (不带有平台信息以及后缀名 )

查询当前系统所有安装过的rpm包
rpm -qa

查询rpm包的相关信息 : 
rpm -qi 包名

列出一个rpm所安装的文件: 
rpm -ql      包名

某个文件属于哪个rpm包: 
rpm -qf filename  //这里可以结合反引号一起使用,比如 rpm -qf `which ls`

2. yum工具
yum list 列出所有可用rpm包资源
搜索某个包: yum search  ‘keywords’ or yum list |grep ‘keywords’
yum 安装包: yum install -y  filename(包名)
yum 卸载包: yum remove  -y filename (包名)
yum升级包: yum update -y filename(包名)yum查找包: yum provides  "*/vim"   //这里用通配,可以查找一个命令由哪个包安装来的

yum grouplist  列出所有的套件
yum groupinstall    安装套件
yum groupremove   卸载套件

创建本地的yum源
mount /dev/cdrom /mnt

cp -r /etc/yum.repos.d  /etc/yum.repos.d.bak    //先备份一下

rm -f /etc/yum.repos.d/*

vim /etc/yum.repos.d/dvd.repo  #加入如下内容:

[dvd]
name=install dvd
baseurl=file:///mnt
enabled=1
gpgcheck=0

yum list  //看是否有dvd的标志出现

安装yum扩展源 rpm -ivh www.lishiming.net/data/attachmen ... e-6-8_32.noarch.rpm   (其他地址http://www.aminglinux.com/bbs/thread-6721-1-1.html)也可以这样安装: yum install -y epel-release

利用yum下载一个rpm包
yum install -y yum-plugin-downloadonly.noarch  #首先需要安装一个插件来支持只下载不安装
yum install 包名 -y --downloadonly   #这样就已经下载,默认在 /var/cache/yum/base/packages/
yum install 包名 -y --downloadonly --downloaddir=/usr/local/src  #指定一个下载目录,如果是已经安装过的rpm包这样不成功,需要使用reinstall: yum reinstall  包名  -y --downloadonly --downloaddir=/usr/local/src

3. 源码包安装
源码包是开源的可自行更改的程序包,大多用C语音开发,不能直接使用,需要编译成二进制的可执行文件
编译源码包的必须有gcc支持,如果没有需要安装 yum install -y gcc
通常情况编译三步曲: ./configure 配置各种编译参数; make 根据指定的编译参数进行编译;make install 安装到指定目录

实例:
下载源码包 cd /usr/local/src/ #约定目录;
wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.27.tar.bz2
解压
tar jxvf httpd-2.2.27.tar.bz2  //查看README或者INSTALL说明文件
指定编译参数 ./configure --help  
echo $? 验证是否成功
make
make install

扩展:
1. 使yum保留安装过的包   http://www.360doc.com/content/11/0218/15/4171006_94080041.shtml
2. 使用网易yum源   http://www.aminglinux.com/bbs/thread-7475-1-1.html
3. 搭建局域网yum源  http://www.aminglinux.com/bbs/thread-7627-1-1.html
4. yum源优先级  http://www.aminglinux.com/bbs/thread-7168-1-1.html

lesson - 9 Linux系统软件包管理的更多相关文章

  1. lesson - 12 Linux系统日常管理1

    监控系统状态 – w, vmstat命令w, uptimesystem load averages 单位时间段内活动的进程数 查看cpu的个数和核数vmstat 1vmstat 1 10vmstat各 ...

  2. lesson - 14 linux系统日常管理3

    1. Linux系统服务管理工具ntsysv 类似图形界面管理工具,如果没有该命令使用 yum install -y ntsysv 安装常用服务:crond, iptables, network, s ...

  3. lesson - 13 Linux系统日常管理2

    内容概要: 1. Linux抓包工具 tcpdump 系统自带抓包工具tcpdump -nn -i eth0 tcp and host 192.168.0.1 and port 80tcpdump - ...

  4. lesson - 15 Linux系统日常管理4

    内容概要:1. rsync 命令格式rsync [OPTION]... SRC  DESTrsync [OPTION]... SRC  [USER@]HOST:DESTrsync [OPTION].. ...

  5. 『学了就忘』Linux软件包管理 — 40、Linux系统软件包介绍

    目录 1.Linux系统软件包分类 2.源码包说明 3.二进制包说明 4.RPM包的优缺点 4.RPM包的两种安装方法 5.总结 1.Linux系统软件包分类 Linux系统下的软件包只有源码包和二进 ...

  6. linux RPM软件包管理

    linux RPM软件包管理 目录 1.软件包的介绍 2.rpm包管理 3.rpm包管理前端工具 1.软件包的介绍 在我们在对软件包管理前,先对软件包有个很好的了解,这样更方便我们来对其进行管理. 软 ...

  7. centos Linux系统日常管理1 cpuinfo cpu核数 命令 w, vmstat, uptime ,top ,kill ,ps ,free,netstat ,sar, ulimit ,lsof ,pidof 第十四节课

    centos Linux系统日常管理1  cpuinfo cpu核数   命令 w, vmstat, uptime ,top ,kill ,ps ,free,netstat ,sar, ulimit ...

  8. centos 系统软件包管理 yum 本地yum配置 扩展源epel rpm 清除yum缓存 yum provides "*/vim" 第十节课

    centos  系统软件包管理  yum 本地yum配置  扩展源epel  rpm  清除yum缓存  yum provides "*/vim"   第十节课 你不能保证可逆化操 ...

  9. Linux系统软件包之---Apache

    当前互联网主流web服务说明 静态服务: apache 中小型静态web服务的主流,web服务器中的老大哥 nginx 大型新兴网站静态web服务主流,web服务器中的初生牛犊 lighttpd 静态 ...

随机推荐

  1. 2734:十进制到八进制-poj

    总时间限制:  1000ms 内存限制:  65536kB 描述 把一个十进制正整数转化成八进制. 输入 一行,仅含一个十进制表示的整数a(0 < a < 65536). 输出 一行,a的 ...

  2. Service 之间如何通信?- 每天5分钟玩转 Docker 容器技术(101)

    微服务架构的应用由若干 service 组成.比如有运行 httpd 的 web 前端,有提供缓存的 memcached,有存放数据的 mysql,每一层都是 swarm 的一个 service,每个 ...

  3. selenium 使用xpath定位不到

    <button id="" class="btn btn-some" type="submit"> <i class=&q ...

  4. StringUtils工具类常用方法汇总1(判空、转换、移除、替换、反转)

      Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的方 ...

  5. Smarty基础用法

    一.Smarty基础用法: 1.基础用法如下 include './smarty/Smarty.class.php';//引入smarty类 $smarty = new Smarty();//实例化s ...

  6. ORACLE+PYTHON实战:复制A表数据到B表

    最近在学习python ,看到了pythod的oracle,不仅可以一次fetch多条,也可以一次insert多条,想写一个复制A表数据到B表的程序来看看实际效率能不能提高.写完发现,非常惊艳!效率提 ...

  7. 《Linux命令行与shell脚本编程大全》第二十六章 一些有意思的脚本

    26.1 发送消息 26.1.1 功能分析 1.确定系统中都有谁 $who 给出的信息包括用户名 用户所在终端 用户登入系统的时间 2.启用消息功能 用户可以禁止别人给我发消息,所以需要先检查一下是否 ...

  8. memset的实验

      关于memset的实验 实验一:memset对char数组赋初值 #include<iostream> using namespace std; int main() { char a ...

  9. Android测试:Fundamentals of Testing

    原文地址:https://developer.android.com/training/testing/fundamentals.html 用户在不同的级别上与你的应用产生交互.从按下按钮到将信息下载 ...

  10. 关于无法全然下载CyanogenMod代码的问题

    CyanogenMod真的是一个奇妙的东东,它让开发手机固件不再是手机生产商的专利,每一个有志于此的程序猿都可能为自己的手机定制一份专有的,独一无二的固件,这在曾经是想都不敢想的. 而且Cyanoge ...