Skip to content

Latest commit

 

History

History
554 lines (323 loc) · 21.2 KB

CentOS常用命令.md

File metadata and controls

554 lines (323 loc) · 21.2 KB

CentOS常见命令

系统信息

查看当前系统信息:uname [可选参数]

如果不添加参数,直接执行:uname,则默认执行的是 uname -s

可选参数有:

参数 对应含义 输出值示例
-a | --all 输出全部可以显示的信息(若某值为 unknown 则忽略不显示)
-m | --machine 输出电脑硬件类型 x86_64
-n | --nodename 输出在网络上的主机名称 VM_0_8_centos
-r | --release 输出操作系统的发行编号 3.10.0-1127.13.1.el7.x86_64
-s | --sysname 输出操作系统的名称 Linux
-v 输出操作系统的内核版本信息(注意不是版本号,而是该内核建立的时间和CPU架构)
例如:#1 SMP Tue Jun 23 15:46:38 UTC 2020 中 "1 SMP" 指单核架构、"Tue Jun 23 15:46:38 UTC 2020" 指内核建立的时间
#1 SMP Tue Jun 23 15:46:38 UTC 2020
-p | --processor 输出处理器类型或“unknown” x86_64
-i | --hardware-platform 输出硬件平台或“unknown” x86_64
-o | --operating-system 输出操作系统名称 GNU/Linux

环境变量

查看系统环境变量:env

服务相关

管理服务使用:systemctl (推荐) 或 service

systemctl 更加利于提高启动速度,且 systemctl 兼容 service,因此推荐使用 systemctl 命令

查看 systemctl 版本:systemctl --version

管理服务命令格式为:systemctl + 执行命令(command) + 服务名(unit)

执行命令(command)分别为:

命令 对应含义
start 立即启动
stop 立即关闭
restart 立即重启
reload 不关闭情况下 ,重新载入配置文件
enable 设置下次开机时,自动启动
disable 设置下次开机时,不自动启动
status 打印当前状态
is-active 目前是否正在运行中(若打印 active 即表示运行中)
is-enable 打印开机时是否默认启动
kill 向服务进程发送信号(并非关闭服务)
show 打印出服务配置
mask 注销服务,且无法再启动
unmask 取消注销服务

开关机相关

查看已开机运行时间:uptime

普通重启:reboot

root用户操作重启:shutdown -r [time] [time]如果为now立即重启、10表示10分钟后重启、20:35表示20:35重启

取消重启:shutdown -c

立即关机(停止CPU,但仍然通电,系统处于低层维护状态):halt

立即关机:poweroff

root用户操作关机:shutdown -h [time] [time]如果为now立即关机、10表示10分钟后关机、20:35表示20:35关机

权限设置

常见的 Nginx 网站目录需要 755 权限,目录下的文件需要 644 权限,设置方式如下。 通过命令 cd 到该目录下,然后执行:

chmod 644 -R ./
find ./ -type d -print|xargs chmod 755;

硬盘相关

查看分区和硬盘:lsblk

查看硬盘使用情况:df -h

查看硬盘别名(label):blkid

查看当前目录下的各个目录或文件大小:du -sh ./*

内存相关

查看当前内存使用情况:free -h

CPU相关

查看当前CPU信息:cat /proc/cpuinfo

查看当前为几核CPU:cat /proc/cpuinfo| grep "cpu cores"| uniq

查看当前CPU使用情况:top 详情参见 系统性能状态

网络端口相关

列出正在活动的网络端口信息:netstat

列出网络端口配置(占用)信息:netstat -netlp

查看某特定端口的占用信息:netstat -netlp | grep 9008

查看网址响应速度:ping www.xxx.com

查看网址DNS解析记录(可以用来检测网址是否有CND加速):nslookup www.xxx.com

网络请求

请求某网址:curl https://xxx.xx

更多关于 curl 的用法,参见:Curl常用命令

进程相关

查看当前系统全部进程:ps -ef

查看某xxxx进程:ps -ef|grep xxxx

终止某进程:kill -9 pid pid为该进程在 ps -ef中对应的pid

终止某xxxx相关全部进程:killall -9 xxxx

系统性能状态

查看当前系统性能状态以及CPU占用情况:top

在性能打印结果中,上半部分输出内容如下:

输出结果第N行 对应内容
top 系统当前时间、当前登录用户个数、系统负载(load average)
Tasks 系统总进程数(total)、运行中进程数(running)、休眠(sleeping)、睡眠(stopped)、僵尸进程数量(zombie)
%Cpu CPU 当前使用情况:用户空间占用CPU百分比(us)、内核空间占用CPU百分比(sy)、用户进程空间内改变过优先级的进程占用CPU百分比(ni)、
空闲CPU百分比(id)、等待输入输出的CPU时间百分比(wa)、硬件中断(hi)、软件中断(si)、实时(st)
KiB Men 内存当前使用情况:总内存(total)、空闲可用内存(free)、已用内存(used)、硬盘缓存(buff/cache)
KiB Swap Swap(硬盘缓存) 空间当前使用情况:可用内存(avail Mem)

下半部分,每一行结果内容如下:

标签名 对应含义
PID 进程ID
USER 进程所有者
PR 进程优先级
NI NICE值,NICE值越小优先级越高
VIRT 使用的虚拟内存大小,单位KB
RES 当前使用的内存大小,单位KB
SHR 使用的共享内存大小,单位KB
S 进程状态
%CPU 更新时间间隔内进程所使用的CPU时间的百分比
%MEM 更新时间间隔内进程所使用的内存百分比
TIME+ 进程使用的CPU时间,精确到 0.01s
COMMAND 进程名称

查看文件或目录信息

查看当前目录内容:ls

查看当前目录内容和信息:ll 或 ls -i

查看某目录内容:ls xxx

参看某目录内容和信息:ll xxx

例如某一条信息为:drwxr-xr-x 7 root root 4096 Jun 28 18:16 mykoa

该条信息构成为:

构成项 代表含义
第1项 开头字母(文件类型) + 后9个字母(文件权限)
第2项 文件数量(文件显示为1、目录显示为目录里第1级子目录和文件个数总和)
第3项 创建该文件的用户名
第4项 创建文件用户所在的用户组
第5项 文件体积(单位是kb)
第6项 创建文件的日期
第7项 文件名
开头字母 代表含义
- 文件
d 目录
l (小写字母L) 链接
b 链接存储设备
c 串行设备
字母 数字代表 代表含义
r 4 可读
w 2 可写
x 1 可执行
(文本文件 不具备可执行,即使root用户也显示为 - )
- 0 无权限
字母组合(3个字母为一组) 代表含义
第1组字母 属主权限
第2组字母 属组权限
第3组字母 其他用户权限

常见权限

常见的修改文件或目录权限,有 2 种形式:文字设定、数字设定

文字设定方法:

命令构成形式:chmod + [who] + [+|-|=] + [mode] + 文件或目录路径

[who]:用户组

不设置的情况下,默认值为 a

可设置的值 代表含义
a 即 all,表示所有用户
u 即 user,表示文件或目录的所有者
g 即 group,表示与文件属主的其他同组用户
o 即 others,表示其他用户

[+|-|=]:赋权类型

可设置的值 代表含义
+ 添加某个权限
- 取消某个权限
= 赋予给定的权限,并取消其他所有权限(如果有的话)

[mode]:权限

权限字母含义:

权限字母 对应含义
r 可读
w 可写
x 可执行
X 只有目标文件对某些用户时可执行的,或者目标文件是目录时才追加 x 属性
-R 对目前目录下的所有文件与子目录进行相同的权限变更
-f 若该文件权限无法被更改也不要显示错误信息

数字设定方法:

命令构成形式:chmod + 数字 + 文件或目录路径

3位数字构成,每一个数字是由 r(4) + w(2) + x(1) | -(0) 累加计算的结果

3位数字 代表含义
第1位数字 (u、user),文件属主
第2位数字 (g、group),与文件属主同组的其他用户
第3位数字 (o、others),其他用户
数字计算结果 对应权限
4 r--
5 r-x
6 rw-
7 rwx

常用权限数字:

数字 对应权限
444 r--r--r--
600 rw-------
644 rw-r--r--
666 rw-rw-rw-
700 rwx------
744 rwxr--r--
755 rwxr-xr-x
777 rwxrwxrwx

注意:对于文本文件来说,永远不会有执行权限,即使你通过命令给他添加执行权限后,依然是不会有执行权限的。

文件夹相关

创建文件夹:mkdir xxx

查看当前所在目录的绝对路径:pwd

查看某程序 xxx 所在安装目录:which xxx

文件相关

创建文件:touch xxx.xx

向文件写入数据:echo you-str-xxx > xxx.xx 会直接替换覆盖原有内容

输出文件内容:cat xxx.xx

查找文件或目录

查找文件:find / -name 'xxx'

查找目录:find / -name 'xxx' -type d

查找内容:find . | xargs grep -ri 'xxxx'

管理文件或目录

复制文件:cp xxx.xx newxx.xx

复制目录:cp -r xxx newxxx 参数 -r 表示递归,即包含该目录下的子目录

删除文件(需要确认):rm xxx.xx 直接删除(不会收到是否删除询问)

删除文件(不需要确认):rm -f xxx.xx 参数 -f 表示不需要询问,强制删除

删除目录(需要确认):rm -r xxx 每删除目录中一个文件或子目录,都会询问,并回复 y,才可删除

删除目录(不需要确认):rm -rf xxx 参数 -rf 表示强制删除所有文件及子目录

移动目录:mv xxx /xx 将目录 xxx 移动到 /xx目录内,最终新路径为 /xx/xxx,注意:如果 /xx 目录下本身就存在 名为 xxx 的目录 ,则移动失败

移动目录:mv -f xxx /xx 参数 -f 表示强制将 xxx 移动到 /xx 目录下,如果 /xx 目录中原本存在名为 xxx 的目录,则会被强制覆盖

yum相关

升级yum和所有的已安装包:yum -y update

仅升级所有的已安装包,不升级yum本身:yum -y upgrade

安装本地 .rpm 文件包:yum install /xxx/xxx.rpm

安装网络 .rpm 文件包:yum install https://xxx.com/xxx.rpm

将程序安装到指定目录中:yum install xxx --installroot=/xx/xx

卸载 xxx 程序:yum remove xxx

下载文件

安装wget下载程序:yum install wget

使用wget下载某文件:wget http://xxx.xxxx.xxx/xxx.xx

使用curl下载某文件:curl http://xxx.xxxx.xxx/xxx.xx

解压文件

解压文件:tar -xvf xxx

压缩文件:tar -czvf xxx filepath

常见的压缩文件名后缀
.tar
.tar.gz
.tar.bz2
.tar.Z
.rar
.zip
.tgz
表明哪种操作的字母参数(只能5选1) 代表含义
-c 建立压缩档案
-x 解压
-t 查看内容
-r 向压缩归档文件末尾追加文件
-u 更新原压缩包中的文件
辅助字母参数(数量不限) 代表含义
-z 有gzip属性的
-Z 有compress属性的
-j 有bz2属性的
-v 显示所有过程(显示压缩或加压过程)
-O 将文件解开到标准输出
结尾字母参数(必须以 f 为结尾) 代表含义
-f 使用档案名字(压缩文件名)

软连接

创建软连接:ln -s /xxx/xxx/xx /usr/local/bin/xx

删除软连接:rm -rf /usr/local/bin/xx,如果进入到了bin目录,则为:rm -rf ./xx (仅删除软连接不删除目标文件)

输出显示

输出 xxxx 字符:echo xxxx

输出 xxx 文件内容:echo xxx.xx

打印文本

输出 xxx 文本文件内容:cat xxx

编辑文本

编辑文件(类似windows记事本)

查看文件:vim xxx

切换到输入编辑文件模式:i 或 摁键盘 Ins(Insert) 键

退出编辑模式:摁 exc

保存:摁 w

退出编辑器:摁 exc 或 :q 或 ctrl+z(不会保存)

查看/编辑某文档

查看:vim xxxx

编辑:摁i进入编辑模式,上下箭头可以移动光标,或者使用键盘上HJKL4个键操作

保存:摁w

退出:Esc 或 q 或 ctr + z

命令执行与切换

临时放入后台运行:xxxxx & 如果当前连接关闭,则该命令就会终断结束

永久放入后台运行:nohup xxxxx & 即使关闭当前连接,该命令依然运行(一定要用exit退出,如果直接关闭xshell此命令不执行)

暂时放入后台暂停:ctr + z 当前命令会处于暂停状态

查看当前后台运行的命令:jobs 注意看每一行最前面的数字,表示该命令的序号

将后台某个命令调回前台:fb num num是该命令的序号

将后台某个处于暂停的命令变为后台执行:bg num num是该命令的序号

终止当前命令:ctr + c

终止后台某个命令:kill num num是该命令的序号

终止某个(无论是不是在后台)命令:kill -9 pid pid是通过ps -ef 命令查找到的该命令对应的pid数字

终止某个服务所有相关的进行:killall -9 name name是通过ps -ef 命令查找到的该命令名称

防火墙相关

查看防火墙:firewall-cmd --state 若输出 running 即表示已启动

启动防火墙:service firewall start

关闭防火墙:service firewall stop

重启防火墙:service firewall restart

其他命令

清除屏幕:ctrl + l (小写的L),其实相当于翻页,之前的信息依然可以通过上翻查看

调出之前的命令:摁上下键

快速补全单词:输入若干字母后,摁 Tab 键,会智能补全你有可能要输入的单词

目录结构

目录 含义
当前用户目录(root用户对应 /root、普通用户对应 /home/xx)
/ 根目录
bin (/usr/bin) 存放二进制文件(可执行命令)
boot 存放内核与启动文件(开机引导目录)
data
dev 存放与设备、驱动器有关的目录
etc 存放配置文件目录、rpm安装默认配置文件目录
home 普通用户目录
lib (/usr/lib) 系统使用的函数库目录
lib64 (/usr/lib64)
lost+found 系统以外崩溃或关机,产生的一些文件碎片存放目录
media 挂载目录,建议挂载媒体设备、CD/DVD目录
mnt 挂载目录,建议挂载U盘、移动硬盘
opt 存放可选、测试中的程序目录(非强制)
proc 虚拟文件系统(保存系统的内核、进程),该目录中的数据并不保存到硬盘中,而是保存在内存中
root 系统管理员(root user)的目录
run 系统运行所需文件目录
sbin (/usr/sbin) 系统管理员(root user)使用的命令目录
srv 服务启动后需要访问的数据目录,例如www服务需要访问的网页数据可以存放在 srv/www内
sys 虚拟文件系统(保存系统内核相关信息),和 proc 目录相似
tmp 存放临时文件目录
usr 存放安装程序(软件默认目录),不是user的缩写,而是“Unix Software Resource”的缩写
usr/etc 存放配置文件目录
usr/local 手动安装的程序目录
usr/src 程序源码的目录
var 动态数据保存目录(缓存、日志、软件产生的文件)
var/log 系统日志目录