Linux软件管理

编程入门 行业动态 更新时间:2024-10-23 23:33:52

Linux<a href=https://www.elefans.com/category/jswz/34/1770125.html style=软件管理"/>

Linux软件管理

Linux软件管理-yum工具

文章目录

  • Linux软件管理-yum工具
    • yum基本概述
    • yum源的配置
    • yum实战案例
    • 制作本地yum仓库
    • 制作企业级yum仓库
    • 用Nginx做镜像仓库

yum基本概述

什么是yum

yum是RedHat以及CentOS中的软件包管理器,能够通过互联网下载以rpm结尾的包,并且安装,并可以自动处理依赖性关系,无需繁琐的一次次下载安装。

1.联网获取软件
2.基于RPM管理
3.自动解决依赖
4.命令简单好记
5.生产最佳实践

什么是yum源

要成功的使用yum工具安装软件包,就需要有一个包含各种rpm软件包的repository(软件仓库),这个软件仓库我们习惯称之为yum源或者yum 仓库这个源可以是本地的也可以是网络的。

yum源的配置

安装完系统后,必须要有的两个仓库:

基础仓库:base

扩展仓库:epel

仓库的配置文件

位置:/etc/yum.repos.d/
名字:全部都是以repo结尾的文件
配置:
## 阿里Base源配置的两种方法:
wget -O /etc/yum.repos.d/zls_base.repo .repo
curl -o /etc/yum.repos.d/zls_base.repo .repo## 阿里epel源配置的两种方法:
wget -O /etc/yum.repos.d/epel.repo .repo
curl -o /etc/yum.repos.d/epel.repo .repo

各大镜像源:
阿里云:
清华源:/
163源:/
华为源:/
科大源:/

yum实战案例

yum仓库内软件包的查询

## 查看当前系统所有可用仓库里面的安装包
yum list## 查看仓库里指定包的详细信息(未安装的也可以查)
例如:yum info tree ## 查询ifconfig命令属于哪个包
yum provides */ifconfig

yum仓库查询

## 查看当前yum的可用仓库都有哪些
yum repolist## 查看yum的所有仓库有哪些
yum repolist all## 使用命令开启或者关闭仓库(yum install -y yum-utils)
yum-config-manager --disable base
yum-config-manager --enable base

yum安装软件包

## 安装
yum install -y 包名## 本地安装,并且解决依赖关系(依赖的包必须在仓库里有)
yum localinstall## 网络资源安装
yum install -y .9.2009/os/x86_64/Packages/vsftpd- 3.0.2-28.el7.x86_64.rpm

yum重装软件

## 如果误删除软件的配置文件,或者相关目录,可以使用reinstall
yum reinstall nginx -y

yum更新软件

## 检查当前系统中的软件,与yum仓库中的软件对比,需要更新的软件
yum check-update## 更新软件
yum update -y 包名## 全部更新(非常危险)
yum update -y

yum删除软件包

## remove和erase都会删除相关的依赖
yum remove -y tree
yum erase -y tree

yum缓存相关命令

## 清除所有的缓存
yum clean all ## 加载缓存(把仓库中的所有软件包名加载到内存中)
yum makecache

yum包组相关命令

## 查看包组(列出已经安装和所有可使用的软件组)
yum groups list## 安装包组(安装Development tools这个组的软件)
yum groups install Development tools## 删除包组(删除Development tools这个包组)
yum groups remove -y Development tools

yum历史命令

## 查看历史执行的命令
yum history## 查看指定的历史yum命令的详细信息 25:ID
yum history info 25## 撤销历史命令
yum history undo 35

yum只下载不安装选项

yum install -y wget --downloadonly --downloaddir=/tmp
--downloadonly 只下载不安装
--downloaddir=/路径

yum的配置文件

yum的配置一般有两种方式:
1.全局配置文件/etc/yum.conf/
2.子配置文件/etc/yum.repos.d/目录下的所有.repo文件

vim /etc/yum.conf
cachedir=/var/cache/yum/$basearch/$releasever   //缓存目录
keepcache=0     //缓存软件包, 1启动 0 关闭
debuglevel=2    //调试级别
logfile=/var/log/yum.log    //日志记录位置
exactarch=1     //检查平台是否兼容
obsoletes=1     //检查包是否废弃
gpgcheck=1      //检查来源是否合法,需要有制作者的公钥信息
plugins=1       //是否启用查询
installonly_limit=5
bugtracker_url
# metadata_expire=90m //每小时手动检查元数据
# in /etc/yum.repos.d   //包含repos.d目录

制作本地yum仓库

yum仓库的配置文件

## 仓库的名字
[base]## 对仓库的描述信息,可以自定义
name=CentOS-$releasever - Base - mirrors.aliyun## 仓库的地址
baseurl=/$releasever/os/$basearch/ ## 是否检查公钥私钥        
gpgcheck=1## 公钥的位置
gpgkey= 开启yum仓库
enabled=1http://		超文本传输协议
https://	超文本传输加密协议
ftp://		文件传输协议
file://		本地文件协议

制作仓库

# 1.压缩所有的yum仓库文件
[root@oldboy ~]# gzip -r /etc/yum.repos.d/# 2.创建本地仓库目录
[root@oldboy ~]# mkdir /yum_cangku# 3.镜像挂载在该目录下
[root@oldboy ~]# mount /dev/cdrom /yum_cangku/# 4.手写仓库配置文件
[root@oldboy ~]# vim /etc/yum.repos.d/bendi.repo
[base]
name=This is local repository
baseurl=file:///yum_cangku/
gpgcheck=0
enable=1# 5.加载缓存
yum makecache

制作企业级yum仓库

本地光盘提供基础软件包Base
yum缓存提供update软件包
yum缓存提供常用软件包: nginx, zabbix, docker, saltstack

准备环境

IP角色
10.0.0.10yum仓库server
10.0.0.100普通服务器client

**目标:**任意一台虚拟机,修改yum源为10.0.0.10这台机器都可以使用yum安装

10.0.0.10制作成yum仓库

# 1.安装vsftpd服务,让该机器变成网络服务
[root@localhost ~]# yum install -y vsftpd# 2.启动服务 
[root@localhost ~]# systemctl start vsftpd# 3.关闭selinux
## 查看selinux是否开启
[root@localhost ~]# getenforce 
Enforcing## 临时关闭(一旦重启就又会开启)
[root@localhost ~]# setenforce 0## 永久关闭(重启之后才会生效) 
[root@localhost ~]# vim /etc/sysconfig/selinux 
SELINUX=disabled# 4.关闭防火墙 
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld# 5.在ftp的目录下创建好base目录 
[root@localhost ftp]# mkdir /var/ftp/base# 6.挂载光盘 
[root@localhost ftp]# mount /dev/cdrom /mnt 
mount: /dev/sr0 is write-protected, mounting read-only# 7.拷贝所有的rpm包 
[root@localhost ftp]# cp /mnt/Packages/* /var/ftp/base/# 8.安装仓库制作命令,并创建repodata仓库(注意: 如果此仓库每次新增软件则需要重新生成一次)
[root@localhost base]# yum install -y createrepo# 9.创建仓库
[root@localhost base]# createrepo /var/ftp/base

在10.0.0.100上更改yum源

[root@oldboy /etc/yum.repos.d]# vim /etc/yum.repos.d/ftp.repo
[ftp_base]
name=ld_base
baseurl=
gpgcheck=0
enabled=1## 同步别人的源
rsync rsync://mirrors.ustc.edu/epel/7/x86_64/Packages/n/ 
/

用Nginx做镜像仓库

10.0.0.10制作成yum仓库

# 1.下载Nginx
[root@oldboy ~]# yum install -y nginx# 2.修改/etc/nginx/nginx.conf
server {listen 80;root /nginx_yum;server_name localhost;location / {autoindex on;}
}# 3.关闭selinux
## 查看selinux是否开启
[root@oldboy ~]## getenforce 
Enforcing## 临时关闭(一旦重启就又会开启)
[root@oldboy ~]## setenforce 0## 永久关闭(重启之后才会生效) 
[root@oldboy ~]## vim /etc/sysconfig/selinux SELINUX=disabled# 4.关闭防火墙 
[root@oldboy ~]## systemctl stop firewalld
[root@oldboy ~]## systemctl disable firewalld# 5.启动Nginx
[root@oldboy ~]## systemctl start nginx# 6.创建/nginx_yum/base和/nginx_yum/zabbix这两个目录
[root@oldboy ~]# mkdir /nginx_yum/base
[root@oldboy ~]# mkdir /nginx_yum/zabbix# 7.挂载光盘
[root@oldboy ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 is write-protected, mounting read-only# 8.拷贝所有的rpm包到/nginx_yum/base/下
[root@oldboy ~]# cp -rp /mnt/Packages/* /nginx_yum/base/# 9.从网上下载所有的zabbix中的包到/nginx_yum/zabbix/下
[root@oldboy ~]# curl .2/rhel/7/x86_64/|awk -F '"' '{print "wget -P /nginx_yum/zabbix/ .2/rhel/7/x86_64/"$4}'|grep '.rpm$'|bash# 10.创建仓库
[root@oldboy ~]# createrepo /nginx_yum/base/
[root@oldboy ~]# createrepo /nginx_yum/zabbix/

在10.0.0.100上更改yum源

[root@oldboy /etc/yum.repos.d]# vim nginx_base.repo
[root@oldboy /etc/yum.repos.d]# cat nginx_base.repo 
[nginx_base]
name=This is a nginx repository
baseurl=/
gpgcheck=0
enabled=1[nginx_zabbix]
name=This is a nginx zabbix repository
baseurl=/
gpgcheck=0
enabled=1

更多推荐

Linux软件管理

本文发布于:2024-03-04 02:03:20,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1707965.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:软件   Linux

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!