Linux系统编程Day4-- Linux常用工具(yum与vim)

往期内容回顾

Linux系统编程Day4-- Shell与权限


权限内容补充

粘滞位

"粘滞位"(Sticky Bit )是 Linux/Unix 系统中一个特殊的权限标志,主要用于控制谁可以删除共享目录中的文件。理解它非常关键,尤其是在多人共享文件目录(如 /tmp)时。

粘滞位让目录中的 文件只能被其所有者或 root 删除,即使其他用户对该目录有写权限

tmp 目录的权限:

bash 复制代码
$ ls -ld /tmp
drwxrwxrwt 10 root root 4096 Aug  2 22:00 /tmp

你看到的 t 就是粘滞位。

权限解释:drwxrwxrwt

  • 所有用户可以读、写、执行(进入)这个目录

  • 但只能删除自己的文件

  • 不能删除其他人的文件

如何设置粘滞位

bash 复制代码
sudo chmod +t /shared
bash 复制代码
ls -ld /shared
# drwxrwxrwt 3 root root 4096 Aug  2 21:10 /shared

注意目录权限末尾多了一个 t;

取消粘滞位:

bash 复制代码
sudo chmod -t /shared

一、Linux软件管理器yum

1、什么是 YUM?

yum 是Linux 基于 RPM 的软件包管理器 ,常用于 RedHat、CentOS、Fedora 等发行版,用来安装、升级、删除和管理软件包。它自动解决软件依赖问题,能从网络仓库下载安装所需软件和其依赖项。


2、YUM 的常用命令

命令 作用
yum install <软件包> 安装软件
yum remove <软件包> 卸载软件
yum update 更新系统中所有软件
yum update <软件包> 更新指定软件
yum search <关键字> 搜索软件包
yum info <软件包> 查看软件包信息
yum list 显示所有可用或已安装软件包
yum list installed 显示已安装的软件包
yum list available 显示可安装的软件包
yum clean all 清除缓存
yum history 查看安装、删除等操作记录

3、YUM 源(仓库)

YUM 通过配置的**仓库地址(repo)**从网络上下载软件包。默认仓库配置文件通常位于:

bash 复制代码
ls /etc/yum.repos.d/

输出了当前系统中 Yum/DNF 使用的 软件仓库配置文件,这些 .repo 文件用于告诉系统从哪里下载安装软件包, 对于阿里云服务器输出如下:

AliYun.repo
AliYun.repo.rpmnew
epel-modular.repo
epel.repo
epel-testing-modular.repo
epel-testing.repo

bash 复制代码
 vim AliYun.repo

查看 阿里云仓库包括的链接

你可以:

  • 添加第三方仓库(如 EPEL)。

  • 使用本地镜像源(便于离线安装或提速)。

非官方软件集合(EPEL)。


4、YUM 安装软件的全过程(举例)

bash 复制代码
sudo yum install wget

sudo yum -y sl

这个命令会:

1、查询本地是否已安装 wget; 2、从仓库中找到最新版及其依赖项;

3、下载并安装; 4、自动解决依赖


5、常见问题

  • YUM 下载慢:可配置为国内镜像,如阿里云源。

  • 软件找不到:可能未启用某个 repo,或软件名不正确。

  • 权限问题:操作 YUM 一般需要 sudo。


二、Linux开发工具

1、Linux编辑器-vim使用

Vim 是 "Vi IMproved" 的缩写,是 vi 编辑器的升级版,功能更强大,广泛用于 Linux/Unix 中的文本编辑,尤其适合程序员。

1、Vim 安装

大多数 Linux 发行版默认已安装 Vim。你可以用以下命令检查:

bash 复制代码
vim --version

如果未安装,可使用以下命令安装(以 CentOS 为例):

bash 复制代码
sudo yum install vim

2**、Vim 的三种模式**

Vim 有三种基本模式:

模式 作用 进入方式
普通模式(Normal) 默认模式,移动光标、复制粘贴等 启动 Vim 后默认进入
插入模式(Insert) 编辑文本 按 i、a、o 进入
命令模式(Command) 保存文件、退出 Vim 等 按 : 从普通模式进入

模式切换统一通过按 Esc 返回普通模式。


3、常用操作

1. 启动 Vim (启动之后进入命令模式)

bash 复制代码
vim 文件名

2. 插入/编辑文本(输入" i "进入插入模式)

命令 含义
i 在光标前插入
a 在光标后插入
o 在下一行新建并插入
Esc 退出插入模式回到普通模

3. 保存和退出(默认命令模式,其他模式"esc")

命令 含义
:w 保存文件
:q 退出 Vim
:wq 或 ZZ 保存并退出
:q! 强制退出不保存

4. 光标移动(底行模式"shift + :")

操作 含义
h/j/k/l 左/下/上/右
0 / ^ / $ 行首 / 第一个非空字符 / 行尾
G / gg 跳到文件末尾 / 文件开头
:n 跳转到第 n 行

5. 删除/复制/粘贴

命令 含义
x 删除当前字符
dd 删除当前行
yy 复制当前行
p 粘贴到下一行
u 撤销
Ctrl + r 恢复撤销的内容

4、Vim 配置文件

个人 Vim 设置保存在 ~/.vimrc 文件中。常见设置例如:

bash 复制代码
set number        " 显示行号
syntax on         " 开启语法高亮
set tabstop=4     " 设置 tab 长度
set expandtab     " 用空格替代 tab

2、进阶技巧(简单了解)

命令 说明
/关键词 向下搜索
?关键词 向上搜索
n / N 重复上次搜索,正/反方向
:%s/旧/新/g 全文替换
:set nu 打开行号
:set nonu 关闭行号

相关推荐
maosheng11467 小时前
RHCSA的第一次作业
linux·运维·服务器
wifi chicken7 小时前
Linux 端口扫描及拓展
linux·端口扫描·网络攻击
旺仔.2918 小时前
Linux 信号详解
linux·运维·网络
放飞梦想C8 小时前
CPU Cache
linux·cache
Hoshino.418 小时前
基于Linux中的数据库操作——下载与安装(1)
linux·运维·数据库
恒创科技HK9 小时前
通用型云服务器与计算型云服务器:您真正需要哪些配置?
运维·服务器
吴佳浩 Alben9 小时前
GPU 生产环境实践:硬件拓扑、显存管理与完整运维体系
运维·人工智能·pytorch·语言模型·transformer·vllm
播播资源10 小时前
CentOS系统 + 宝塔面板 部署 OpenClaw源码开发版完整教程
linux·运维·centos
源远流长jerry10 小时前
在 Ubuntu 22.04 上配置 Soft-RoCE 并运行 RDMA 测试程序
linux·服务器·网络·tcp/ip·ubuntu·架构·ip
学不完的10 小时前
Docker数据卷管理及优化
运维·docker·容器·eureka