关于rpm及yum的一些感想

rpm -ivh PACKAGE_FILE 

注意:

(1) 不要对内核做升级操作;Linux支持多内核版本并存,因此

,对直接安装新版本内核

v rpm {-q严格–query} [select-options] [query-options]

v [select-options]

-a:all 所有包

-f: 查看指定的文件由哪个程序包安装生成

  特别有用。

-p rpmfile:针对尚未安装的程序包文件做查询操作;

–whatprovides CAPABILITY能力:查询指定的功能关键字

     由哪个包所提供

whatrequires CAPABILITY:查询指定CAPABILITY

      哪个包所依赖

rpm2cpio 包文|cpio itv 预览包内文件可复制。。t测试

rpm2cpio 包文|cpio id *.conf” 释放包内文件


 

[query-options]

changelog:查询rpmchangelog

c: 查询程序的配置文件

d: 查询程序的文档

-i:  information

l: 查看指定的程序包安装后生成的所有文件

查询用法:

qi PACKAGE, -qf FILE, qc PACKAGE, -ql

PACKAGE, qd PACKAGE

qpi PACKAGE_FILE, -qpl PACKAGE_FILE, 

-qa

卸载:

 

rpm  -e –erase [–allmatches] [–nodeps] [– noscripts] [–notriggers] [–test] 

检测程序

rpm {-V

手动验证rpm K/checksig rpmfile 检查包的完整性和签名

rpm import /etc/pki/rpm-gpg/RPMGPG-KEY-CentOS-7 CentOS 7

发行版光盘提供:RPM-GPG-KEY-CentOS-7

rpm qa gpgpubkey*

 

            查到后卸载

       v 数据库重建:

/var/lib/rpm

Rpm -q /-V都会重建

rpm {initdb|rebuilddb} initdb: 初始化

如果事先不存在数据库,则新建之

否则,不执行任何操作

rebuilddb:重建

无论当前存在与否,直接重新创建数据库

YUM: Yellowdog Update Modifierrpm的前端程序,用来 解决软件包相关依赖性,可以在多个库之间定位软件包,

yum repository: yum repo,存储了众多rpm包,以及

包的相关的元数据文件(放置于特定目repodata下)

文件服务器:

ftp://

 

http:/


file:///


/etc/yum.repos.d/*.repo为仓库的指向提供配置

仓库指向的定义:

 

[repositoryID]

name=Some name for this repository

baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

enabled={1|0}

gpgcheck={1|0} 1是检查

需要导入秘钥

 

检测包的合法性和完整性

gpgkey=url

网址或者地址

密钥手动将密钥写入后面enablegroups={1|0}

failovermethod={roundrobin|priority指定}

              默认为:roundrobin,意为随机挑选;

cost=值越小越优先 默认为1000(可不写)


显示仓库列表:

repolist [all|enabled|disabled]

v 显示程序包:

list

# yum list [all | glob_exp1] [glob_exp2] […]

# yum list {available|installed|updates} [glob_exp1]

[…]

v 安装程序包:

install package1 [package2] […]

reinstall package1 [package2] […] (重新安装)


 

 

 

升级程序包:

update [package1] [package2] […]

downgrade package1 [package2] […] (降级)

检查可用升级:

checkupdate

卸载程序包:

remove | erase package1 [package2] […]

查看程序包information

info […]

查看指定的特(可以是某文件)是由哪个程序包所提供:

provides | whatprovides feature1 [feature2] […]

清理本地缓存:

 

yum  clean [ packages | metadata | expirecache | rpmdb | plugins | all ]

构建缓存:

makecache

查看缓存大小    du -sh

查看yum事务历史:

history 

安装及升级本地程序包:

localinstall rpmfile1 [rpmfile2] […]

(install替代)

localupdate rpmfile1 [rpmfile2] […]

(update替代) 包组管理的相关命令:

groupinstall group1 [group2] […] 


groupupdate group1 [group2] […] 


grouplist [hidden] [groupwildcard] […] 


groupremove group1 [group2] […] 


groupinfo group1 […]


如何使用光盘当作本yum仓库:

(1) 挂载光盘至某目录,例/media/cdrom

# mount /dev/cdrom /media/cdrom

(2) 创建个人及光盘配置文件     生成这个配置仓库文件后,用    creatrepo命令生成repodata文件

yum的命令行选项:

nogpgcheck:禁止进gpg check

y: 自动回答为“yes”

q:静默模式

教室创建yum仓库:

createrepo [options] <directory>

 

     wget lftp 10.1.0.1:/pub/Sources/等,下载要安装的软件,单独对其配置repo文件。

   编译安装

之前的组rpm都得rpm group development tools  得安装

第一步:找到configure

./configure –prefix 安装目录 –sysconfdr 配置文件目录

选项:指定安装位置、指定启用的特性

进入文件解压后的目录

help: 获取其支持使用的选项 选项分类:

安装路径设定:

prefix=/

PATH: 指定默认安装位置,默认为/usr/local/

sysconfdir=/PATH配置文件安装位置

 http软件   ./apachectl可执行程序   当前目录下运行


第二步make

第三步make install

安装后的配置

(1) 二进制程序目录导入至PATH环境变量中;

编辑文/etc/profile.d/NAME.sh

export PATH=/PATH/TO/BIN:$PATH

例如将httpapachectl路径加入PATH

 (2) 导入库文件路径

/etc/ld.so.conf.d/NAME.conf

添加新的库文件所在目录至此文件中;

安装目录中的lib

让系统重新生成缓存:

ldconfig [v]


 

 

  (3) 导入头文件

将配置文件http2用软连接的方式连接至/usr/include/http。在/usr/include/内新建一个指向/usr/local/http2/的软连接

Ln -sv /usr/local/http2     http

基于链接的方式实现:

   ln sv    /usr/local/http2   http    将安装文件的配置文件目录指向/usr/include内的一个同名文件


原创文章,作者:sjfbjs,如若转载,请注明出处:http://www.178linux.com/38986

(0)
sjfbjssjfbjs
上一篇 2016-08-24 21:21
下一篇 2016-08-24 21:21

相关推荐

  • 网络这块一些有趣的感想

    还记的那天老师让我们做两台主机的nexthop就是自己的ip地址,然后互相ping测试能否互相联通的实验,昨晚之后我就在想能不能进行一些改进,因为在我看来这种级别的互相ping的前面一个网络段相同太没意思了。 接着我就尝试了几种IP地址 主机A 主机B 192.0.0.1 192.1.0.1 192.1.1.1 192.2.2.2 192.2.1.1 192…

    Linux干货 2016-09-13
  • Linux中查看文本工具

    一、文件查看 文件查看命令:cat,tac,rev,我们重点详解cat命令 cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令 我们可以理解cat命令是复制标准输入到标准输出 cat命令选项: cat [OPTION]… [FILE]… -E:显示行结束符$   &nbs…

    Linux干货 2016-08-07
  • 第六周作业

    1、简述osi七层模型和TCP/IP五层模型 应用层 运行着应用程序的协议http、ftp、tftp等 表示层 将应用层所编辑的数据进行加密或解密,没有协议 会话层 决定一次数据传输发起和接收会话请求,没有协议 传输层 根据选着的协议类型,决定是否将数据分割或重组,协议:tcp、udp等 网络层 编辑逻辑地址信息(原站点、目的站点)和路由选着(ARP)协议:…

    2018-02-06
  • linux进程管理

    linux系统进程查看及管理工具 对于服务器来说重要的IO 设备磁盘网络 pstree,ps,pidof,pgrep,top,htop,glances,pmap,vmstat,dstat,kill,pkill,job,bg,fg,nohup,nice,renice,killall….. pstree命令: pstree-display …

    Linux干货 2016-09-09
  • 利用ansible-playbook从测试环境获取tomcat中java项目新版本发布到生产环境

    一、环境描述 安装有ansible的服务器:192.168.13.45 测试环境服务器:192.168.13.49 /home/app/api-tomcat/webapps/api.war为测试环境新版本war包位置 生产环境服务器:192.168.13.51 /home/app/api-tomcat/webapps/api.war为生产环境war包位置 /…

    Linux干货 2016-12-18
  • Linux中实现java和c语言打印Hello world小程序

    1、C语言实现 先确认linux系统中是否gcc编译器,可以通过rpm -q gcc查询系统已经安装gcc软件包,如果没有安装可以到系统自带光盘里面安装相应的安装包软件。 使用rpm -ivh gcc-4.8.5-4.el7.x86_64.rpm安装编译器,安装后再查询确认已经成功 环境准备好了,我们就可以编写C语言的代码了,我们可以使用vim编辑器编写第一…

    Linux干货 2016-08-26