🧺4、软件安装
00 分钟
2024-2-28
2024-6-25
type
status
date
slug
summary
tags
category
icon
password
文章状态
软件安装
软件包类型
源码包
源码包中保存的是源代码,源代码需要编译之后才能被计算机识别,它可以根据需求来自定义安装自己需要的功能
·优点√
  • 开源,可以修改源代码(提供了可以修改源代码的可能)
  • 自定义安装所需功能
  • 编译安装,稳定高效
  • 卸载方便,删除安装目录即可
·缺点×
  • 安装过程复杂
  • 与rpm安装相比,安装时间较长
# 安装过程复杂:
不同源代码使用不同的编译工具,而编译工具大多数都为rpm包
需要安装函数库文件(大量函数文件的集合)
rpm包
RPM,Red Hat Packages Manager的简称。Linux下的通用的软件包管理方式。
·优点√
  • 安装简单方便
  • 便于升级、卸载
·缺点×
  • 大多数rpm包需要解决依赖关系
Q 为什么rpm包安装时报错,提示了需要哪些文件,管理员仍然无法解决依赖关系?
A 在安装失败报错时,不一定会说明缺少了哪个软件包,而是提示缺少了哪些文件,管理员虽然知道了缺少哪一些文件,但是却不知道这些缺失的文件是哪个软件包装出来的。
————————————注——————————————
·RPM包命名规则
httpd-2.2.15-53.el6.centos.x86_64.rpm
httpd
2.2.15
53
el6.centos
X86_64
rpm
软件包名
软件版本
发布次数
适合的Linux平台
适合的硬件平台
rpm包扩展名
———————————————————————————
一、RPM命令直接安装
(一)RPM命令
1、安装命令
格式:rpm -ivh [软件包全名]
  • i install,即安装软件 # 也可使用--install
  • v 显示安装过程中的详细信息
  • h 以#号显示安装进度
2、卸载命令
格式:rpm -e [软件名] # 不用指定全名
3、升级命令
格式:rpm -Uvh [软件包全名]
  • U 升级安装,若没有安装则直接安装,若安装有旧版本,则升级安装
  • F 升级安装,若没安装,则不安装,必须有旧版才能进行升级安装
4、查询已安装的软件信息
格式:rpm -q [包名] 查询是否安装
rpm -qa 查看系统中已安装的所有RPM软件包列表
rpm -qi [包名] 查看指定软件所安装的信息
rpm -ql [包名] 查看指定软件所安装目录,文件列表
5、查询未安装的RPM包文件
格式:rpm -qpl [包全名] 查询指定未安装软件所安装的目录、文件列表
rpm -qpR [包全名] 查询指定未安装软件的依赖文件
6、查询文件或者目录属于哪个RPM软件
格式:rpm -qf [文件或目录名]
(二)安装实例
① RPM命令安装tree命令(无依赖关系)
rpm -ivh tree-1.6.0-10.el7.x86_64.rpm
(#卸载:rpm -e tree ,卸载时不用指定包全名)
② RPM命令安装gcc
#安装GCC过程中因为有软件包依赖关系,所以安装过程显得特别困难。
二、YUM安装
# 因为在RPM安装过程中经常要解决依赖关系,而有些依赖关系并不会有准确的依赖安装包提示信息
(一)设置YUM源
Centos7当中YUM源的配置文件存在于/etc/yum.repos.d/目录下,用户可以自定义yum配置文件名称,但是后缀必须是以.repo结尾。
A. 网络yum源(163源为例)
① wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
下载163源的repo文件
② cp CentOS7-Base-163.repo /etc/yum.repos.d/ 、cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
mv CentOS7-Base-163.repo CentOS-Base.repo
将下载的163源repo文件替换为系统的网络源repo文件
③ yum clean all、yum makecache、yum update
删除原yum源缓存、建立yum源元数据缓存、更新yum源
# 默认网络yum源优先生效。
B. 本地yum源
① df -h 查看挂载信息;mount /dev/sr0 /mnt/
挂载,光盘中有rpm包(/etc/yum.repos.d/Packages/)、依赖关系(/etc/yum.repos.d/repodata)
② vim /etc/yum.repos.d/CentOS-Media.repo
修改本地yum源配置文件(启用、指向挂载点)
③ mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
修改网络yum源配置文件,使配置文件失效
# 默认网络yum源优先生效。当只改变配置文件时,在yum安装过程中依旧会报错;所以需要改变文件文件位置或者换个名字使其失效
— 三个部分设置时不分先后顺序,设置完成之后就可以执行本地yum安装
C、局域网YUM源
·服务器端
① 安装httpd、createrepo;
② 将/mnt/Packages cp到/var/www/html/下;
③ createrepo /var/www/html/;
④ createrepo /var/www/html/ -g /mnt/repodata/*comps.xml --update
# -g生成软件组依赖,--update在已有基础上生成
⑤ 关闭防火墙、seLinux;
# iptables -F 临时清空防火墙规则;systemctl stop firewalld 关闭防火墙
6. 启动http服务。# netstat查看
·客户端
① 关闭防火墙;
# 通过浏览器访问IP/package的方式验证
② 卸载客户端/dev/sr0;
# 非必要,此步骤为证明未使用光盘中的本地yum源
③ 配置本地yum源配置文件;
# /etc/yum.repos.d/CentOS-Media.repo中enabled=1改为0
④ 配置网络yum源配置文件;
# 注释/etc/yum.repos.d/CentOS-Base.repo所有原有信息
⑤ 添加局域网yum源到网络源配置文件并保存退出;
# 添加内容:[test]
name=centos7
baseurl=http://192.168.30.252
gpgcheck=0
enabled=1
⑥ 测试安装效果:yum clean all、yum makecache、yum repolist、yum list
# 清除原有yum缓存、建立元数据缓存、查看当前使用yum源、查看当前源下安装包
(二)yum管理命令
1、yum安装软件命令
格式:yum install [软件名] # yum -y install [软件名]
yum groupinstall [软件组名]
2、yum卸载软件命令
格式:yum remove [软件名]
yum groupremove [软件组名]
3、yum升级
格式:yum update
yum groupupdate
4、yum软件包查询
yum list 查询所有可以安装的软件包
yum list [包名] 查询yum源中是否有所查询包
yum info [软件名] 查询指定软件包的信息
yum grouplist [软件组名] 查询所有可以安装的软件组
yum groupinfo [软件组名] 列出软件组中包含的软件
  • 注- 频繁的用yum安装后可能会出现安装错误的现象。解决方式如下:
① 执行yum clean all清空yum缓存信息;
② 执行yum makecache根据配置文件建立新的缓存数据;
③ 执行yum list读取yum可安装的软件包。
—·拓展———————————————————————
·保存安装包
配置文件路径 => /etc/yum.conf
修改文件内容:
# 保存路径cachedir=/var/cache/yum/$basearch/$releasever
# keepcache=0,1表示保存、0表示不保存。默认为0。
·epel扩展源
安装epel、ntfs-3g
yum -y install epel-release、yum -y install ntfs-3g
挂载NTFS格式的扩展源
mount -t ntfs-3g /dev/sdb1 /media/
———————————————————————————
源码包安装
① 解压ngnix安装包、切换到解压所得目录下;
# yum -y install gcc gcc-c++,安装编译器——解决编译工具
② 执行./comfigure来检测;
./comfigure —— 报错↓
# yum -y install pcre pcre-devel、yum -y install zlib zlib-devel,解决依赖库
./comfigure --prefix=/usr/local/nginx —— 完毕
# 指定开启模块和安装位置
③ make && make install;
# 编译&&安装
④ 启动Nginx、网页访问测试
启动 →/usr/local/nginx/sbin/nginx;停止 →/usr/local/nginx/sbin/nginx -s stop
# netstat -anpt确认80端口开启
—·拓展———————————————————————
·&&命令连接符
只有当连接符前面的命令执行无误之后才会继续执行后面的命令
———————————————————————————
上一篇
3、Vim编辑器
下一篇
5、用户管理