「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者

100个最常用的Linux命令

  • 一、文件目录
    • mkdir:创建目录
    • ls:列出目录内容
    • pwd:显示当前目录
    • cd:切换目录
    • touch:创建文件
    • cp:复制文件或目录
    • mv:移动文件或目录
    • rm:删除文件或目录
    • du:查看文件或目录大小
    • wc:计算行数字数
    • cmp:比较文件
    • find:查找文件
  • 二、查看文件
    • cat:查看所有内容
    • nl:查看时显示行号
    • more:逐页查看
    • less:逐页查看
    • head:查看开头部分
    • tail:查看结尾部分
  • 三、用户/用户组
    • whoami:查看当前用户
    • id:查看用户信息
    • useradd:添加用户
    • userdel:删除用户
    • usermod:修改用户
    • passwd:修改密码
    • su:切换用户
    • groupadd:添加用户组
    • groupdel:删除用户组
    • groupmod:修改用户组
    • gpasswd:修改组用户
  • 四、权限管理
    • chmod:设置权限
    • chown:修改所属用户
    • chgrp:修改所属组
  • 五、网络
    • ping:检测网络
    • telnet:检测端口
    • nc:端口扫描
    • netstat:网络状态
    • ifconfig:网络设备
    • traceroute:跟踪路由
    • arp:缓存表
  • 六、系统管理
    • uname:系统信息
    • who:所有登录用户
    • whoami:当前登录用户
    • date:日期时间
    • last:用户登录信息
    • lastd:用户登录失败
    • lastlog:最后一次登录
    • ps:查看进程
    • top:动态查看进程
    • kill:结束进程
    • free:查看内存
    • lsmod:显示系统模块
    • clear:清屏
    • vlock:锁屏
    • reboot:重启
    • shutdown:关机
  • 七、压缩备份
    • zip
    • bzip2
    • gzip
    • tar
  • 八、防火墙
    • Iptables
    • Frewalld
  • 九、服务
    • service:控制服务
    • ntp:时间服务
      • 1)启动时间同步服务
      • 2)配置时间服务器
      • 3)手动同步时间
    • crontab:计划任务

一、文件目录

mkdir:创建目录

mkdir (make directory)创建目录

参数:

  • -p 强制创建(递归创建)
  • -m 创建时指定权限

实例

mkdir test               1)创建指定目录
mkdir /test/test1       2)指定路径下创建目录
mkdir -p test1/test2    3)创建多级目录
mkdir -m 777 test2      4)创建目录时,指定权限(默认权限:drwxr-xr-x)

ls:列出目录内容

ls(list files)显示指定目录下的内容(文件和目录)

参数:

  • -a 显示隐藏文件(.开头的文件是隐藏文件,默认不显示)
  • -l 显示详细信息(文件类型、权限、大小等)
  • -t 按照创建时间降序
  • -h 文件大小显示单位

实例

ls /test     1)列出指定目录下的内容
ls              2)不指定目录时,默认显示当前目录
ls -l           3)展示详细信息
ll              4)等价于 ls -l
ls -a           5)显示隐藏文件
ls te*          6)模糊查询:当前目录下,所有 te 开头的文件和目录
ls /root/ te*   7)模糊查询:/root目录下,所有 te 开头的文件和目录
ll -t           8)查看最近修改过的文件和目录

「文件详细信息」字段解释

从左到右依次是:权限、引用次数、所属用户、所属组、大小、修改时间、文件名

[root /]# ll /test
total 4
drwxr-xr-x 2 root root 4096 Sep 14 20:10 test1

pwd:显示当前目录

pwd (print working directory)显示当前所在的目录,即工作目录

[root test]# pwd
/test

cd:切换目录

cd (change directory)切换当前所在的目录(路径)

实例

cd ../       1)返回上一级目录
cd ~        2)切换到用户家目录
cd /        3)返回根目录
cd -        4)返回上一个进入的目录(类似撤回)

touch:创建文件

作用:修改文件或目录的最后修改时间,如果文件不存在,则创建文件。

参数:

  • -a 修改文件的读取时间
  • -m 修改文件的更改时间
  • -c 文件不存在时,不创建文件

实例

1)指定路径下,创建文件

 touch /test/a.txt

2)同时创建多个文件

 touch b.txt c.txt d.txt

3)修改目录的访问和修改时间

 touch /test

cp:复制文件或目录

cp (copy)复制文件或目录

参数:

  • -r 复制目录
  • -f 取消覆盖文件的提示
  • -i 开启覆盖文件的提示,回复y时覆盖文件
  • -p 复制修改时间和访问权限

实例

1)备份文件(修改某个文件前先备份)

 cp a.txt a.txt.bat

2)备份整个目录(加了后缀仍然是目录)

 cp -r test test.bat

mv:移动文件或目录

mv (move)移动文件或目录

参数:

  • -i 覆盖前询问,回复y覆盖
  • -f 取消覆盖询问
  • -b 覆盖前创建一个备份
  • -n 不覆盖文件或目录
  • -u 移动的文件或目录无重复时,才会移动
  • -v 显示移动过程

实例

1)将文件移动到其他目录

 mv a.txt /test

2)修改文件/目录名

 mv b.txt bb.txtmv test newtest

3)移动文件到当前目录中(.代表当前目录)

 mv /test.bat/ .

rm:删除文件或目录

rm (remove)删除文件或目录

参数:

  • -r 删除目录(递归删除)
  • -f 删除是不再确认
  • -v 显示删除过程

实例

1)删除目录下所有内容

提示:rm命令删除的文件无法恢复,慎用!

 rm -rf /test1

du:查看文件或目录大小

du(disk usage)查看目录或文件大小

参数:

  • -a 显示文件大小
  • -h 以K、M、G为单位

实例

du               1)显示当前目录下所有目录的大小
du 目录名       2)显示指定目录的大小
du -a           3)显示当前目录下所有文件的大小
du -a 文件名    4)显示指定文件的大小
du -h           5)显示单位(K、M、G)

wc:计算行数字数

参数:

  • -c 只显示Bytes数
  • -l 只显示行数
  • -w 只显示字数

实例

1)显示文件的行数、字数、字节数、文件名

[root]# wc a.txt69  624 3459 a.txt

2)显示多个文件的总行数、字数、字节数

 wc a.txt c.txt d.txt

cmp:比较文件

作用:比较两个文件是否有差异,如果相同,则没有回显;如果不同,则标记处不同的位置。

参数:

  • -c 显示差异字符对应的内容
  • -l 标记处不一样的地方

实例

1)比较两个文件的内容是否相同(没有回显就表示相同)

 cmp a.txt b.txt

2)显示出两个文件不一样的位置,并显示出不一样的内容

[roo]# cmp -l a.txt b.txt
1  61 1     62 2

find:查找文件

参数:

  • -name 指定文件名
  • -iname 在name的基础上,忽略大小写
  • -type 指定文件类型(f表示文件,d表示目录)
  • -ctime 过去n天内创建的文件
  • -atime 过去n天内被读取过的文件
  • -mtime 过去n天内被修改过的文件
  • -amin 过去n分钟内被读取过的文件
  • -cmin 过去n分钟内被修改过的文件

实例

1)在/home/目录下,查找文件名是 a.txt 的文件

find /home -name a.txt
# 忽略大小写
find /home -iname a.tx

2)在/home/目录下,查找后缀为 txt 的文件

find /home -name '*.txt'

3)在/home/目录下,查找1天内被读取过的文件

find /home/ -type f -atime -1

二、查看文件

cat:查看所有内容

作用:从第一行开始,显示文件所有内容

参数:

  • -n 显示行数
  • -b 类似-n,但不对空白行编号
  • -s 将连续的空白行替换成一行
  • -E 每行结尾处显示$

实例

1)查看文件内容,并显示行号

 cat -n /test/a.txt

2)清空文件内容

 cat /dev/null > /test/a.txt

3)倒序查看(从最后一行开始显示)

 tac /test/a.txt

nl:查看时显示行号

类似 cat -n

 nl /test/a.txt

more:逐页查看

作用:一页一页的显示,逐页阅读,配合功能键实现翻页等操作。

参数:

  • +num 从第 num 行开始显示
  • -f 计算行数时,因单行字数太长,而自动换行为两行及以上的,算作一行。
  • -s 连续两行以上的空白行,替换为一行空白行

实例

1)从第20行开始显示

 more +20 /test/a.txt

常用操作命令

  • Enter键 向下n行,默认向下1行。
  • 空格键 向下一页(即一个屏幕的内容)
  • Ctrl+F 向下一页(同空格键)
  • Ctrl+B 向上一页
  • = 输出当前行号
  • :f 输出文件名和当前行号
  • V 调用vi编辑器
  • ! 调用Shell,回车执行命令
  • q 退出

less:逐页查看

作用:与more类似,但可以向上翻页

参数:

  • -m 显示百分比
  • -n 显示行号
  • -s 连续空行显示为一行
  • -Q 取消警告音

进入less查看模式后,可配合功能键操作:

  • /字符串 向下搜索指定字符串
  • ?字符串 向上搜索指定字符串
  • n 重复前一个搜索(配合/或?)
  • N 反向重复前一个搜索(配合/或?)
  • d或空格键或[pg dn]键 向下翻一页
  • b或[pg up] 键 向上翻一页
  • Enter 或 ↓ 向下一行
  • y 或 j 或 ↑ 向上一行
  • G 移动到最后一行
  • g 移动到第一行
  • q 退出

实例

1)查看文件并显示行号和百分比

 less -mN a.txt

2)查看进程/历史命令后,通过less分页显示

 ps -ef | less -mNhistory | less -mN

3)搜索技巧

按下 /root 向下搜索所有字符串root后
按下n键可以搜索下一个root的位置,按下N键可以搜索上一个root的位置

less和more的区别?

1)less不会直接加载整个文件的内容,速度比more快。

2)less可以搜索指定内容,而more不能。

3)less可以向上翻页,而more只能向下翻页。

4)显示到最后一行时,more会自动退出,而less不会退出。

5)less退出后,shell不会留下内容,而more会留下内容。

head:查看开头部分

作用:查看文件的前几行,默认查看前10行

参数:

  • -n 显示n行(-n可省略)
  • -c 显示多少个字节
  • -q 隐藏文件名(默认)
  • -v 显示文件名

1)查看文件的前10行

 head -10 a.txt

2)查看文件除了最后10行的全部内容

 head -n -10 a.txt

tail:查看结尾部分

作用:查看文件最后几行的内容(默认10行)

参数:

  • -n 显示最后n行
  • -f 持续查看(Ctrl+c退出)
  • -s 配合-f,间隔指定时间更新一次

实例

1)查看最后9行

[ tail -9 a.txt

2)每隔2秒查看一次最后几行,常用于查看最近更新的日志

 tail -f -s 2 a.txt

三、用户/用户组

Linux系统通过系统管理工具userconf,对用户进行统一管理。

whoami:查看当前用户

作用:显示当前登录的用户名称,等价于 id -un

[root]# whoami
root

id:查看用户信息

作用:显示用户的ID、组ID和所属用户组

参数:

  • -u 显示用户ID
  • -un 显示当前登录用户
  • -g 显示用户组ID
  • -G 显示用户附加组ID

实例

1)显示当前登录的用户

 id -un

2)显示指定用户的ID、组ID和用户组(不指定用户时,默认显示当前用户)

[root]# id sshd
uid=74(sshd) gid=74(sshd) groups=74(sshd)

字段解释:

  • uid:用户的ID
  • gid:用户组的ID
  • groups:用户所属的用户组

useradd:添加用户

参数:

  • -u 指定用户ID
  • -d 指定用户主目录
  • -g 指定用户所属组
  • -G 指定用户所属的附加组
  • -s 指定Shell文件

实例

1)添加用户

 useradd user01

新增用户就是在/etc/passwd、/etc/shadow、/etc/group文件中添加一条记录。

[root]# cat /etc/passwd
user01:x:1001:1001::/home/user01:/bin/bash
[root]# cat /etc/shadow
user01:!!:19252:0:99999:7:::
[root]# cat /etc/group
user01:x:1001:

并自动为其创建一个家目录

[root]# ls /home/
user01

userdel:删除用户

参数:

  • -r 删除用户家目录

实例

1)删除指定用户

 userdel user01

删除用户就是将/etc/passwd、/etc/shadow、/etc/group文件中的记录删除

查看这些文件,发现 user01 的记录均被删除

 cat /etc/passwdcat /etc/shadowcat /etc/group

删除用户时,默认不删除家目录,可以使用 -r 参数删除家目录,或删除用户后,手动删除家目录的文件夹

 userdel user01 -r

usermod:修改用户

参数:

  • -u 修改用户ID
  • -l 修改用户名称
  • -g 修改用户组
  • -G 修改用户附加组
  • -d 修改用户登入时的目录
  • -s 修改用户的shell
  • -e 修改账号的有效期
  • -L 锁定用户密码
  • -U 解除锁定

passwd:修改密码

新建的用户没有口令,需指定口令后才可使用。

普通用户只能修改自己的口令,而超级管理员可以修改其他用户的口令。

参数:

  • -f 强制用户下次登录时修改口令
  • -d 使用户无口令
  • -l 锁定用户(无法登录)
  • -u 解锁用户

实例

1)修改用户密码

 passwd user01

su:切换用户

su(switch user)切换当前的登录的用户

实例

1)切换其他用户登录

 su user01

提示:

1)root切换普通用户时,不需要输入密码

2)普通用户切换其他用户时,需要输入密码

3)切换无密码的用户时,不需要输入密码

groupadd:添加用户组

参数:

  • -g 指定组ID

实例

1)添加用户组

 groupadd user04

查看/etc/group文件,确认用户组添加成功

[root]# cat /etc/group
user04:x:1004:

groupdel:删除用户组

 groupdel user04

查看/etc/group文件,确认用户组删除成功

groupmod:修改用户组

参数:

  • -n 修改组名
  • -g 修改组ID

实例

1)修改组名

 groupmod oldgroup -n newgroup

查看/etc/group文件,确认用户组修改成功

gpasswd:修改组用户

将用户添加到用户组,或从用户组中删除用户

参数:

  • -a 添加用户到组
  • -d 从组中删除用户

实例

1)将用户(user001)添加到用户组(user002)

[root]# gpasswd -a user001 user002
正在将用户“user001”加入到“user002”组中
[root]# id user001
uid=1000(user001) gid=1000(user001) 组=1000(user001),1001(user002)

2)从用户组(user002)中删除用户(user001)

[root]# gpasswd -d user001 user002
正在将用户“user001”从“user002”组中删除
[root]# id user001
uid=1000(user001) gid=1000(user001) 组=1000(user001)

四、权限管理

Linux有读、写、执行三种权限。

  • r(read):读权限,查看文件内容或查看文件夹中的内容
  • w(write):写权限,编辑文件或在文件夹下的创建/删除/复制/移动操作
  • x(execute):执行权限,执行文件

文件和目录的权限由 rwx 三个参数组合表示,且顺序不会变,-表示没有权限。

查看文件权限

[root]# ls -l
drwxr-xr-x.   2 root root    6 9月  24 10:23 home

字段解释:

  • 第一位:文档类型,此处为d,表示文档(-表示文件)
  • 第2~4位:所有者权限,此处为rwx,表示拥有读写执行三种权限
  • 第5~7位:同组用户权限,此处为r-x,表示拥有读、执行两种权限
  • 第8~10位,其他用户权限,此处为r-x,表示拥有读、执行两种权限

chmod:设置权限

参数:

  • -u 文件所有者
  • -g 文件所有者所在的组
  • -o 其他用户
  • -a 所有用户(a=u+g+o)
  • -R 递归设置(对目录下所有文件和目录都设置权限)
  • +增加权限
  • -减少权限
  • =设置权限
  • r 读权限(4)
  • w 写权限(2)
  • x 执行权限(1)

实例

字母形式设置权限:

chmod u+x a.txt     # 给文件所有者增加执行权限
chmod go+w a.txt   # 给同组用户和其他用户增加写权限
chmod u-wx a.txt    # 给文件所有者减少写和执行权限
chmod u=rwx a.txt  # 给文件所有者设置读、写、执行权限

数字形式设置权限(r=4,w=2,x=1)

chmod 777 a.txt

chown:修改所属用户

参数:

  • -R 递归设置(修改目录所有者时,同时修改目录下所有内容的所有者)

实例

1)修改文件的所有者

 chown user001 a.txt

2)同时修改文件的所属者和所属组

 chown user001:user001 a.txt

chgrp:修改所属组

参数:

  • -R 递归设置(修改目录所属组时,同时修改目录下所有内容的所属组)

1)修改文件的所属组

 chgrp user001 a.txt

五、网络

ping:检测网络

作用:检测与目标主机的网络连通性

参数:

  • -c 指定次数(默认4次)
  • -i 间隔时间(秒)
  • -s 指定数据包大小

实例

ping www.baidu.com           # 域名(网址)
ping 182.61.200.7           # IP地址
ping MiWiFi-R1CL-srv        # 主机名
ping www.baidu.com -c 3     # ping 3次
ping www.baidu.com -i 3     # 间隔3秒ping一次
ping www.baidu.com -s 100   # 数据包大小为100

提示:如果目标主机禁用ping,也会ping不通,但不代表网络不通。

telnet:检测端口

telnet通常用来检测目标主机的端口是否开启。

如果返回这个,说明没有安装 telnet工具

bash: telnet: 未找到命令...

安装 telnet

yum -y install telnet

测试目标的80端口是否打开

telnet 182.61.200.6 80

提示Connected(链接到)则表示端口开放

Trying 182.61.200.6...
Connected to 182.61.200.6.
Escape character is '^]'.

提示connection timed out(链接超时)则表示端口关闭

telnet: connect to address 182.61.200.11: Connection timed out

nc:端口扫描

nc也可以检测目标主机的端口是否开启,常用来扫描端口。

参数:

  • -v 显示执行过程
  • -u 检测UDP(默认是TCP)

实例

1)测试目标主机的80端口是否开启,Connected表示开启,Connection refused表示关闭。

nc -v 182.61.200.6 80

netstat:网络状态

参数:

  • -t TCP协议(-u表示UDP协议)
  • -n 显示IP地址(默认显示域名)
  • -l 显示监控状态的链接(State字段为LISTEN)
  • -p 显示进程信息

如果返回这个,说明没有安装网络工具

bash: netstat: 未找到命令...

安装网络工具 net-tools

yum -y install net-tools

重新执行命令

netstat -tnlp

ifconfig:网络设备

ifconfig常用来查看主机的IP地址。

1)查看网卡信息

 ifconfig

2)启动/关闭网卡(root权限)

 ifconfig eth0 upifconfig eth0 down

3)配置ip地址和子网掩码

 ifconfig eth0 192.168.10.1ifconfig eth0 192.168.10.1 netmask 255.255.255.0

traceroute:跟踪路由

作用:查看当前主机到达目标主机所经过的路由

如果返回这个,说明没有安装

bash: traceroute: 未找到命令...

安装traceroute工具

yum -y install traceroute

重新执行命令

traceroute www.baidu.com # 域名
traceroute 182.61.200.7     # IP地址

arp:缓存表

arp是地址解析协议,负责将IP地址转换为Mac地址,使用IP>Mac映射表缓存数据,

参数:

  • -s 添加映射关系
  • -d 删除映射关系

实例

1)显示arp缓存表

[root]# arp

2)添加IP>Mac映射关系

arp -s 192.168.11.2 00:b1:b2:b3:b4:b5

3)删除IP>Mac映射关系

arp -d 192.168.11.2

六、系统管理

uname:系统信息

作用:显示操作系统的相关信息。

参数:

  • -a (all)全部信息
  • -m 电脑类型
  • -n 主机名称
  • -s 系统名

实例

1)查看系统信息(常用)

[root]# uname -a
Linux MiWiFi-R1CL-srv 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

2)查看系统类型

[root]# uname -m
x86_64

3)查看主机名

[root]# uname -n
MiWiFi-R1CL-srv

who:所有登录用户

显示所有正在使用系统的用户信息

参数:

  • -H 显示标题
[root]# who -H
名称   线路       时间           备注
root     tty1         2022-09-26 20:29
root     pts/0        2022-09-26 21:12 (192.168.31.179)

whoami:当前登录用户

显示当前登录的用户,即“我是谁“

[root]# whoami
root

date:日期时间

1)显示当前时间

[root]# date
2022年 09月 24日 星期六 21:29:09 CST

2)修改日期(会把具体时间设置成00:00:00)

[root]# date -s 20220923
2022年 09月 23日 星期五 00:00:00 CST

3)修改时间

[root]# date -s 21:30:00
2022年 09月 24日 星期六 21:30:00 CST

last:用户登录信息

作用:显示最近的用户登录信息

last命令实际上是读取/var/log/wtmp文件,这个文件永久记录用户登录信息,由于是二进制文件,无法直接查看,因此需要使用last命令查看。

参数:

  • -n 显示的行数
  • -f 读取指定文件(默认读取/var/log/wtmp)

实例

1)最近的用户登录信息

[root]# last
root     pts/0        192.168.31.179   Mon Sep 26 20:29   still logged in
root     tty1                          Mon Sep 26 20:29   still logged in

字段解释:

  • 第一列:用户名
  • 第二列:终端位置,pts/0(伪终端)指SSH远程登录;tty指本地登录或直连
  • 第三列:登录的IP地址,本地终端登录则显示空
  • 第四列:登录开始时间
  • 第五列:登录结束(退出)时间
  • 第六列:登录持续时间,still logged in 表示处于登录状态

2)用户登录失败的信息

[root]# last -f /var/log/btmp
root     ssh:notty    192.168.31.179   Sat Sep 24 21:52    gone - no logout

3)处于登录状态的用户信息

[root@MiWiFi-R1CL-srv ~]# last -f /var/run/utmp
root     pts/0        192.168.31.179   Mon Sep 26 20:29   still logged in

4)链接用户过多时,可使用 fuser 命令断开指定用户链接

[root]# fuser -k /dev/pts/0
/dev/pts/0:           1545

5)只显示5行

 last -n 5

lastd:用户登录失败

显示最近的用户登录失败信息

实际上是读取 /var/log/btmp的内容,整理后展示出来。

参数:

  • -n 显示几行

实例

1)lastb 等价于 last -f /var/log/btmp

[root]# lastb
root     ssh:notty    192.168.31.179   Sat Sep 24 21:52 - 21:52  (00:00)
[root]# last -f /var/log/btmp
root     ssh:notty    192.168.31.179   Sat Sep 24 21:52    gone - no logout

lastlog:最后一次登录

显示用户最后一次登录的信息

文件位置:/var/log/lastlog

[root]# lastlog
用户名           端口     来自             最后登陆时间
root             pts/0    192.168.31.179   一 9月 26 20:29:35 +0800 2022
bin                                        **从未登录过**

ps:查看进程

ps(process status)显示当前进程的状态

参数:

  • -e 显示全部进程
  • -f 显示全部列
  • -u 指定用户

1)查看进程(常用)

[root]# ps -ef
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 20:28 ?        00:00:03 /usr/lib/systemd/systemd

字段说明:

  • UID:执行进程的用户id
  • PID:进程id
  • PPID:父进程id(没有父进程则称为僵尸进程)
  • C:cpu的占用率
  • STIME:进程的启动时间
  • TTY:终端设备(?表示该进程不是由终端设备发起)
  • CMD:进程名称或路径

2)过滤进程(查看httpd进程是否运行)

 ps -ef | grep httpd

3)显示指定用户的进程

 ps -u root

top:动态查看进程

参数:

  • P键 按照CPU使用率降序
  • M键 按照内存降序
  • q键 退出

核心字段:

  • S:进程运行状态(S表示睡眠,R表示运行)
  • %CPU:cpu占用率
  • %MEM:内存占用率
  • COMMAND:进程名称或路径

kill:结束进程

1)根据进程PID结束进程(先用ps查看进程PID)

 ps -ef | grep httpdkill 20867

2)根据进程名结束进程

killall httpd

3)彻底结束进程

kill -9 123456

free:查看内存

作用:查看系统内存的使用情况。

参数:

  • -h 显示单位

实例

1)查看内存

[root]# free -htotal        used        free      shared  buff/cache   available
Mem:           972M        222M        594M        7.8M        155M        606M
Swap:          2.0G          0B        2.0G

字段解释:

  • total:物理内存总大小
  • used:已使用内存
  • free:剩余内存
  • shared:多个进程共享使用的内存
  • buff/cache:缓存使用的内存
  • available:还可以使用的内存
  • Mem:内存使用情况
  • Swap:交换空间使用情况

lsmod:显示系统模块

显示已经加载到内核中的系统模块的状态信息

/proc/modules 文件保存系统模块信息

实例

1)查看系统是否安装了某个模块

[root]# lsmod | grep drm
drm_kms_helper        186531  1 vmwgfx

字段解释:

  • 第一列:模块名
  • 第二列:模块大小
  • 第三列:依赖模块的个数
  • 第四列:依赖模块的内容

clear:清屏

本质上是隐藏而不是删除,往上滑动鼠标仍然可以看到被“清除”的内容

vlock:锁屏

离开时,可使用此命令锁屏,输入密码后解锁。

reboot:重启

shutdown:关机

shutdown -h now      # 立刻关机
shutdown -h 10      # 10分钟后关机
shutdown -r now     # 立刻重启
shutdown -c         # 取消关机
Ctrl + c           # 取消关机

七、压缩备份

zip

压缩为 xxx.zip,保留源文件

实例

1)压缩为 zip 文件

zip a.zip a.txt          # 压缩文件
zip a a.txt             # 可省略后缀名
zip -r aaa.zip aaa/     # 压缩文件夹

2)解压zip文件

unzip aaa.zip

bzip2

压缩为 xxx.bz2,使用新的压缩算法,效率更高,默认不保留源文件

参数:

  • -k 保留源文件
  • -d 解压缩

实例

1)压缩 a.txt 文件为 a.txt.bz2

bzip2 a.txt      # 默认不保留源文件
bzip2 -k a.txt  # 保留源文件

2)解压缩 a.txt.bz2

bzip2 -d a.txt.bz2
bunzip2 a.txt.bz2

gzip

压缩为 xxx.gz,不保留源文件,只压缩文件,不压缩目录

实例

1)压缩为 gz 文件

gzip a.txt

2)解压 gz 文件

gzip -d a.txt.gz
gunzip a.txt.gz

tar

常用于备份,和还原备份文件,保留源文件

参数:

  • -c 建立备份文件
  • -x 还原备份文件
  • -z 指定gzip处理备份文件
  • -v 显示执行过程
  • -f 指定备份文件

实例

1)压缩 a.txt 为 a.tar.gz

tar -czvf a.tar.gz a.txt

2)解压 a.tar.gz

tar -xzvf a.tar.gz

八、防火墙

centos 6.5使用iptables防火墙

centos 7.x使用Firewalld防火墙

Iptables

开启/关闭/重启防火墙

 service iptables startservice iptables stopservice iptables restart

查看防火墙状态/规则

 service iptables statusiptables -Liptables -L -n

开放80端口

 iptables -I INPUT -p tcp --dport 80 -j ACCEPT

添加规则后需要保存,否则重启防火墙后规则会失效

 /etc/init.d/iptables save

Frewalld

开启/关闭/重启防火墙

 systemctl start firewalldsystemctl stop firewalldsystemctl restart firewalld

查看防火墙状态,active(running)表示开启

 systemctl status firewalldfirewall-cmd --state

开放80端口(加载后生效)

 firewall-cmd --zone=public --add-port=80/tcp --permanentfirewall-cmd --reload

查看开放的端口

 firewall-cmd --zone=public --list-ports

关闭80端口(加载后生效)

 firewall-cmd --zone=public --remove-port=80/tcp --permanentfirewall-cmd --reload

九、服务

service:控制服务

开启、关闭、或重启服务

语法:

service 服务名 start/stop/restart

实例

1)开启http服务

 service httpd start

2)检查服务进程是否启动

 ps -ef | grep httpd

ntp:时间服务

NTP服务用来同步系统时间。

ntpd服务运行以后,先是每隔64秒与NTP服务器同步一次时间,根据时间的误差值逐渐调整自己的时间,误差值越小,同步的时间间隔就越大。

ntpd服务有一个自我保护机制:如果本机和NTP服务器的时间差距太大(比如15分钟),ntpd服务就不会同步时间,这样可以防止日志的时间差距过大,导致日志失去准确性。这时就需要手动同步时间。

1)启动时间同步服务

开启/关闭/重启ntp服务(永久性同步时间)

service ntpd start/stop/restart/status
systemctl start/stop/restart/status ntpd

如果提示not found,就下载ntp服务

 yum install ntp

如果之前安装过 ntpdate,就先删除

 yum remove ntpdate

查看ntp服务是否启动

ps -ef | grep ntp
service ntpd status
systemctl status ntpd

查看ntp服务与时间服务器通信状态

[root]# ntpstat
synchronised to NTP server (91.206.8.34) at stratum 3time correct to within 1123 mspolling server every 64 s

2)配置时间服务器

修改ntp服务的配置文件 /etc/ntp.conf

 vim /etc/ntp.conf

注释掉之前的配置,添加新的server

#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server ntp1.aliyun.com prefer
server 120.25.115.20

3)手动同步时间

执行一次,同步一次。

格式:ntpdate 时间服务器的域名或IP

[root]# ntpdate 120.25.115.20
[root]# ntpdate ntp1.aliyun.com
step time server 120.25.115.20 offset 54251318.932259 sec

如果提示未找到命令。。。就下载一个

 yum install ntpdate

提示;开启ntp服务时,该命令无法同步时间。

同步时间测试:

# 停止ntp服务
[root]# service ntpd stop
# 修改系统时间
[root]# date -s 2021-01-01
# 手动同步时间
[root]# ntpdate ntp1.aliyun.com
ntpdate[2443]: step time server 120.25.115.20 offset 54253311.209044 sec
# 验证时间是否同步
[root]# date

crontab:计划任务

crontab命令可以查看、编辑、删除计划任务。

参数:

  • -l (list)查看计划任务
  • -e 编辑计划任务
  • -r 删除所有计划任务
  • -u 指定用户

1)「查看」当前用户的计划任务。

[root]# crontab -l

2)「编辑」(增加/删除/修改)当前用户的计划任务

[root/]# crontab -e

在打开的文件中,可以编辑计划任务,在编辑之前,我们先了解一下计划任务的语法格式、时间规范和特殊符号。

计划任务语法格式:

  • 分 时 日 月 周 需要执行的命令
  • 以行区分任务,一行是一个计划任务

时间规范:

  • 分:分钟(0-59)
  • 时:小时(0-23)
  • 日:一个月的第几天(1-31)
  • 月:(1-12)
  • 周:星期几(0-6)

符号:

  • *: 表示每一个数字
  • -: 表示连续区间,比如:周1到周7每天执行一次(1-7)
  • /: 表示每多少个,比如:10分钟执行一次(*/10)
  • ,: 表示多个取值,比如:每天1点,3点,5点执行(1,3,5)

案例

1)每分钟执行一次命令(将当前时间输出到文件中)

*/1 * * * * date >> /home/text.txt

2)每两个小时重启一次 httpd 服务

0 */2 * * * /sbin/service httpd restart

3)每天7:50开启ssh服务

50 7 * * * /sbin/service sshd start

4)每月1号和15号检查/home磁盘

0 0 1,15 * * fsck /home

5)每周1到周5的3点执行一次命令

00 03 * * 1-5 date >> /home/a.txt

提示:

  1. 计划任务最小单位是分,不能执行每隔几秒执行一次的任务
  2. 命令中的路径必须是绝对路径,如/etc/xx
  3. 执行脚本需要在文件开头添加 #!/bin/sh 和一行空行

3)「删除」计划任务
此删除为删除当前用户的所有计划任务

如果只想删除某一条计划任务,可以使用编辑命令,删掉那一行计划任务。

[root]# crontab -l
*/1 * * * * date >> /home/text.txt
[root]# crontab -r
[root]# crontab -l
no crontab for root

Linux命令老是记不住?一篇文章帮你解决。Linux常用命令汇总相关推荐

  1. mysql 从库 问题_一篇文章帮你解决Mysql 中主从库不同步的问题

    写这篇文章是因为之前有一次删库操作,需要进行批量删除数据,当时没有控制好删除速度,导致产生了主从延迟,出现了一点小事故. 今天我们就来看看为什么会产生主从延迟以及主从延迟如何处理等相关问题. 坐好了, ...

  2. 用虚拟信用卡支付的时候经常出现交易失败、无法付款?一篇文章帮你解决这些问题

    经常会有一些新客户反馈使用虚拟信用卡支付的时候会出现很多问题,就会开始怀疑是不是虚拟卡有问题,但其实用实体卡也会出现这些问题的.海外支付为什么这么容易交易失败呢? 一.系统原因 1.缺少客户熟悉的支付 ...

  3. 电脑无法访问网页,但qq可以用?一篇文章帮你解决(非常详细)

  4. 一篇文章帮你搞定JVM中的堆

    文章目录 一篇文章帮你搞定JVM中的堆 堆的核心概述 堆的内存细分 设置堆内存大小与OOM OOM(OutOfMemory)举例 年轻代与老年代 图解对象分配过程 MinorGC,MajorGC,Fu ...

  5. 一篇文章让你解决sql报错check the manual that corresponds to your MySQL server version for the right syntax to

    一篇文章让你解决sql报错 反馈 因为这一个问题,找到了很多类似问题,你在看到这篇博客时,可能不是这个,但是一定是下面其中一个: Mysql错误:check the manual that corre ...

  6. Linux中强制结束一个进程的终极方法和其他常用命令

    Linux中强制结束一个进程的终极方法和其他常用命令 1.查进程 ps命令查找与进程相关的PID号: ps a 显示现行终端机下的所有程序,包括其他用户的程序. ps -A 显示所有程序. ps c ...

  7. 一篇文章带你了解Linux

    Linux 温馨提示,本篇文章阅读可能需要15分钟 Linux简介 Linux是一种开源的.免费的操作系统,操作系统最常见的就是微软的Windows操作系统,操作系统本身它也是一种软件. Window ...

  8. 小程序开发教程,字节跳动Android三面凉凉,一篇文章帮你解答

    开篇 说一下我大概的情况.渣本毕业,工作已经有快3年了,从高中就开始玩小破站.无论是学习还是日常放松都是在b站.大学主学的软件技术专业,所以,入职bilibili是我大学时期给自己定的小目标. 在学校 ...

  9. Java开发面试题及答案,开发8年的老Java才知道,一篇文章帮你解答

    一.Spring Cloud微服务概念定义 提起微服务,不得不提 Spring Cloud 全家桶系列,Spring Cloud 是一个服务治理平台,是若干个框架的集合,提供了全套的分布式系统解决方案 ...

最新文章

  1. Apple的LZF算法解析
  2. C 语言编程 — 结构化程序流的汇编代码与 CPU 指令集
  3. antd 动态添加表单_react Ant Design 动态生成表单,并带验证
  4. Linux的ext4文件系统学习笔记
  5. tcp四次挥手,为什么是四次?
  6. note_maven中的常用命令
  7. python的误差条形图的解释_python – Seaborn因子图自定义误差条
  8. 基于SpringBoot的在线学生请假管理系统的设计与实现毕业设计源码
  9. 11月 第4周 GitChat 话题排行榜
  10. win10蓝屏无法进入系统_WIN10系统进“吃鸡”蓝屏
  11. 2011 年11 月系统集成项目管理工程师上午考试(刘俊平老师)
  12. Delphi控件安装方法
  13. 【AS】Android stdio运行APP闪退或keeps stopping
  14. Docker_数据卷容器
  15. 树梅派应用25:宅男必备:配备电子纸屏幕的抽纸盒
  16. 拿什么拯救你、我的情人节
  17. MYSQL 回退数据
  18. Stream系列(十二) PartitioningBy方法使用
  19. 汽车ABS防抱死系统设计
  20. JPA 中对象 set 属性时自动保存

热门文章

  1. Bootstrap 面包屑导航(Breadcrumb)
  2. 【红楼梦诗词】葬花吟
  3. A-MPDU与A-MSDU各是什么意思
  4. 从titles表获取按照title进行分组,每组个数大于等于2,给出title以及对应的数目t。
  5. 英语单词记忆 词源法-思维导图 序
  6. io端口与ion内存
  7. Python爬虫——王者荣耀全皮肤拉取
  8. html [JS]随机密码生成[运维工具]
  9. 学习笔记(05):【中国PHP教育大牛高洛峰】亲授php教程-PHP常量的介绍
  10. 苹果MacBook电脑应用优化利器CleanMyMac X