8、Linux基础--rpm、yum、yum私有仓库、系统优化
笔记
1、晨考
1、文件的三种时间属性,每一种时间属性在什么情况下改变
atime : 访问时间
mtime :修改时间
ctime :修改属性时间
2、权限的类型
可读(r, 4)
可写(w, 2)
可执行(x, 1)
3、linux中的权限有三个权限位,分别对应谁的
属主
属组
其他人
4、权限归属有几种,分别是什么?
属主(u)
属组(g)
其他人(o)
5、查看系统名称,内核版本以及硬件位数
uname -a
6、设置用户密码的两种方式
passwd [用户名]
echo '密码' | passwd --stdin [用户名]
7、查看当前登录系统的用户
whoami
2、昨日问题
yum私有仓库
nginx的问题
3、今日内容
1、linux中安装软件的三种方式
2、yum私有仓库
3、selinux和firewalld(iptables)
4、怎么解决系统乱码
4、Linux中安装软件的三种方式
1、哪三种方式?
rpm安装
yum安装
源代码编译安装
2、区别
rpm安装类似于windows中的安装包,下载下来之后直接安装。缺点是不能自己解决依赖。
yum安装基于rpm安装,也就是在rpm上增加了自动解决依赖的功能。
源代码安装:通过编译源代码,得到软件包。优点是可以自定制软件包,缺点是比较复杂。
4.1、RPM安装
安装:rpm -ivh [软件包名称]
卸载:rpm -e [软件包名称]
升级:rpm -Uvh [软件包名称]
1、下载安装包
2、安装
[root@localhost ~]# rpm -ivh zsh-5.0.2-34.el7_8.2.x86_64.rpm
Preparing... ################################# [100%]
Updating / installing...
1:zsh-5.0.2-34.el7_8.2 ################################# [100%]
3、卸载
[root@localhost ~]# rpm -e zsh
4、更新
[root@localhost ~]# rpm -Uvh zsh-5.0.2-34.el7_8.2.x86_64.rpm
Preparing... ################################# [100%]
Updating / installing...
1:zsh-5.0.2-34.el7_8.2 ################################# [100%]
5、软件包名称
zsh-5.0.2-34.el7_8.2.x86_64.rpm
软件包名称:zsh
版本号:5.0.2
第多少次编译:34
适用的平台:el7_8(CentOS 7)
适用的系统位数:x86_64
扩展名:rpm
6、查看软件包的配置文件
[root@localhost ~]# rpm -qc zsh
7、查看是否安装某软件
[root@localhost ~]# rpm -q zsh
8、查看当前系统安装了哪些软件
[root@localhost ~]# rpm -qa
9、查看软件的安装路径,查看安装了哪些东西
[root@localhost ~]# rpm -ql zsh
上传与下载:yum install lrzsz -y
4.2、yum安装
基于rpm安装,自动解决依赖。
1、安装
yum install [软件包的名称]
参数:
-y : 免交互
--nogpgcheck : 忽略公钥认证
2、卸载
yum remove [软件包名称]
参数:
-y : 免交互
3、更新
yum update [软件包名称]
参数:
-y : 免交互
注意:如果跟具体的软件包名称,就会更新指定软件包;如果没有指定,则更新系统所有的需要更新的软件包。
4、yum安装的生命周期
1、执行yum install zsh -y
2、去 /etc/yum.repos.d/ 找以 .repo 结尾的文件
3、通过 .repo 文件中的链接,找到对应的软件仓库
4、在对应的软件仓库中下载指定的软件包
5、缓存至 /var/cache/yum/
6、根据缓存,安装软件包
7、删除软件包(keepcache 是否保存缓存,0 代表不保存 , 1 代表保存)
注:/etc/yum.conf 是yum的配置文件。
5、yum私有仓库
1、本地版
1、下载必须的软件包
yum install yum-utils createrepo -y
2、创建软件仓库
mkdir -p /opt/repos
3、下载对应的软件
mkdir -p /opt/repos/Packages
把对应的软件包复制到 Packages 目录中
4、初始化软件仓库
createrepo /opt/repos
5、添加yum源
cd /etc/yum.repos.d/
mkdir backup
mv *.repo backup/
[root@localhost ~]# yum-config-manager --add-repo=file:///opt/repos
[root@localhost /etc/yum.repos.d]# cat 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、测试
yum install zsh
2、远程版
参考本地版前6步
7、安装远程访问软件(Nginx)
[root@localhost ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo
[root@localhost ~]# yum-config-manager --add-repo=https://repo.huaweicloud.com/epel/7/x86_64/
[root@localhost ~]# yum install nginx --nogpgcheck
8、修改nginx的配置文件
https://nginx.org/en/docs/http/ngx_http_autoindex_module.html
[root@localhost ~]# vim /etc/nginx/nginx.conf
# include /etc/nginx/conf.d/*.conf;
root /opt/repos;
autoindex on;
# 测试更改是否成功
[root@localhost ~]# nginx -t
# 启动nginx
[root@localhost ~]# systemctl start nginx
# 关闭selinux和firewalld
[root@localhost ~]# systemctl disable --now firewalld
[root@localhost ~]# setenforce 0
9、在测试机
[root@localhost yum.repos.d]# yum install yum-utils -y
# 备份源
[root@localhost yum.repos.d]# mkdir backup
[root@localhost yum.repos.d]# mv *.repo backup/
# 添加源
[root@localhost yum.repos.d]# yum-config-manager --add-repo=http://192.168.15.101/
# 刷新缓存
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum makecache
10、测试
[root@localhost ~]# yum install zsh -y
5、系统安全优化
1、selinux
2、firewalld
systemctl disable --now firewalld
--now : 立即执行
firewalld ---> iptables ---> 系统安全框架
安全组
vpn iptables
6、防止系统乱码优化
en_US.UTF-8 : 美式英文,utf-8
zh_CN.UTF-8
zh_HK.UTF-8
临时优化
export LANG=zh_CN.UTF-8 : 设置编码
永久优化
vim /etc/locale.conf
8、Linux基础--rpm、yum、yum私有仓库、系统优化的更多相关文章
- yum搭建私有仓库远程版
目录 一:yum安装 1.简介 1.安装 2.卸载 3.更新 4.yum安装的生命周期 二:yum搭建私有仓库(本地版) 1.下载必须的软件包(准备配置) 2.创建软件仓库 3.下载对应的软件 4.初 ...
- linux中yum本地私有仓库安装搭建《全面解析》
目录 一:yum本地仓库安装 1.yum简介 2.yum安装解析 二:yum安装的生命周期 三:yum私有仓库作用与必要性 四:搭建yum私有仓库 本地版本 1.下载必须的软件包 2.创建软件仓库(就 ...
- Linux yum搭建私有仓库
搭建yum仓库需要两种资源: rpm包 rpm包的元数据(repodata) 搭建好仓库后需要使用三种网络协议共享出来 http或https ftp 范例: 使用http协议搭建私有仓库 (本示例使用 ...
- yum 搭建私有仓库
今日内容 Linux 中安装软件的三种方法 yum 私有仓库 selinux 和 firewalld (iprables) 解决系统乱码 内容详细 一.Linux 安装软件的三种方法 rpm安装.yu ...
- LINUX安装 RPM与YUM
1 Linux软件安装概述 安装程序的方式: 通用二进制格式:直接解压压缩文件,就可以使用.但一定要注意安装平台. 软件包管理器:如RPM. 软件包管理器的前端工具:如YUM. 源代码编译. 1 1. ...
- Linux下rpm及yum安装jdk
笔者使用的Linux操作系统为CentOS7,Linux中有三种安装jdk的方式,在这里笔者主要介绍两种方式,即rpm和yum安装及卸载jdk,还有一种是直接从官网下载 tar.gz 压缩文件上传到L ...
- linux系统rpm和yum软件包管理
软件安装方式总结 安装软件方式有如下几种: 方式1:编译安装 将源码程序按照需求进行先编译,后安装 缺点:装过程复杂,而且很慢 优点:安装过程可控,真正的按需求进行安装(安装位置.安装的模块都可以选择 ...
- 006--linux基础rpm和yum的使用和源码安装
一.rpm相关命令介绍 1. 查看CD里面有的文件 2. 用rpm来安装一个名为vsftpd的rpm包 3. rpm -qi 软件包名 (查看软件包的详细信息) 4. rpm -ql 软件包名 (查看 ...
- linux通过rpm和yum安装包
1.rpm包的安装过程:进入rpm包的所在目录,通过rpm -ivh 包名安装,rpm安装无法解决依赖关系 2.yum安装过程:读取/etc/yum.repo/下配置文件中的baseurl地址,找到该 ...
随机推荐
- pymysql防止SQL注入的方法
import pymysql class Db(object): def __init__(self): self.conn = pymysql.connect(host="192.168. ...
- 解决maven每次更新都编程java1.5
Maven: 每次更新Maven Project ,JAVA 版本都变为1.5 本文转载自:http://www.cnblogs.com/Hxinguan/p/6132446.html 问题: 1.创 ...
- Angularjs实现下拉列表排序
<select class="form-control underline" ng-model="reportform.score" ng-options ...
- 安霸pipeline简述之YUV域的处理
YUV域处理模块的详细介绍: YUV域的处理主要是rgb_to_yuv_matrix,chroma_scale,ASF(空域降噪),MCTF(时域降噪),SharpenB(锐化模块). RGB2YUV ...
- CVE-2020-0786(永恒之黑) GetShell
描述 Microsoft服务器消息块3.1.1(SMBv3)协议处理某些请求的方式中存在一个远程执行代码漏洞,也称为" Windows SMBv3客户端/服务器远程执行代码漏洞". ...
- 【记录一个问题】go1.17中,把代码文件放在main.go的同级目录,导致无法编译
写了类似目录结构的代码: myproxy - main.go - server.go 编译的时候总是出现main.go中找不到类型定义.但是用goland却可以直接执行. 最后调整了目录结构后解决: ...
- unity3d录音
using System.Collections; using System.Collections.Generic; using UnityEngine; public class record : ...
- openSUSE修改grub来修复对win8的引导
前言:继上一次安装试用各版本linux发行版后,由于做项目将机器纯windows了一把,现在又想安回centos,各种挫折折腾两天玩残一个u盘日,其中包括自己本本的原装系统也崩了,各种泪奔,下面记录一 ...
- HttpServletRequest接口详解
般情况下,浏览器(客户端)通过 HTTP 协议来访问服务器的资源,Servlet 主要用来处理 HTTP 请求.Servlet 处理 HTTP 请求的流程如下: Servlet 容器接收到来自客户端的 ...
- 字符串自实现(一)(mystrcpy,mystrcat,mystrcmp)
char* mystrcpy(char* str_one,const char* str_two) { char* tmp = str_one; while (*str_one++ = *str_tw ...