yum 搭建私有仓库
今日内容
- Linux 中安装软件的三种方法
- yum 私有仓库
- selinux 和 firewalld (iprables)
- 解决系统乱码
内容详细
一、Linux 安装软件的三种方法
rpm安装、yum 安装、源代码编译安装
区别
1、rpm 安装类似于window的安装包,下载后直接安装。
缺点: 无法解决依赖,比如下载python 也需要下载 C 语言
2、yum 安装基于 rpm 安装,就是载 rpm 上增加了自动解决依赖问题
3、源代码安装:通过编译源代码得到软件包。优点是可以自定制软件包,缺点是比较复杂。
rpm 安装
安装:rpm -ivh [软件包名称]
卸载:rpm -e [软件包名称]
升级:rpm -Uvh [软件包名称]
1、下载安装包
1、去华为云下载 centos 7 文件 : https://repo.huaweicloud.com/centos/7/os/x86_64/Packages/
2、把下载好的文件上传到 Linux 中,
#
3、如果把 window 中的文件上传到 Linux ?
先下载 lrzsz : yum install lrzsz -y
# 值得注意:如果 yum 无法安装,有可能是 /etc/yum.repo.d/ 目录下的 .repo 文件被更改了,请检查
2、开始安装软件
rpm -ivh <安装包名>
[root@localhost ~]# rpm -ivh zsh-5.0.2-34.el7_8.2.x86_64.rpm
3、卸载软件
rpm -e <安装名(无需版本号)>
[root@localhost]~# rpm -e zsh
4、更新安装包
rpm -Uvh <安装包全名>
[root@localhost]~# rpm -Uvh zsh-5.0.2-34.el7_8.2.x86_64.rpm
安装包名称
zsh-5.0.2-34.el7_8.2.x86_64.rpm
软件包名称:zsh
版本号:5.0.2
第多少次编译:34
适用的平台:el7_8(CentOS 7)
适用的系统位数:x86_64
扩展名:rpm
rpm 其他命令操作
查看软件包的配置文件
rpm -qc <安装包名>
***
[root@localhost]~# rpm -qc zsh
/etc/skel/.zshrc
/etc/zlogin
/etc/zlogout
/etc/zprofile
/etc/zshenv
/etc/zshrc
查看是否安装某软件
rpm -q <软件名>
# 表示安装
[root@localhost]~# rpm -q zsh
zsh-5.0.2-34.el7_8.2.x86_64
# 没安装
[root@localhost]~# rpm -q zsh
package zsh is not installed
查看当前系统安装了哪些软件
rpm -qa
[root@localhost]~# rpm -qa
yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch
setup-2.8.71-11.el7.noarch
libndp-1.2-9.el7.x86_64 # 太多了
查看软件的安装路径,查看安装了哪些东西
rpm -ql <软件名>
[root@localhost]~# rpm -ql python3
/usr/bin/pydoc3
/usr/bin/pydoc3.6
/usr/bin/python3
/usr/bin/python3.6
/usr/bin/python3.6m
yum 安装
1、安装
基于rpm安装,自动解决依赖。
可以自己从网络中下载安装包,无需拖拽上传
命令 : yum install <软件名>
参数 :
-y : 免交互,直接同意安装
--nogpgcheck : 忽略公钥认证(为了安全)
2、卸载
命令 : yum remove <软件名>
[root@localhost]~# yum remove zsh
3、更新
命令 : yum update [软件包名称]
参数:
-y : 免交互
注意:如果跟具体的软件包名称,就会更新指定软件包;如果没有指定,则更新系统所有的需要更新的软件包。
4、yum安装的生命周期
1、执行 yum install <软件名> 命令
2、去到 /etc/yum.repo.d/ 路径下查找 .repo 结尾的文件
3、通过 .repo 文件中中的链接,找到软件对应的仓库
4、从对应的软件仓库中下载软件安装包
5、缓存到 /var/cache/yum/ 目录下
5、根据缓存安装软件
6、删除软件包(keepcache 是否保存缓存,0 代表不保存,1 代表保存)
注:/etc/yum.conf 是yum的配置文件。
[root@localhost etc]# cat yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever < -- 缓存的目录
keepcache=0 < -- 是否保存缓存,0 代表不保存,1 代表保存
debuglevel=2
二、搭建 yum 私有仓库
我们使用 yum 去下载软件,实际上是通过链接去到别人的仓库里(华为云,阿里云)找到安装包下载至本地然后安装的,有一定的风险,在公司一般会搭建自己的私有仓库,供内部人员下载软件使用
1、本地版
1、下载必须的软件包
下载用于初始化仓库的软件包
yum install yum-utils createrepo -y
2、创建软件仓库
仓库建立在 /opt 目录下
mkdir /opt/repos
3、下载对应的软件
在windows中把需要的软件包下载下来并上传至Linux
在仓库 /opt/repos 中创建一个 package 文件夹,用于存放仓库的软件包,并且把软件包都存放到 package 文件夹下
mkdir /opt/repos/packages
cp zsh-5.0.2-34.el7_8.2.x86_64.rpm /opt/repos/packages
4、初始化仓库
createrepo /opt/repos
这样仓库就具备了两个文件夹 packages、repodata
[root@localhost repos]# ll
total 4
drwxr-xr-x 2 root root 45 Dec 16 16:48 packages
drwxr-xr-x 2 root root 4096 Dec 16 16:49 repodata
5、添加 yum 源
根据 yum 安装的生命周期,用户用 yum 安装软件时,会首先去到 /etc/yum.repos.d 中查找仓库链接,为了不让原来的 repo 文件影响测试本地仓库,先把原来的 .repo 文件移动到别的路径下,再创建私有仓库的 repo 文件,用于存放私有仓库的链接
1、cd /etc/yum.repos.d/
2、mkdir back
3、mv ./*.repo back < -- 存档(原 repo 文件)完成
4、yum-config-manager --add-repo=file///opt/repos
此命令用于创建一个新的 repo 文件,里面存放指向本地仓库的路径:file///opt/repos
cat /etc/yum.repos.d/opt_repos.repo
[opt_repos] # 源的名称
name=added from: file:///opt/repos # 源的简介
baseurl=file:///opt/repos # 源的下载地址
enabled=1 # 是否启用:1启用 , 0不启用
6、生成缓存
yum clean all
yum makecache
7、测试
[root@localhost ~]# yum install zsh
2、远程版
前六步与本地版搭建一模一样
7、安装远程访问软件(Nginx)
安装远程访问软件(Nginx)
1、在 yum 的 repo 文件中添加华为云的路径源
[root@localhost ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo
2、这是epel的源,添加完之后就可以通过 yum 去网址下载 Nginx 了
[root@localhost ~]# yum-config-manager --add-repo=https://repo.huaweicloud.com/epel/7/x86_64/
adding repo from: https://repo.huaweicloud.com/epel/7/x86_64/
[repo.huaweicloud.com_epel_7_x86_64_]
name=added from: https://repo.huaweicloud.com/epel/7/x86_64/
baseurl=https://repo.huaweicloud.com/epel/7/x86_64/
enabled=1
3、通过 yum 下载 Nginx
[root@localhost ~]# yum install nginx --nogpgcheck
8、修改nginx的配置文件
1、查询一下 nginx 中有哪些配置文件
[root@localhost ~]# rpm -qc nginx
2、修改 nginx.conf 文件即可
vim /etc/nginx/nginx.conf
# include /etc/nginx/conf.d/*.conf; < -- 注释掉
server {
listen 80;
listen [::]:80;
server_name _;
root /opt/repos; < -- 改为本地的软件仓库地址
autoindex on; < -- 表示启动nginx
3、 测试更改是否成功
[root@localhost ~]# nginx -t
4、 启动nginx
[root@localhost ~]# systemctl start nginx
5、 关闭selinux和firewalld
[root@localhost ~]# systemctl disable --now firewalld
[root@localhost ~]# setenforce 0
6、浏览器访问虚拟机ip地址,如果出现以下的页面说明nginx启动成功
9、在另一个虚拟机中测试
再另开一个虚拟机,把它的 /etc/yum.repos.d 中的 repo 文件链接源改成远程仓库的地址
1、下载 yum-utils,以便添加 repo 文件的源
[root@localhost yum.repos.d]# yum install yum-utils -y
2、备份源,把原有的 repo 文件备份好
[root@localhost yum.repos.d]# mkdir backup
[root@localhost yum.repos.d]# mv *.repo backup/
3、 添加源,添加远程仓库虚拟机的ip地址
[root@localhost yum.repos.d]# yum-config-manager --add-repo=http://192.168.15.101/
[root@localhost ~]# yum-config-manager --add-repo=http://192.168.15.101/
Loaded plugins: fastestmirror
adding repo from: http://192.168.15.101/
[192.168.15.101_]
name=added from: http://192.168.15.101/
baseurl=http://192.168.15.101/
enabled=1
4、刷新缓存
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum makecache
5、测试
[root@localhost ~]# yum install zsh -y
三、系统安全优化
1、selinux
编辑文件 --> /etc/selinux/config
永久关闭 selinux -- > SELINUX=disabled
[root@localhost ~]# cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
2、firewalld
systemctl disable --now firewalld
--now : 立即执行
firewalld ---> iptables ---> 系统安全框架
安全组
vpn iptables
四、防止系统乱码优化
en_US.UTF-8 : 美式英文,utf-8
zh_CN.UTF-8 : 中文
zh_HK.UTF-8 :中文繁体
临时优化
export LANG=zh_CN.UTF-8 : 设置编码
永久优化 : 编辑编码文件 /etc/locale.conf
vim /etc/locale.conf
LANG=zh_CN.UTF-8
yum 搭建私有仓库的更多相关文章
- yum搭建私有仓库远程版
目录 一:yum安装 1.简介 1.安装 2.卸载 3.更新 4.yum安装的生命周期 二:yum搭建私有仓库(本地版) 1.下载必须的软件包(准备配置) 2.创建软件仓库 3.下载对应的软件 4.初 ...
- Linux yum搭建私有仓库
搭建yum仓库需要两种资源: rpm包 rpm包的元数据(repodata) 搭建好仓库后需要使用三种网络协议共享出来 http或https ftp 范例: 使用http协议搭建私有仓库 (本示例使用 ...
- linux中yum本地私有仓库安装搭建《全面解析》
目录 一:yum本地仓库安装 1.yum简介 2.yum安装解析 二:yum安装的生命周期 三:yum私有仓库作用与必要性 四:搭建yum私有仓库 本地版本 1.下载必须的软件包 2.创建软件仓库(就 ...
- 菜鸟系列docker——搭建私有仓库harbor(6)
docker 搭建私有仓库harbor 1. 准备条件 安装docker sudo yum update sudo yum install -y yum-utils device-mapper-per ...
- [Docker]docker搭建私有仓库(ssl、身份认证)
docker搭建私有仓库(ssl.身份认证) 环境:CentOS 7.Docker 1.13.1 CentOS 7相关: https://www.cnblogs.com/ttkl/p/11041124 ...
- Docker搭建私有仓库
1,下载仓库镜像. docker pull registry //主要用于搭建私有仓库的. 2,将宿主机端口映射到容器中去,容器的5000端口是不能更改的. docker run -d -p ...
- Docker入门之四搭建私有仓库
前面学习了下镜像和容器,今天来学习下仓库,来搭建本地私有仓库.当然可以使用远程的共有的仓库,但在企业中有的还是放在本地,所以需要搭建私有仓库. 一.搭建仓库 可以在容器中run一个仓库镜像. dock ...
- Docker 搭建私有仓库
Docker 搭建私有仓库 环境: docker 版本 :18.09.1 主机地址:192.168.1.79 1.运行并创建私有仓库 docker run -d \ -v /opt/registry: ...
- 7.1 安装软件包的三种方法 7.2 rpm包介绍 7.3 rpm工具用法 7.4 yum工具用法 7.5 yum搭建本地仓库
7.1 安装软件包的三种方法 7.2 rpm包介绍 7.3 rpm工具用法 7.4 yum工具用法 7.5 yum搭建本地仓库 三种方法 rpm工具----->类型windows下的exe程序 ...
随机推荐
- mysql数据库读写分离教程
注意:实现MySQL读写分离的前提是我们已经将MySQL主从复制配置完毕 一.Mycat实现读写分离安装和配置 架构规划: 192.168.201.150 master 主节点 192.168. ...
- Node.js 模块之【passport】
什么是passport passport是Nodejs的一个中间键,用于用户名和密码的验证登陆.在项目中我用它来验证后台用户名和密码,但passport更多用在第三方登录,功能强大. 安装与配置 本项 ...
- 【填坑往事】使用Rxjava2的distinct操作符处理自定义数据类型去重的问题
最近碰到一个问题,自定义数据类型列表中出现了重复数据,需要去重.处理去重的办法很多,比如借助Set集合类,使用双重循环拿每一个元素和其他元素对比等.这里介绍一种简单而且比较优雅的方式:使用Rxjava ...
- vue3.0+vite+ts项目搭建--基础配置(二)
集成vue-router 使用yarn yarn add vue-router@next --save 安装完成之后在src目录下创建文件夹router/index.ts,创建完成之后需要在Vue-R ...
- java如何对接企业微信
前言 最近实现社群对接企业微信,对接的过程遇到一些点,在此记录. 企业微信介绍 企业微信具有和微信一样的体验,用于企业内部成员和外部客户的管理,可以由此构建出社群生态. 企业微信提供了丰富的api进行 ...
- 开源数据可视化BI工具SuperSet(安装)
本次安装教程共分两大步骤,因为Superset 基于python3编写的web应用(flask) 所以要求python3环境,故首先要将linux系统自带的环境进行升级,已经是python3的可跳过- ...
- [MRCTF2020]Ezaudit
[MRCTF2020]Ezaudit 知识点 1.源码泄露 2.伪随机数 3.sql注入? 题解 打开题目是个漂亮的前端,扫一下发现www.zip文件泄露,下载审计 <?php header(' ...
- [开发笔记usbTOcan]需求获取与系统需求分析
简介 一直一以来都是站在实现某个模块功能的角度去做软件开发,没有尝试过站在系统的层面去做开发.最近正好不忙,觉得是时候以系统工程师的视角,去开发一个完整的系统.接下来的几篇文章,我会记录一个USB转C ...
- CMake语法—缓存变量(Cache Variable)
目录 CMake语法-缓存变量(Cache Variable) 1 CMake缓存变量 2 定义缓存变量 2.1 定义格式 2.2 定义示例代码 2.3 运行结果 2.4 小结 3 CMakeCach ...
- 字符串工具类ToStringBuilder常用方法介绍
一.简介与引入 1.ToStringBuilder.HashCodeBuilder.EqualsBuilder.ToStringStyle.ReflectionToStringBuilder.Co ...