Linux 软件包的安装与管理

2 篇文章 0 订阅
1 篇文章 0 订阅
目标内容

rpm软件包管理    
yum安装软件包
源码编译安装软件包


1.rpm软件包管理
简称: Redhat Package Manager

主要有RPM和YUM这两种包管理。
两种包管理各有用处,其中主要区别是:
YUM使用简单,可以本地使用也可联网,网络YUM源,就是YUM会去网上的YUM包源去获取所需要的软件包。而RPM的需要的操作精度比较细,需要我们做的事情比较多。

挂载光盘
[root@xuegod72 ~]# umount /dev/sr0   卸载
[root@xuegod72 ~]# mount /dev/sr0 /media   挂载
查看包的个数
[root@xuegod72 ~]# cd /media/Packages
[root@xuegod72 Packages]# ls|wc -l

rpm包说明:
zsh-5.0.2-14.el7.x86_64.rpm
      
zsh -5    0 .   2     -e17     x86    64
软件名 主版本号  次版本号  修订号  RHEL7    CPU架构平台   支持系统位数
注:EL6 EL5

安装rpm软件
命令:rpm [参数] 软件包
参数:
 -i, --install              安装软件包
 --nodeps               不验证软件包依赖
 -v, --verbose            提供更多的详细信息输出
 -h, --hash              软件包安装的时候列出哈希标记

安装例子
[root@xuegod72 Packages]# rpm -ivh mariadb-server-5.5.44-2.el7.x86_64.rpm
忽略依赖
[root@xuegod72 Packages]# rpm -ivh mariadb-server-5.5.44-2.el7.x86_64.rpm --nodeps
第三种:到rpm包相关的网站上去下载软件包
http://rpmfind.net/
http://rpm.pbone.net/
http://www.rpmseek.com/index.html

rpm查询功能
用法:rpm –q 常与下面参数组合使用
 -a  查询所有已安装的软件包
 -f  查询 文件所属软件包
 -i  显示已经安装的rpm软件包信息
 -l 和p搭配使用显示未安装软件包的相关文件列表和信息
通常可以配合管道 | more 来使用,使得结果更易读

[root@xuegod72 Packages]# rpm -q lrzsz               #查找
[root@xuegod72 Packages]# rpm -qi lrzsz              #显示已经安装lrzsz的信息
[root@xuegod72 Packages]# rpm -qf `which vim`
[root@xuegod72 Packages]# rpm -ql zsh|more           #查看zsh 安装了那些文件

rpm包卸载
用法:rpm –e 包名
参数:
--nodeps 忽略依赖
[root@xuegod72 Packages]# rpm -e mariadb-5.5.44.el7.x86_64  --nodeps

签名验证
导入RPM-GPG-KEY后, 安装rpm包时,对rpm的签名进行验证
GPG在Linux上的应用主要是实现官方发布的包的签名机制。
GPG分为公钥及私钥。
公钥:顾名思意,即可共享的密钥,主要用于验证私钥加密的数据及签名要发送给私钥方的数据。
私钥:由本地保留的密钥,用于签名本地数据及验证用公钥签名的数据
例如:验证一个RPM包的签名
[root@xuegod72 Packages]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@xuegod72 Packages]# rpm -K lrzsz-0.12.20-36.el7.x86_64.rpm


2.yum安装软件包
yum(全称为 Yellow dog Updater, Modified)是一个前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记

YUM:解决依赖关系问题,自动下载软件包,它是基于C/S架构
C=client S=ftp\http\file

YUM源分本地源和网络源

本地yum源配置
[root@xuegod72 ~]# rm -rf /etc/yum.repos.d/*
[root@xuegod72 yum.repos.d]# vim rhel7.repo
[7-source] #yum源名称,唯一的,用来区分不同的yum源
name=rhel7-server #对yum源描述信息
baseurl=file:///media #yum源的路径(repodata目录所在的目录)
enabled=1 #为1,表示启用yum源
gpgcheck=0 #为1,使用公钥检验rpm的正确性

清空yum缓存
[root@xuegod72 yum.repos.d]# yum clean all

生成列表
[root@xuegod72 ~]# yum list|more
注意的几个小问题:
 确定光盘是否链接
 光盘是否挂载
 配置文件中格式是否正确,字母,符号有没有少写

yum 使用
1)安装 yum  install  -y
2) 检测升级 yum  check-update
3) 升级 yum  update
4) 软件包查询 yum  list
5) 软件包信息 yum  info
6) 卸载 yum  remove
7) 帮助 yum  -help、man  yum
[root@xuegod72 ~]# yum -y install httpd

安装一组软件包
查看有那些包组
[root@xuegod72 ~]# yum grouplist

安装一个包组
[root@xuegod72 ~]# yum  –y  groupinstall "Security Tools"

3.源码编译安装软件包
源代码包的安装
1)解压解包
tar  -xzvf  源代码包
[说明]
x为解包、z为解压(仅适合gzip,bz2[用j]则先解包再unzip解压)、v显示过程、f指定被解压包名
2)配置
进入解压后的目录,用 ./configure [--prefix=/usr/local/filname] 来配置,这个过程主要是收集系统信息、设置安装目录等(卸载的时候只需将这个目录删除则可)
3)编译
make -j 4
4)安装
make  install

nginx安装
安装依赖
看一下这两个包有没有:pcre-devel  zlib-devel
[root@xuegod72 mnt]# yum -y install zlib-devel
[root@xuegod72 mnt]# yum -y install pcre-devel

添加运行用户
[root@xuegod72 mnt]# useradd -s /sbin/nologin -M nginx
参数解释
 -M 不创建宿主目录
 -s  指定登陆的shell环境  /sbin/nologin  禁止登陆

解压 nginx
[root@xuegod72 mnt]# tar -zxvf nginx-1.0.15.tar.gz
[root@xuegod72 mnt]# tar -zxvf nginx-1.0.15.tar.gz -C /usr/local
[root@xuegod72 mnt]# ls /usr/local
[root@xuegod72 mnt]# cd /usr/local/nginx-1.0.15
[root@xuegod72 nginx-1.0.15]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx

如果出现以上情况,是缺gcc包,安装一下
[root@xuegod72 nginx-1.0.15]# yum install -y gcc     # 在执行 ./configure

[root@xuegod72 nginx-1.0.15]# make -j 4
[root@xuegod72 nginx-1.0.15]# make install


nginx路径优化
首先把主程序复制到etc下面
[root@xuegod72 ~]# cd /usr/local/nginx/sbin/
[root@xuegod72 sbin]# ls
nginx
[root@xuegod72 sbin]# cp nginx /etc/init.d/
验证有没有语法错误
[root@xuegod72 sbin]# /etc/init.d/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
启动nginx ,不加参数,验证

[root@xuegod72 sbin]# /etc/init.d/nginx
[root@xuegod72 sbin]# netstat -anput|grep nginx
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值