初学Linux

参考

Linux

简介

Linux 内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。

Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。

Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

Linux 的发行版

Linux 的发行版说简单点就是将 Linux 内核与应用软件做一个打包。

目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。

Linux 应用领域

今天各种场合都有使用各种 Linux 发行版,从嵌入式设备到超级计算机,并且在服务器领域确定了地位,通常服务器使用 LAMP(Linux + Apache + MySQL + PHP)或 LNMP(Linux + Nginx+ MySQL + PHP)组合。

Linux 系统启动过程

运行级别

Linux系统有7个运行级别(runlevel):

  • 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
  • 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
  • 运行级别2:多用户状态(没有NFS)
  • 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
  • 运行级别4:系统未使用,保留
  • 运行级别5:X11控制台,登陆后进入图形GUI模式
  • 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

切换运行级别

init n

找回root密码

重启 -> 3 秒之内要按一下回车,出现如下界面 -> 然后输入e -> 看到新界面,选中第二行(编辑内核) -> 在这输入1回车 -> 再次输入b,进入单用户模式

使用passwd修改密码

安装

宿主机系统:Windows 10

虚拟机软件:VMware Workstation 16

CentOS 操作系统 ISO 镜像:CentOS 7

SSH终端软件:MobaXterm

参考

B站视频:https://www.bilibili.com/video/BV1bA411b7vs

视频配套(windows安装):https://mp.weixin.qq.com/s/onVwwEQ1DAwbvK7qS2YNxg

csdn:https://blog.csdn.net/java_xinshou1/article/details/100010099https://blog.csdn.net/qq_40950957/article/details/80467513

菜鸟教程:https://www.runoob.com/linux/linux-install.html

CentOS:http://mirrors.aliyun.com/centos/7/isos/x86_64/

VMTools

可以建立共享目录,剪切板共享

Linux目录结构

Linux目录结构

https://www.runoob.com/linux/linux-system-contents.html

Linux vi/vim

所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。

但是目前我们使用比较多的是 vim 编辑器。

vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

vi/vim 的使用

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode)输入模式(Insert mode)底线命令模式(Last line mode)。 这三种模式的作用分别是:

命令模式:

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

以下是常用的几个命令:

  • i 切换到输入模式,以输入字符。
  • x 删除当前光标所在处的字符。
  • : 切换到底线命令模式,以在最底一行输入命令。

若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

输入模式

在命令模式下按下i就进入了输入模式。

在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式

底线命令模式

在命令模式下按下:(英文冒号)就进入了底线命令模式。

底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有(已经省略了冒号):

  • q 退出程序
  • w 保存文件

按ESC键可随时退出底线命令模式。

快捷键

快捷键 说明
+ 光标移动到非空格符的下一行
- 光标移动到非空格符的上一行
dd 删除游标所在的那一整行(常用)
ndd n 为数字。删除光标所在的向下 n 行,例如 5dd 则是删除 5 行 (常用)
yy 复制游标所在的那一行(常用)
nyy n 为数字。复制光标所在的向下 n 行,例如 5yy 则是复制 5 行(常用)
p 粘贴
/word 向光标之下搜索
?/word 向光标之上搜索
n 向下找下一个匹配
N 向下找上一个匹配
:set nu 显示行号
:set nonu 与 set nu 相反,为取消行号!
G 移动到这个档案的最后一行(常用)
nG n 为数字。移动到这个档案的第 n 行。可配合 :set nu
gg 移动到这个档案的第一行,相当于 1G 啊! (常用)
n n 为数字。光标向下移动 n 行(常用)
u 复原前一个动作。(常用)
[Ctrl]+r 重做上一个动作。(常用)
[Ctrl] + [f] 屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
[Ctrl] + [b] 屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
0 或功能键[Home] 这是数字『 0 』:移动到这一行的最前面字符处 (常用)
$ 或功能键[End] 移动到这一行的最后面字符处(常用)

关机重启命令

shutdown

  • shutdown -h now 立即关机
  • shutdown -h 1 一分钟后关机
  • shutdown -r now 立即重启

halt

​ 等同于直接关机

reboot

​ 重启系统

sync

​ 把内存数据同步到磁盘中

帮助指令

man 指令

help 指令

用户管理

用户注销

logout

https://www.runoob.com/linux/linux-user-manage.html

添加用户

useradd 选项 用户名

-d指定用户主目录

-g指定用户组

指定/修改密码

passwd 选项 用户名

删除用户

userdel 选项 用户名

带选项-r则把用户的主目录一起删除

修改用户

usermod 选项 用户名

选项与useradd一样

查询用户

id 用户名

切换用户

su 用户名

高权限切换低权限不用输密码

当需要返回原来用户时使用exit

查看当前用户

who am i

用户组

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。

创建组

groupadd 选项 组名

删除组

groupdel 组名

修改用户组

usermod -g 组名 用户名

与用户有关的系统文件

/etc/passwd, /etc/shadow, /etc/group

/etc/passwd

Linux系统中的每个用户都在/etc/passwd文件中有一个对应的记录行,它记录了这个用户的一些基本属性。

这个文件对所有用户都是可读的。

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

/etc/shadow

存放加密后的密码。

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

/etc/group

存放用户组的所有信息.

组名:口令:组标识号:组内用户列表

文件基本属性类

在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。

  • 当为 d 则是目录
  • 当为 - 则是文件;
  • 若是 l 则表示为链接文档(link file);
  • 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
  • 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。

文件基本属性

每个文件的属性由左边第一部分的 10 个字符来确定(如下图)。

基本说明

从左至右用 0-9 这些数字来表示。

0 位确定文件类型,第 1-3 位确定属主(该文件的所有者)拥有该文件的权限。

第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。

目录显示4096

权限管理

文件目录所有者

默认用户创建文件后,文件所有组即为用户所在组

查看所有者

  • groupadd police:创建police组

  • useradd tom -g police tom:创建tom进police组

  • passwd tom:修改/设置tom密码

  • 切换到tom用户

  • touch ok.txt:创建ok.txt文件

  • ls -ahl:查看当前目录所有者

修改所有者

  • chown tom apple.txt:修改apple.txt文件所有者为tom,但组没变
  • chown -R tom kkk:将kkk目录下所有递归所有者改为tom
  • chown user/group :同时修改所有者和所在组

修改文件所在组

  • chgrp police orange.txt:将orange.txt文件所在组修改为police组
  • chgrp -R police kkk:将kkk目录下所有递归所在组改为police

其他组

除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组

修改权限

chmod符号

  • u:所有者;g:所在组;o:其他人;a:所有人
  • chmod u=rwx,g=rx,o=rw abc.txt:对于abc.txt,所有者rwx,所在组rx,其他人rw
  • chmod u-x,g+w abc.txt:对于abc.txt,所有者减去x,所在组加上w
  • chmod a+w:对所有人加上w

chmod数字

各权限的分数对照表如下:

  • r:4
  • w:2
  • x:1

chmod 754 abc.txt:修改权限为rwx r-x r--

权限修改后需要重新登录才能生效

文件目录类指令

处理目录的常用命令

接下来我们就来看几个常见的处理目录的命令吧:

  • ls(英文全拼:list files): 列出目录及文件名
    • -a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
    • -d :仅列出目录本身,而不是列出目录内的文件数据(常用)
    • -l :长数据串列出,包含文件的属性与权限等等数据;(常用)
    • -al ~:将家目录下的所有文件列出来(含属性与隐藏档)
  • cd(英文全拼:change directory):切换目录
    • cd ~:回到家目录
    • cd ..:回到上级目录
    • cd ./:当前目录下的
  • pwd(英文全拼:print work directory):显示目前的目录
  • mkdir(英文全拼:make directory):创建一个新的目录
    • 默认只能一级一级创建
    • -p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!
  • rmdir(英文全拼:remove directory):删除一个空的目录
    • 不能删除非空目录
    • rm -rf 删除非空目录
  • cp(英文全拼:copy file): 复制文件或目录
    • cp 来源档(source) 目标档(destination)
    • cp -r:递归复制
    • :强制覆盖,不会提示
  • rm(英文全拼:remove): 删除文件或目录
    • rm -rf:删除目录
    • rm -r:递归删除
    • rm -f:删除文件不提示
    • rm -i:提示
  • mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称
    • mv source destination:移动/重命名
    • mv -f:强制移动,不提示
    • mv -i:提示
    • mv -u:更新则更新
  • touch :Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。(可一次性创建多个文件)

文件内容查看

Linux系统中使用以下命令来查看文件的内容:

  • cat 由第一行开始显示文件内容
    • 只读方式打开
    • cat -n:查看显示行号
    • cat file | more:分页浏览,空格下一页
  • tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
  • nl 显示的时候,顺道输出行号!
  • more 一页一页的显示文件内容
    • 空格:下一页
    • enter:下一行
    • b:上一页
    • q:立即结束浏览
  • less 与 more 类似,但是比 more 更好的是,他可以往前翻页!
    • 快捷键与more类似
  • head 只看头几行
    • head -n:头n行
  • tail 只看尾巴几行
    • tail -n:尾n行

">"指令与">>"指令

  • ">"覆盖,不存在就创建
  • ls -l > a.txt
  • ">>"追加
  • ls -l >> b.txt

echo

  • 字符串输出
  • echo $PATH:输出环境变量

ln

  • 连接:硬连接;软连接(快捷方式)
  • ln -s 文件或目录 链接
  • 删除链接 rm -rf 链接
  • pwd查看时仍是当前目录

history

  • 查看已执行的指令
  • history n:最近n条
  • !n:执行历史编号n的指令

时间日期类

date

  • data:当前年月日 星期 时分秒
  • data "+%Y-%m-%d":当前年月日
  • date "+%Y年%m月%d日 %H:%M:%S":当前年月日时分秒
  • data -s:设置时间

cal

  • cal:当月日历
  • cal 年:某年日历

搜索查找类

find

  • find /home -name hello.txt:在home目录查找名字为hello.txt文件
  • find /opt -user nobody:在opt目录下查找用户名为nobody文件
  • find / -size +20M:根目录下查找大于20M的文件
  • find /home *.txt:查找home目录下txt文件

locate

ocate 与 find 不同: find 是去硬盘找,locate 只在 /var/lib/slocate 资料库中找。

locate 的速度比 find 快,它并不是真的查找,而是查数据库,一般文件数据库在 /var/lib/slocate/slocate.db 中,所以 locate 的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库 ,命令为:updatedb

  • locate 文件名:查找文件

grep

grep 命令用于查找文件里符合条件的字符串。

  • 与|一起使用
  • cat hello.txt | grep hello:查找
  • cat hello.txt | grep -n hello:查找并显示行号

压缩和解压缩类

gzip

  • 压缩,不保留原文件

gunzip

  • 解压

zip

  • zip -r mypackage.zip ./test/:将/test/目录解压到 mypackage.zip

unzip

  • unzip -d ./xm/mypackage.zip:将mypackage.zip解压到xm目录下

tar

  • tar -zcvf a.tar.gz a.txt b.txt:将a.txt和b.txt压缩到a.tar.gz
  • tar -zcvf myhome.tar.gz /home/:对整个文件/目录压缩
  • tar -zxvf a.tar.gz:解压到当前目录
  • tar -zxvf myhome.tar -C /opt/:解压指定目录,目录要存在

任务调度

Linux crontab是用来定期执行程序的命令。

当安装完成操作系统之后,默认便会启动此任务调度命令。

crond 命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。

注意:新创建的 cron 任务,不会马上执行,至少要过 2 分钟后才可以,当然你可以重启 cron 来马上执行。

而 linux 任务调度的工作主要分为以下两类:

  • 1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存
  • 2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置

如果是简单的任务,可以不用写脚本,直接在crontab中加入任务即可

如果任务复杂,需要写脚本

语法

crontab [选项]

参数说明:

  • -e : 执行文字编辑器来设定时程表
  • -r : 删除目前的时程表
  • -l : 列出目前的时程表

时间格式如下:

1
2
3
4
5
6
7
8
*    *    *    *    *
- - - - -
| | | | |
| | | | +----- 星期中星期几 (0 - 6) (星期天 为0)
| | | +---------- 月份 (1 - 12)
| | +--------------- 一个月中的第几天 (1 - 31)
| +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59)

例:

  • crontab -e

  • /1 * * * ls -l /etc >> /tmp/to.txt

  • 保存退出

  • 每一分钟执行一次追加到/tmp/to.txt

  • cd /home/

  • vim mytask.sh:编辑脚本mytask.sh

  • date >> /tmp/mydate

  • chmod 744 mytask.sh:给mytask.sh执行权限

  • crontab -e

  • 加上 /1 * * * /home/mytask.sh

  • cd /home/

  • vim mytask2.sh:编辑脚本mytask2.sh

  • date >> /tmp/mycal

  • cal >>/tmp/mycal

  • chmod 744 mytask2.sh:给mytask2.sh执行权限

  • crontab -e

  • 加上 /1 * * * /home/mytask2.sh

  • 完成

下面再看看几个具体的例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
0 */2 * * * /sbin/service httpd restart  意思是每两个小时重启一次apache 

50 7 * * * /sbin/service sshd start 意思是每天7:50开启ssh服务

50 22 * * * /sbin/service sshd stop 意思是每天22:50关闭ssh服务

0 0 1,15 * * fsck /home 每月1号和15号检查/home 磁盘

1 * * * * /home/bruce/backup 每小时的第一分执行 /home/bruce/backup这个文件

00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \; 每周一至周五3点钟,在目录/home中,查找文件名为*.xxx的文件,并删除4天前的文件。

30 6 */10 * * ls 意思是每月的1、11、21、31日是的6:30执行一次ls命令

注意:当程序在你所指定的时间执行后,系统会发一封邮件给当前的用户,显示该程序执行的内容,若是你不希望收到这样的邮件,请在每一行空一格之后加上 > /dev/null 2>&1 即可,如:

1
20 03 * * * . /etc/profile;/bin/sh /var/www/runoob/test.sh > /dev/null 2>&1 

磁盘管理

Linux磁盘管理好坏直接关系到整个系统的性能问题。

Linux磁盘管理常用三个命令为df、du和fdisk。

  • df:列出文件系统的整体磁盘使用量

    • df:将系统内所有的文件系统列出来

    • df -h:将容量结果以易读的容量格式显示出来

  • du:检查磁盘空间使用量

    • du:只列出当前目录下的所有文件夹容量(包括隐藏文件夹)
    • du -a:将文件的容量也列出来
    • du -ach --max-depth=1 /opt:查询opt目录磁盘占用情况,深度为1
    • ls -l /home | grep "^-" | wc -l:统计home目录下,以”-“打头的文件(文件个数)
    • ls -l /home | grep "^d" | wc -l:统计home目录下,以”d“打头的文件(目录个数)
    • ls -lR /home | grep "^-" | wc -l:统计home目录下(包括子目录下),以”-“打头的文件(文件个数)
    • ls -lR /home | grep "^d" | wc -l:统计home目录下(包括子目录下),以”d“打头的文件(目录个数)
  • fdisk:用于磁盘分区

  • mkfs:格式化磁盘

tree

  • yum install tree
  • 树状显示目录文件

分区 - 文件系统

  • lsblk -f:查看分区和挂载情况
  • lsblk :还可以查看大小

磁盘挂载使用 mount 命令,卸载使用 umount 命令。

进程管理

ps

ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。

参数

  • ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
  • -A 列出所有的进程
  • -w 显示加宽可以显示较多的资讯
  • -au 显示较详细的资讯
  • -aux 显示所有包含其他使用者的行程

au(x) 输出格式 :

1
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
  • USER: 行程拥有者
  • PID: pid
  • %CPU: 占用的 CPU 使用率
  • %MEM: 占用的记忆体使用率
  • VSZ: 占用的虚拟记忆体大小
  • RSS: 占用的记忆体大小
  • TTY: 终端的次要装置号码 (minor device number of tty)
  • STAT: 该行程的状态:
    • D: 无法中断的休眠状态 (通常 IO 的进程)
    • R: 正在执行中
    • S: 静止状态
    • T: 暂停执行
    • Z: 不存在但暂时无法消除(僵尸进程)
    • W: 没有足够的记忆体分页可分配
    • <: 高优先序的行程
    • N: 低优先序的行程
    • L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
  • START: 行程开始时间
  • TIME: 执行的时间
  • COMMAND:所执行的指令

ps -aux | grep sshd:查看关键字有sshd的进程

ps -ef | more:查看父进程ppid

pstree -u:树状显示进程

top

  • top命令用于实时显示 process 的动态。使用权限:所有使用者。
  • top -u 用户名:查看给用户的进程
  • top -d 时间:默认3秒刷新一次
  • top -n 5:刷新5次则退出

kill

kill 命令用于删除执行中的程序或工作。

语法

1
kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>]

参数说明

  • -l <信息编号>  若不加<信息编号>选项,则 -l 参数会列出全部的信息名称。
  • -s <信息名称或编号>  指定要送出的信息。
  • [程序]  [程序]可以是程序的PID或是PGID,也可以是工作编号。

使用 kill -l 命令列出所有可用信号。

最常用的信号是:

  • 1 (HUP):重新加载进程。
  • 9 (KILL):杀死一个进程。
  • 15 (TERM):正常停止一个进程。

服务

参考

systemctl

#启动网络服务

  • systemctl start network.service

#停止网络服务

  • systemctl stop network.service

#重启网络服务

  • systemctl restart network.service

#查看网络服务状态

  • systemctl status network.serivce

查看服务

setup

  • 图形终端,查看服务

ls -l /etc/init.d/

  • 终端使用,查看服务

服务级别

chkconfig

  • chkconfig -level5 sshd off:运行级别为5时sshd关闭
  • chkconfig -level5 firewalld off:运行级别为5时防火墙关闭
  • chkconfig firewalld off:所有运行级别下关闭防火墙
  • chkconfig firewalld on:所有运行级别下开启防火墙
  • 重启后生效

telnet

telnet命令用于远端登入。

执行telnet指令开启终端机阶段作业,并登入远端主机。

实例

登录远程主机

1
2
3
# telnet 192.168.0.5 

//登录IP为 192.168.0.5 的远程主机

netstat

netstat 命令用于显示网络状态。

利用 netstat 指令可让你得知整个 Linux 系统的网络情况。

  • netstat -anp | more:查看全部服务

包管理

rpm

rpm 命令用于管理套件。

rpm(英文全拼:redhat package manager) 原本是 Red Hat Linux 发行版专门用来管理 Linux 各项套件的程序,由于它遵循 GPL 规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM 套件管理方式的出现,让 Linux 易于安装,升级,间接提升了 Linux 的适用度。

  • rpm -qa | grep firefox:查询火狐
  • rpm -qa:查询所有
  • rpm -q firefox:查询火狐
  • rpm -qi firefox:查询软件包信息
  • rpm -ql firefox:查询火狐安装了哪些文件/位置
  • rpm -qf /etc/passwd:查询/etc/passwd属于那个软件包
  • rpm -e firefox:卸载火狐
  • 如果存在依赖性会提示,不推荐强制删除

安装

  • 找到要安装的rpm包,挂载centos的ios文件,在/media/下找
  • 移动到 /opt/下
  • rpm -ivh rpm软件包

yum

yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。

基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum常用命令

1、列出所有可更新的软件清单命令:yum check-update

2、更新所有软件命令:yum update

3、仅安装指定的软件命令:yum install

4、仅更新指定的软件命令:yum update

5、列出所有可安裝的软件清单命令:yum list

6、删除软件包命令:yum remove

7、查找软件包命令:yum search

8、清除缓存命令:

  • yum clean packages: 清除缓存目录下的软件包
  • yum clean headers: 清除缓存目录下的 headers
  • yum clean oldheaders: 清除缓存目录下旧的 headers
  • yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers