Linux基于CentOS7【yum】【vim】的基础学习,【普通用户提权】
目录
yum生态
什么是yum
yum是如何得知目标服务器的地址和下载链接
vim
vim模式
命名模式
光标移动
插入模式
i键插
a键插
o键插
底行模式
批量化注释
批量化去注释
创建vim配置文件
例子
高亮功能:
缩进功能:
符号位自动补齐功能:
函数名自动补齐功能
自动配置
普通用户提权
yum生态
什么是yum
yum就是Linux软件包管理器,就是相当于我们手机上的应用商店等内容,它是我们预装的指令
Linux中我们也要进行工具/指令/程序的安装,检查和卸载
打开Linux的yum软件列表
yum list
想要搜索某一特定软件,这里拿lrzsz举例
yum list | grep lrzsz
[root@VM-20-2-centos ~]# yum list | grep lrzsz Repository epel is listed more than once in the configuration lrzsz.x86_64 0.12.20-36.el7 @os
卸载软件
yum remove 软件或命令
不同版本对应操作系统的区别是:我们曾经所构建出来的背靠的整个社区和生态的不同,使得我们各种操作系统方向的不同
yum是如何得知目标服务器的地址和下载链接
ls /etc/yum.repos.d/yum 仓库 目录
输入命令
vim /etc/yum.repos.d/CentOS-Base.repo
# yum仓库
所以CentOS-Base是一个配置文件,当我们的yum要下载安装某物的时候,它会通过CentOS-Base去访问里面对应的列表里面的镜像文件
CentOS-Base可以承载国外的,也可以承载国内的,下载国外的文件会相对慢很多,因此可以考虑换国内的镜像文件
以阿里云的镜像服务为例子
下载网址:centos安装包下载_开源镜像站-阿里云
- 先复制拷贝一份CentOS-Base,拷贝的指令则为:
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
拷贝指令:cp
需要备份的文件:/etc/yum.repos.d/CentOS-Base.repo
将其备份为:/etc/yum.repos.d/CentOS-Base.repo.backup
备份的原因是:想要恢复时可以恢复- 下载新的yum源文件
wget -0 /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -0: 下载到指定文件
下载指定文件的目的,即覆盖文件:/etc/yum.repos.d/CentOS-Base.repo
需要下载的文件:http://mirrors.aliyun.com/repo/Centos-7.repo
- 清除yum缓存,清除掉以前的yum源的缓存
yum clean all
- 更新yum缓存
yum makecache
安装epel-release
yum install -y epel_release
CentOS-Base.repo是基础软件源,不能够随随便便将新的软件放进去,需要将其放在扩展软件源,等到一定的时间去信任这个软件,再把这个软件放到基础软件源里,这是能够维护基础软件源
而我们下载安装的epel.repo就是扩展软件源
vim
vim是多模式编辑器,vim还有很多子命令,可以进行代码的编写操作
vim模式
创建一个test.c文件
命名模式
vim打开的时候的默认模式,其中所有的输入都被当作命令来看待,除非误触了模式切换键
输入vim test.c
光标移动
shift +4 =$ 光标定义在当前行的最右侧处,锚点 shift + 6 = ^ 光标定义在当前行的最左侧处,锚点 shift + g 将光标定义到文本的最结尾 gg 将光标定义到文本的最开始 n+shift+g 光标快速定义到指定行 h,j,k,j h : 左移 j :下移 k:上移 l: 右移 yy+p 复制粘贴(yy相当于CTRL+C,p相当于CTRL + V) n+yy 复制多行 n+p 粘贴多行 u 撤销编辑操作,undo的意思 CTRL+r 对撤销进行撤销 dd 删除当前行,同时也支持n+dd,相当于剪切 shift + ~ 当前行大小写之间的转化 n + r + 字母 当前行批量变成某个字母 shift + r 替换模式 x 删除光标所在字符 n + x 连续删除光标(包括光标)所在的n个字符 shift + x 向左侧开始删除,但不包括光标的这个字符 n + shift + x 批量向左删除 w 跨单词向后跳跃 b 跨单词向前跳跃 shift + 3 查找函数名
插入模式
i键插
在命令模式的背景下,当我们点击i的时候,就会变成insert,插入模式
a键插
o键插
插入模式返回命令模式:点击ESC
底行模式
在命令模式的前提下,shift + : 就能进入底行模式
退出的前提是,底行模式
wq :保存退出
! + shell命令,就可以直接进入命令
/ + 想要搜索的内容
set + nu : 加上行号
set + nonu : 去掉行号
底行模式回退到命令模式:ESC即可
底行模式和插入模式不能互相直接转换
批量化注释
步骤:
- CTRL + v
- 进行区域筛选,hjkl区域
- shift + i = I
- 输入 //
- 按ESC
批量化去注释
步骤:
- CTRL + v
- 进行区域筛选,hjkl区域
- 按 d
创建vim配置文件
首先要在当前用户下的家目录里创建存放vim配置文件的文件
Linux中如果有多用户,每个用户都可以设置他的 .vimrc
系统root也有个vimrc
例子
配置行号:
打开vimrc
给它输入 set nu,保存
打开此文件
vim LinuxStudy/test.c展示此效果1 #include<stdio.h>2 3 int main()4 {5 printf("hello vim\n");6 printf("hello vim\n");7 return 0;8 }9
发现已经有了行号了
因此,我们可以配制出我们想要vim
高亮功能:
"高亮当前行"
set cursorline"粗体显示选中行,用黑色框,字体用绿色标注"
hi Cursorline cterm=bold ctermbg=black ctermfg=green guibg=green
hi Cursorline cterm=bold ctermbg=black ctermfg=green guibg=green
:这行配置定义了高亮当前行的样式。
hi:
高亮命令
Cursorline:
高亮组名
cterm:
表示终端模式下的设置
cterm=bold:
表示使用粗体
ctermbg=black:
表示背景色为黑色
ctermfg=green:
表示前景色为绿色
guibg=green:
表示在图形界面模式下的背景色为绿色。
"开启语法高亮功能"
"syntax选项使得Vim能够根据文件类型识别并高亮显示代码中的关键字、注释等元素"
syntax on
缩进功能:
"启用自动缩进功能,Vim会在新的一行自动插入与上一行相同的缩进"
set autoindent"设置制表符(Tab)的宽度为4个空格。
意味着当按下Tab键时,Vim会插入4个空格"
set tabstop=4"设置软制表符的宽度也为4个空格。
软制表止是指在插入模式下,Tab键的行为类似于按了4次空格键"
set softtabstop=4"设置shiftwidth选项,
它定义了在进行自动缩进或使用>>和<<命令时,Vim将使用4个空格作为缩进的单位"
set shiftwidth=4"启用C语言的自动缩进。
cindent是针对C语言的智能缩进插件,它会根据C语言的语法自动调整代码的缩进"
set cindent"启用智能缩进功能。
smartindent会在新的一行根据代码的上下文自动插入适当的缩进"
set smartindent
符号位自动补齐功能:
inoremap ( ()<ESC>i
inoremap < <><ESC>i
inoremap [ []<ESC>i
inoremap { {}<ESC>i
inoremap " ""<ESC>i
函数名自动补齐功能
set completeopt=preview,menu
- 当你在Vim中输入代码并开始输入一个函数名或变量名时,可以使用Ctrl+N(或Ctrl+P)来触发自动补全。
- 如果有多个匹配项,Vim会显示一个下拉菜单供你选择。
- 同时,如果设置了preview,还会在一个小窗口中预览选中补全项的详细信息。
自动配置
1,在非root账户下,执行下列指令
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
2,输入root密码
3,完成配置
普通用户提权
root账号下有个系统白名单,只有在白名单的普通用户,才能得到提权,否则不能被提权
我们可以尝试进去看看
ll /etc/sudoers
vim /etc/sudoers
为什么看不见呢:
- 我们不能随便让用户进行sodo提权
- 我们不能让用户随意的去修改sudoers文件
必须经过root账号后才能对其进行访问
提权操作
vim /etc/sudoers
找到接近100多行,按照下面的图片,依葫芦画瓢即可
保存退出之后,回到原账号,使用sudo提权,就能成功了
以上便是本次博文学习内容,如有错误,还望各位大佬指点,谢谢阅读!
相关文章:

Linux基于CentOS7【yum】【vim】的基础学习,【普通用户提权】
目录 yum生态 什么是yum yum是如何得知目标服务器的地址和下载链接 vim vim模式 命名模式 光标移动 插入模式 i键插 a键插 o键插 底行模式 批量化注释 批量化去注释 创建vim配置文件 例子 高亮功能: 缩进功能: 符号位自动补齐功能…...

盛元广通实验室自动化生物样本库质量控制管理系统
随着我国生物医学研究的不断深入和精准医疗的快速发展,对高质量生物样本的需求日益增长。近年来,我国生物样本库建设取得了显著进展。各级政府、高校和医院纷纷投入资源建设生物样本库,推动了生物样本资源的有效整合和利用。生物样本库的质量…...

Java | 自制AWT单词猜一猜小游戏(测试版)
目录 游戏标题 开发过程 开发想法 技术栈 代码呈现 导包 核心代码 游戏标题 探索知识的迷宫,体验自制AWT单词猜一猜小游戏 在数字时代,学习可以是多彩的,游戏可以是智慧的。我们自豪地推出“单词猜猜猜”是一款结合了教育与娱乐的自制…...

docker搭建ES 8.14 集群
参考:【docker搭建es8集群kibana】_docker 安装生产级 es 8.14 集群-CSDN博客 1、之前已搭建一台单机版的dockerES集群 参见 Elasticsearch docker 安装_docker 安装es8.14.3-CSDN博客 2、现在需要重新搭建为docker ES集群 准备新搭建3个点 一、准备工作 提前开…...
自定义特征的智能演进:Mojo模型中的动态特征选择控制
自定义特征的智能演进:Mojo模型中的动态特征选择控制 在机器学习领域,特征选择是提升模型性能和泛化能力的关键步骤。Mojo模型,作为一种高效的模型部署方式,其对特征的动态选择和控制能力是实现高级机器学习应用的重要特性。本文…...
Git->Git生成patch和使用patch
生成patch git format-patch -1 HEAD -o "输出目录"format-patch:用于生成补丁文件-1:-1 表示最近一次提交,-2 表示生成最近两次提交的补丁。HEAD:HEAD 指向当前分支的最新提交-o:指定生成的补丁文件的输出…...
开发面试算法题求教
在《无尽的拉格朗日》中,有许多不同的星系建筑物。每个星系建筑物的等级不同,带来的影响力也不同。 已知宇宙可以抽象为一个无穷大的平面直角坐标系,现在给定了每个星系建筑物的所在坐标(xi,yi)和它的影响力ri,距离其切比雪夫距离…...
OpenStack中nova的架构
1.1 nova-api 负责接收和相应客户的API调用。 1.2 compute core nova-schedule 负责决定在哪个计算节点运行虚拟机。 nova-compute 通过调用Hypervisor实现虚拟机生命周期的管理。一般运行在计算节点。 hypervisor 对虚拟机进行硬件虚拟化的管理软件ÿ…...

力扣高频SQL 50题(基础版)第五题
文章目录 力扣高频SQL 50题(基础版)第五题1683. 无效的推文题目说明:思路分析:实现过程:结果截图: 力扣高频SQL 50题(基础版)第五题 1683. 无效的推文 题目说明: 表&a…...

Air780EP- AT开发-阿里云应用指南
简介 使用AT方式连接阿里云分为一机一密和一型一密两种方式,其中一机一密又包括HTTP认证二次连接和MQTT直连两种方式 关联文档和使用工具: AT固件获取在线加/解密工具阿里云平台 准备工作 Air780EP_全IO开发板一套,包括天线SIM卡࿰…...

【中项】系统集成项目管理工程师-第4章 信息系统架构-4.4数据架构
前言:系统集成项目管理工程师专业,现分享一些教材知识点。觉得文章还不错的喜欢点赞收藏的同时帮忙点点关注。 软考同样是国家人社部和工信部组织的国家级考试,全称为“全国计算机与软件专业技术资格(水平)考试”&…...

excel批量新建多个同类型的表格
背景引入 比如,一个企业有多个部门,现在需要按照某一个excel表模板收集各个部门的信息,需要创建数十个同类型表格,且标题要包含部门名称。 1.修改模板表格标题 在一个文件夹下面放入需要发放给各个部门的表格,将标题…...

React Native 与 Flutter:你的应用该如何选择?
Flutter 和 React Native 都被认为是混合应用程序开发中的热门技术。然而,当谈到为你的项目使用框架时,你必须考虑哪一个是最好的:Flutter 还是 React Native? 本篇文章包含 Flutter 和 React Native 在各个方面的差异。因此&…...
DP学习——状态模式
学而时习之,温故而知新。 状态模式 角色 2个角色,引用类,状态行为类。 和策略模式很相似 状态行为封装成很多独立的状态行为类——就是把不同的状态及其要执行的方法单独封装起来。 而策略模式类似,是不同的算法封装成一个个…...
前端性能优化面试题汇总
面试题 1. 简述如何对网站的文件和资源进行优化? 参考回答: 举列: 1.文件合并(目的是减少http请求):使用css sprites合并图片,一个网站经常使用小图标和小图片进行美化,但是很遗憾这些小图片…...

C#基于SkiaSharp实现印章管理(4)
前几篇文章实现了绘制不同外形印章的功能,印章内部一般包含圆形、线条等形状,有些印章内部还有五角星,然后就是各种样式的文字。本文实现在印章内部绘制圆形、线条、矩形、椭圆等四种形状。 定义FigureType枚举记录印章内部形状ÿ…...
Vue全家桶 - pinia 的理解和学习2(Pinia 核心概念的插件、组件外的 Store 和 服务器渲染(SSR))
Pinia(Vue 的专属状态管理库) Vue全家桶 - pinia 的理解和学习1(Pinia 核心概念的 Store、State、Getter、Action) https://blog.csdn.net/weixin_54092687/article/details/140520675 插件 由于有了底层 API 的支持,…...
数学建模(6)——预测类模型目录
预测模型是一类通过分析和建模历史数据来预测未来结果的算法或模型。这些模型广泛应用于各种领域,包括金融、医疗、市场营销、气象、制造业等。以下是一些常见的预测模型: 1. 回归模型 线性回归(Linear Regression):…...

安卓刷入系统证书
设备:Pixel XL 证书:reqable-ca.crt 刷入前需要手机已刷入Magisk 使用USB充电线连接手机,打开Windows终端面板手机打开Magisk,开启Shell的Root权限Windows终端输入su获取root权限查看SELinux状态并修改为Permissive修改system分…...

中科亿海微信号采集核心板在振动采集场景中的应用
在工业现场控制领域,对于旋转物体的速度我们通用的做法是测量旋转所产生的振动量来倒推设备的转速值。振动采集系统是一种广泛用于检测和记录系统振动的设备,整体包括传感器和数据采集两部分。传感器类型包括加速度传感器、速度传感器和位移传感器&#…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...

Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...