linux软件管理

2023-12-13 14:54:25

八、软件管理

RPM
相关命令

8.1 RPM包管理

8.1.1 RPM概述

RPM Package Manager (原Red Hat Package Manager,现在是一个递归缩写)
?
由Red Hat公司提出,被众多 Linux 发行版所采用也称二进制( binary code) 无需编译,可以直接使用
?
无法设定个人设置,开关功能
?
软件包示例(注意后缀): 
mysql-community-common-5.7.12-1.el7.x86_64.rpm
zip-3.0-11.el7.x86_64.rpm
wget-1.14-15.el7.x86 64.rpm
tcpdump-4.9.0-5.el7.x86 64.rpm
?
注释:
软件包名:zip
版本号:3.0-11
发布版本:el7(release 7)
系统平台:x86_64
文件后缀:rpm

8.1.2 RPM管理

8.1.2.1 YUM工具
类似于windows软件管家软件中的一件安装。
YUM,(Yellow dog Updater Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。
?
基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装
可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

  • YUM本地源:系统安装光盘

目的:通知linux服务器,通过本机的系统光盘获得软件包,并安装软件
?
0.观察YUM核心配置目录
1.删除官方YUM库
2.编写本地YUM库配置文件
3.挂载安装光盘
4.使用YUM安装和卸载程序
5.模拟客户机访问
?

0.观察YUM核心配置目录

·记住这个目录/etc/yum.repos.d/
·打开一个*.repo
·观察国外地址(下载速度慢)

1.删除官方YUM库

mv /etc/yum.repos.d/*  /tmp # 移动
?
tar -cvf repo.tar *
mv repo.tar /tmp/

2.编写本地YUM库配置文件

vim /etc/yum.repos.d/dvd.repo ? ?# dvd为配置文件名
?
# 文件中输入
[ dvd]   ? ?# 文件名
name=dvd    # 描述
baseurl=file:///mnt/cdrom
gpgcheck=0 ? ? # 包校验,0不校验
以上内容说明:
/etc/yum.repos.d/是YUM下载地址库目录
[dvd]某一个库的名称,中括号是必须的
name=dvd是库的说明,name是必须的
baseurl=file:///mnt/cdrom下载库的具体地址,重要
gpgcheck=0是关闭校验

3.挂载安装光盘

mkdir /mnt/cdrom    # 准备挂载文件夹
mount /dev/cdrom  /mnt/cdrom/   # 挂载未成功,执行把光盘放到服务器上,并通电
ls /mnt/cdrom
?
vim /root/.bashrc   # 写入挂载信息,自启动文件,跟随用户启动运行的程序运行
mount  /dev/cdrom  /mnt/cdrom
init 6  # 重启

4.使用YUM安装和卸载程序

# 安装软件
yum install -y httpd
?
# 启动软件
systemctl start httpd
?
#关闭防火墙
systemctl stop firewalld 
?
# 禁用防火墙
systemctl disable firewalld

5.模拟客户机访问

# 浏览器浏览128.0.0.1

  • YUM网络源:更换阿里源创建

# 清空/etc/yum.repos.d/* 
rm -rf /etc/yum.repos.d/*
?
# 创建yum网络源仓库
wget -o /etc/yum.repos.d/Centos-Base.repo http://mirrors .aliyun.com/repo/Centos-7.repo
?
yum clean all   # 删除缓存中所有安装包
yum makecache   # 创建安装包缓存

  • 使用YUM管理 RPM包

1.安装

# 全新安装
yum -y install httpd vsftpd
?
# 重新安装,当软件缺失文件,可尝试重新安装
yum -y reinstall httpd
?
# 升级安装
yum -y update httpd
yum -y update ? # 升级系统

2.查询

yum list httpd  # @表示已安装

3.卸载

yum -y remove httpd

  • YUM其它例子:

查看软件依赖关系

yum deplist

查看文件属于哪个软件

yum provides vim

8.1.2.2 RPM工具
red hat自带软件管理工具。
?
与YUM功能相同,但不考虑依赖关系。

1.安装

# 找到安装包,cdrom进行挂载
cd /mnt/cdrom/Packages
?
# 检查包是否存在,wget下载工具,类似迅雷
ls wget-1.14-18.el7_6.1.x86_64.rpm
?
# 安装包,i-install,v-view,h-百分比
rpm -ivh wget-1.14-18.el7_6.1.x86_64.rpm
# 等价于
yum -y install wget-1.14-18.el7_6.1.x86_64

2.查询

rpm -q wget-1.14-18.el7_6.1.x86_64  # 不加.rpm

3.卸载

rpm -evh wget-1.14-18.el7_6.1.x86_64
?
# 再次查询包是否存在
rpm -q wget-1.14-18.el7_6.1.x86_64

# rpm缺点不处理依赖关系
rpm - ivh xguest- 1.0.10- 32.el7.noarch.rpm

8.1.3 相关命令

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

yum命令的基本语法如下:

yum [options] [command] [package ...]

参数说明

  • options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为 "yes"),-q(不显示安装的过程)等等。

  • command:要进行的操作。

  • package:安装的包名。

  • 列出所有可更新的软件清单命令:yum check-update

  • 更新所有软件命令:yum update

  • 仅安装指定的软件命令:yum install <package_name>

  • 仅更新指定的软件命令:yum update <package_name>

  • 列出所有可安裝的软件清单命令:yum list

  • 删除软件包命令:yum remove <package_name>

  • 查找软件包命令:yum search <keyword>

  • 清除缓存命令:

    • yum clean packages: 清除缓存目录下的软件包

    • yum clean headers: 清除缓存目录下的 headers

    • yum clean oldheaders:清除缓存目录下旧的 headers

    • yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers

8.1.3.2 rpm
Linux rpm 命令用于管理套件。
?
rpm(英文全拼:redhat package manager) 原本是 Red Hat Linux 发行版专门用来管理 Linux 各项套件的程序,由于它遵循 GPL 规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM 套件管理方式的出现,让 Linux 易于安装,升级,间接提升了 Linux 的适用度。

rpm命令的基本语法如下:

rpm [-acdhilqRsv][-b<完成阶段><套间档>+][-e<套件挡>][-f<文件>+][-i<套件档>]

参数说明

  • -e<套件档>或--erase<套件档>  删除指定的套件。

  • -h或--hash  套件安装时列出标记。

  • -i  显示套件的相关信息。

  • -i<套件档>或--install<套件档>  安装指定的套件档。

  • -q  使用询问模式,当遇到任何问题时,rpm指令会先询问用户。

  • -v  显示指令执行过程。

8.2 源码包管理

source code需要经过GC,C++编译环境编译才能运行
?
可以设定个人设置,但配置复杂
?
软件包示例: nginx-1.8.1.tar.gz

Guff_hys_python数据结构,大数据开发学习,python实训项目-CSDN博客

?

文章来源:https://blog.csdn.net/HYSliuliuliu/article/details/134701602
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。