目录
一、前言
本篇博文接上一篇博文作为一名合格的软件系统运维人员必须掌握的Linux操作系统的常用命令(一)接着讲系统管理与系统帮助有关的命令,具体如下:
二、Linux命令大全
2.2 系统管理类操作命令
以下命令适用于CentOS版本,但是CentOS 6及以前的版本与CentOS 7及以后的版本,命令有所差异在使用的过程中需要注意,以下以CentOS 6版本为例,也会将CentOS 7与CentOS 6命令的差异作对比。
2.2.1 Linux中的进程和服务
计算机中,一个正在执行的程序或命令,被叫做“进程”(process)。
启动之后一直存在、常驻内存的进程,一般被称作“服务”(service)。
2.2.2 service命令(CentOS 6)
【基本语法】:service 服务名 start|stop|restart|status
- centos6及以前的版本使用的是service命令做服务管理,而从7开始使用systemctl来做服务管理了
- start:启动服务
- stop:停止服务
- restart:重启服务
- status:查看服务状态
【功能描述】:服务管理
【经验技巧】:
service能够启动的服务名称位于 /etc/init.d/ 目录,如下图,发现只有2个服务(下图中绿色的部分表示可执行文件)
【示例】:
(1)查看网络服务状态
(2)停止网络服务
(3)启动网络服务
(4)重启网络服务
2.2.3 chkconfig命令(CentOS 6)
【基本语法】:
命令 | 解释 |
---|---|
chkconfig | 查看所有服务器自启配置 |
chkconfig 服务名 off | 关掉指定服务的自动启动 |
chkconfig 服务名 on | 开启指定服务的自动启动 |
chkconfig 服务名 --list | 查案服务开机启动状态 |
【功能描述】:设置后台服务的自启配置
【示例】:
(1)开启/关闭 network(网络)服务的自动启动
(2)开启/关闭 network 服务指定级别的自动启动
2.2.4 systemctl命令(CentOS 7)
【基本语法】:systemctl start|stop|restart|status 服务名
【功能描述】:服务管理
【经验技巧】:systemctl能够操作的服务名称位于 /usr/lib/systemd/system 目录,如下图
【示例】:
(1)查看防火墙服务的状态
(2)停止防火墙服务
(3)启动防火墙服务
(4)重启防火墙服务
2.2.5 systemctl设置后台服务的自启动配置命令(CentOS 7)
【基本语法】:
命令 | 描述 |
---|---|
systemctl list-unit-files | 查看服务开机启动状态 |
systemctl disable service_name | 关掉指定服务的自动启动 |
systemctl enable service_name | 开启指定服务的自动启动 |
【功能描述】:设置后台服务的自启动配置
【示例】:
(1)查看服务开机启动状态
(2)关闭防火墙服务的自动启动
下面来测试一下,先把防火墙自启动关闭
执行下面命令,重启机器
重启之后,执行下面命令,再看一下防火墙当前状态以及自启动状态,都是关闭的
(3)开启防火墙服务的自动启动
2.2.6 关机重启命令
在 linux 领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。
【基本语法】:
命令 | 解释 |
---|---|
sync | 将数据由内存同步到硬盘中,linux中为提高效率,写磁盘的时候会先将数据写入缓冲器,缓冲区满了之后才会刷到磁盘,sync命令可以将缓冲区的数据立即写入磁盘。 |
half | 停机,关闭系统,但不断电 |
poweroff | 关机,断电 |
reboot | 重启,等同于shutdown -r now |
shutdown [选项] 时间参数 | 具体见下面的选项和时间参数说明 |
【选项说明】:
选项 | 功能 |
---|---|
-H | 相当于–half,停机 |
-r | -r=reboot 重启 |
【时间参数】:
参数 | 功能 |
---|---|
now | 立刻关机 |
时间 | 等待多久后关机(单位是分钟) |
【经验技巧】:
Linux 系统中为了提高磁盘的读写效率,对磁盘采取了 “预读迟写”操作方式。当用户保存文件时,Linux核心并不一定立即将保存数据写入物理磁盘中, 而是将数据保存在缓冲区中,等缓冲区满时再写入磁盘,这种方式可以极大的提高磁盘写入数据的效率。但是,也带来了安全隐患,如果数据还未写入磁盘时,系统掉电或者其他严重问题出现,则将导致数据丢失。使用 sync 指令可以立即将缓冲区的数据写入磁盘。
【示例】:
(1)sync:将数据由内存同步到硬盘中
(2)reboot:重启
(3)halt:停机(不断电)
(4)10分钟后关机,并广播消息
(5)shutdown 时间点:指定时间点关机
(6)shutdown -c:取消关机,并广播消息
(7)shutdown -h now:立马关机(等同于reboot)
(8)shutdow -r now:立即重启(等同于reboot)
2.3 帮助类操作命令
2.3.1 man命令
【基本语法】:man [命令或配置文件]
【功能描述】:获得命令帮助信息
【显示说明】:
信息 | 功能 |
---|---|
NAME | 命令的名称和单行描述 |
SYNOPSIS | 怎样使用命令 |
DESCRIPTION | 命令功能的深入讨论 |
EXAMPLES | 怎样使用命令的例子 |
SEE ALSO | 相关主题(通常是手册页) |
【使用经验】:
man命令比较适合用来查看shell外部命令的帮助文档,内部命令是直接内嵌在shell中的,系统加载启动之后会随着shell一起加载,常驻系统内存中;其他的命令成为外部命令,外部命令有些比较大,用的时候才会去加载执行。
【示例】:
(1)查看ls命令的帮助信息
(2)type:查看命令的类型
如下,可以看出cd是shell内嵌的命令,说明cd是内部命令,而ls是外部命令。
如果用 man cd 查看内部命令cd的帮助信息,结果会显示成下面这样,看起来就比较懵了。
这是由于man查看cd命令的帮助文档时,有3个可选的帮助文档,man选择了第1个。
(3)man -f 命令:列出命令的帮助文档列表
比如我们查看cd命令的帮助文档列表,如下,列出了3个,man默认选择的是第一个,就是shell对应的那个,并不是我们希望看到的,我们希望看到的是第2个。
(4)man 文档编号 命令:用来查看某个命令指定的帮助文档
如下,man列出了cd有3个帮助文档,红色的部分是文档的编号
第2个文档是我们希望看的,对应的编号是:3tcl,man后面跟上文档编号即可查看这个文档,如下
效果如下
2.3.2 type命令
一部分基础功能的系统命令是直接内嵌在 shell 中的,系统加载启动之后会随着 shell 一起加载,常驻系统内存中。这部分命令被称为“内置(built-in) 命令”; 相应的其它命令被称为“外部命令”。
【基本语法】:type 命令
查看命令的类型,如果结果中显示有“shell 内嵌”,表示是内置命令
【功能描述】:查看命令的类型,如果结果中显示有“shell 内嵌”,表示是内置命令
【示例】:
下面看cd、ls、mkdir这3个命令的类型,从下面可以看出cd是内部命令,其他两个是外部命令。
2.3.3 help命令
一部分基础功能的系统命令是直接内嵌在 shell 中的,系统加载启动之后会随着 shell 一起加载,常驻系统内存中。这部分命令被称为“内置(built-in) 命令”; 相应的其它命令被称为“外部命令”。
【基本语法】:help 命令
获得shell内置命令的帮助信息
【功能描述】:获取shell内置命令帮助信息
【示例】:
(1)查看cd命令的帮助信息
2.3.4 --help命令
【基本语法】:命令 --help
【功能描述】:查看外部命令的帮助信息
【示例】:
下面我们来查看外部命令ls的帮助文档
2.3.5 clear命令
【基本语法】:clear
【功能描述】:清屏
【示例】:
比如目前屏幕是下面这样,可以输入clear命令,清屏
clear命令执行后,屏幕被清理干净了,对应的快捷键是 ctrl+l ,如下
但是这种清屏只是将的内容向上滚动了而已,并没有真正意义上的清屏,如果要完全清屏,需要用reset命令。
2.3.6 reset命令
【基本语法】:reset
【功能描述】:彻底清屏
【示例】:
执行reset命令后,命令窗口会被重启,会彻底清屏。
reset执行前
执行后,如下,被彻底清屏了
2.3.7 常用快捷键
快捷键 | 功能 |
---|---|
ctrl+c | 停止进程 |
ctrl+l | ctrl+l 清屏,等同于clear;彻底清屏是:reset |
善于用tab键 | 提示(更重要的是可以防止敲错) |
上下键 | 查找执行过的命令 |