linux操作系统

image-20240521151621611

第一章 初识LINUX

1.1 虚拟机

  • 什么是虚拟机?

    借助虚拟化技术,我们可以在系统中,通过软件:模拟计算机硬件,并给虚拟硬件安装真实的操作系统。这样就可以在电脑中,虚拟出一个出来的完整电脑。

image-20240521160402098

1.2 VMmare Workstation 安装

  • 安装步骤跳过

image-20240521184957221

  • 检查虚拟网卡(win+R 输入ncpa.cpl)

image-20240521185053960

1.3 vm安装centos7

  1. 创建新的虚拟机
  2. 简易安装向导
  3. 选择安装程序光盘映像
  4. 设置用户名密码
  5. 设置虚拟机名称和位置
  6. 指定磁盘容量大小

image-20240521192735117

  1. 启动虚拟机

image-20240521194114204

image-20240521194233871

1.4远程连接LINUX

  1. 操作系统的使用形式
  • 图形化界面
  • 命令行方式
  1. FinalShell

我们使用VMware可以得到Linux虚拟机,但是在VMware中操作Linux的命令行页面不太方便,主要是:

  • 内容的复制、粘贴跨越VMware不方便

  • 文件的上传、下载跨越VMware不方便

  • 也就是和Linux系统的各类交互,跨越VMware不方便

我们可以通过第三方软件,FinalShell, 远程连接到Linux操作系统之上。

  1. 安装finalshell(步骤省略)

image-20240521201547820

  1. FinalShell连接Linux
  • 虚拟机命令行输入ifconfig找到IP地址:

image-20240521202253864

  • finalshell中输入ip、用户名和密码连接linux

image-20240521202648883

1.5 WSL(Windows Subsystem for Linux)

  1. 为什么使用wsl?

WSL作为Windows10系统带来的全新特性,正在逐步颠覆开发人员既有的选择。

  • 传统方式获取Linux操作系统环境,是安装完整的虚拟机,如VMware.
  • 使用WSL,可以以非常轻量化的方式,得到Linux系统环境

目前,开发者正在逐步抛弃以虚拟机的形式获取Linux系统环境,而在逐步拥抱WSL环境。

所以,为什么要用WSL,其实很简单:

  • 开发人员都在用,大家都用的,我们也要学习
  • 实在是太方便了,简单、好用、轻量化、省内存
  1. 什么是wsl

WSL: Windows Subsystem for Linux,是用于Windows系统之上的Linux子系统。

作用很简单,可以在Windows系统 中获得Linux系统环境,并完全直连计算机硬件,无需通过虚拟机虚拟硬件

  1. wsl部署

控制面板==》程序==》程序和功能==》启用和关闭windows功能

image-20240521204922604

微软商店下载Ubuntu,安装完成设置用户名和密码:

image-20240523185405413

安装windows Terminal:

image-20240523193719582

1.6 虚拟机快照

VMware,虚拟机( Workstation和Funsion)支持为虛拟机制作快照。
通过快照将当前虚拟机的状态保存下来,在以后可以通过快照恢复虚拟机到保存的状态。

相当于游戏存档

  • 在VMware Workstation PRO 中制作并还原快照

image-20240523195445512

还原快照:

image-20240523195718289


第二章 Linux基础命令

2.1 Linux目录结构

Linux的目录结构是一个树型结构
Windows系统可以拥有多个盘符,如C盘、D盘、E盘
Linux没有盘符这个概念,只有一个根目录/所有文件都在它下面.

image-20240523201720219

Linux路径描述方式

  • 在Linux系统中,路径之间的层级关系,使用/来表示
  • 在Windows系统中,路径之间的层级关系,使用:\来表示

2.2 Linux命令入门

2.2.1linux命令基础

  • 命令行:即Linux终端(Terminal),是一种命令提示符页面。以纯“字符”的形式操作系统,可以使用各种字符化命
    令对系统发出操作指令。

  • 命令:即Linux程序。一个命令就是一一个Linux的程序。命令没有图形化页面,可以在命令行(终端中)提供字符化的反馈。

Linux命令通用格式:
command [-options] [parameter]

command:命令本身

options:[可选] 命令的一些选项,可以通过选项控制命令的行为细节

parameter:[可选] 命令的参数,多用于命令的指向目标等

  • ls命令入门

ls命令语法细节:

ls [-a -l -h] Linux路径

  • -a -l -h是可选的选项
  • Linux路径 是此命令可选的参数

当不使用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容

image-20240523204123703

  • ls命令的参数和选项
  • -a: all的意思,即列出全部文件(包含隐藏文件、文件夹)

image-20240523205223536

图中以.开头的,表示Linux系统的隐藏文件/文件夹(只要以.开头,就能自动隐藏)

  • -l:表示以列表(竖向排列)的形式展示内容,并展示更多信息

image-20240523205708763

选项可以组合使用,如:

  • ls -l -a
  • ls -la
  • ls -al

上述三种写法,表示同时应用-l 和 -a 的功能

除了选项本身可以组合使用以外,选项和参数也可以一起使用,如:

  • ls -al /

以上命令表示以列表形式展示根目录下全部文件

  • -h:表示以易于阅读的形式展示且必须和-l一起使用

image-20240523210949049

上图可以看出文件大小不只有数值,还带上了单位

2.2.2目录切换相关命令(cd/pwd)

  • cd命令

当Linux终端(命令行)打开的时候,会默认以用户的HOME目录作为当前的工作目录
我们可以通过cd命令,更改当前所在的工作目录。
cd命令来自英文: Change Directory

语法: cd [linux路径]

  • cd命令无需选项,只有参数,表示要切换到哪个目录下
  • cd命令直接执行,不写参数,表示回到用户的HOME目录

image-20240523212121641

  • pwd命令

通过ls来验证当前的工作目录,其实是不恰当的。
我们可以通过pwd命令,来查看当前所在的工作目录。
pwd命令来自: Print Work Directory

语法:pwd

  • pwd命令,无参数,无选项

image-20240523212512982

2.2.3 绝对路径、相对路径和特殊路径符

  • 绝对路径:以根目录为起点,描述路径的一种写法,路径描述以/开头

    cd /home/weisiyang/Desktop

image-20240523214139737

  • 相对路径:以当前目录为起点,描述路径的一种写法,无需以/开头

    cd Desktop

image-20240523214233772

  • 特殊路径符
  • .:表示当前目录,比如cd ./Desktop 表示切换到当前目录下的Desktop目录内,和cd Desktop效果一致
  • ..: 表示上一级目录,比如:cd .. 即可切换到上一级目录,cd ../.. 切换到上二级的目录
  • ~ :表示HOME目录,比如:cd ~ 即可切换到HOME目录或cd ~/Desktop,切换到HOME内的Desktop目录

2.2.4 mkdir命令

通过mkdir命令可以创建新的目录(文件夹)
mkdir来自英文: Make Directory

语法: mkdir [-p] linux路径

  • 参数必填,表示Linux路径,即要创建的文件夹的路径,相对路径或绝对路径均可
  • -p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

image-20240523221007377

-p选项的使用:

image-20240523221349491

2.2.5 文件操作命令

  • touch命令

可以通过touch命令创建文件

语法:touch linux路径

touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用

image-20240523222238090

  • cat命令

cat命令用于查看文件内容

语法:cat linux路径

cat同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用

image-20240523222931714

  • more命令

more命令同样是用来查看文件内容的,但与cat不同的是

  • cat是直接将内容全部显示出来
  • more支持翻页,如果文件内容过多,可以一页页的展示

语法:more linux路径

同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用

linux系统内置有一个文件,路径为:/etc/services,可以通过more命令查看

  • 查看过程中,空格翻页
  • q键退出

image-20240523223631747

  • cp命令

cp命令可以使用于复制文件、文件夹,cp命令来自英文单词copy

语法:cp [-r] 参数1 参数2

  • -r选项,可选,用于复制文件夹使用,表示递归
  • 参数1,Linux路径,表示被复制的文件或文件夹
  • 参数2,Linux路径,表示要复制去的地方

image-20240523224358635

  • mv命令

mv命令可以用于移动文件\文件夹,mv命令来自英文单词: move

语法:mv 参数1 参数2

  • 参数1, Linux路径,表示被移动的文件或文件夹
  • 参数2, Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在

image-20240523225050003

  • rm命令

rm命令可用于删除文件、文件夹
rm命令来自英文单词: remove

语法:rm [-r -f] 参数1 参数2参数n

  • 同cp命令-样, -r选项用于删除文件夹

  • -f表示force,强制删除(不会弹出提示确认信息)

    • 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
    • 所以一-般普通用户用不到-f选项
      参数1、参数2、…… 参数N表
  • 参数1、参数2….参数:要删除的文件或文件夹路径,按照空格隔开

image-20240523230008996

rm命令支持通配符*,用来模糊匹配

  • 符号*表示通配符,即匹配任意内容(包含空),示例:
    • test*, 表示匹配任何以test开头的内容
    • *test,表示匹配任何以test结尾的内容
    • *test*, 表示匹配任何包含test的内容

image-20240523230347820

  • which命令

我们在前面学习的Linux命令,其实它们的本体就是一个个的二进制可执行程序。
和Windows系统中的.exe文件,是一个意思。
我们可以通过which命令,查看所使用的- -系列命令的程序文件存放在哪里

语法:which 要查找的命令

image-20240531194029752

  • find命令

在Linux系统中,我们可以通过find命令去搜索指定的文件。

语法:find 起始路径 -name 被查找文件名

(支持通配符*查找)

为了确保后续演示,拥有最大的权限,可以在整个系统完成搜索
我们可以切换到root用户以获得管理员权限
执行命令:

su - root

输入密码

image-20240531195320215

语法: find 起始路径 -size +|-n[kMG]

  • +、-表示大于和小于
  • n表示大小数字
  • kMG表示大小单位,k(小写字母)表示kb, M表示MB, G表示GB .

image-20240531200302916

  • grep命令

可以通过grep命令,从文件中通过关键字过滤文件行。

语法:grep [-n] 关键字 文件路径

  • 选项-n,可选,表示在结果中显示匹配的行的行号。
  • 参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用 ” ” 将关键字包围起来
  • 参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口

先创建一个weisiyang.txt,输入内容用于测试:

image-20240531201516411

测试:

image-20240531202342868

  • wc命令

可以通过wc命令统计文件的行数、单词数量等

语法:wc [-c -m -l -w] 文件路径

  • 选项,-c, 统计bytes数量
  • 选项,-m,统计字符数量
  • 选项,-l, 统计行数
  • 选项,-W,统计单词数量
  • 参数,文件路径,被统计的文件,可作为内容输入端口

不带参数选项,默认显示行数、单词数、byte数和文件名:

image-20240531203025186

带参数选项:

image-20240531203204416

  • 管道符

符号:|

含义:将管道左边命令的结果,作为右边命令的输入

image-20240531203727174

如上图:

  • cat itheima.txt的输出结果(文件内容)
  • 作为右边grep命令的输入(被过滤文件)

嵌套使用:

image-20240531204624908

  • echo命令

echo命令可以在命令行内输出指定内容

语法: echo 输出内容

  • 无需选项,只有一个参数表示要输出的内容

image-20240531210804690

反引号 `:

反引号(通常也称作飘号)与echo命令搭配可以将包裹的内容作为命令进行执行,而非普通字符

未使用反引号:

image-20240531211232501

使用反引号:
image-20240531211950446

注意:是`而不是

重定向符

  • >:将左侧命令的结果,覆盖写入到符号右侧指定的文件中
  • >>:将左侧命令的结果,追加写入到符号右侧指定的文件中

image-20240531212846844

  • tail命令

使用tail命令,可以查看文件尾部内容,跟踪文件的最新更改

语法:tail [-f -num] linux路径

  • 参数,Linux路径,表示被跟踪的文件路径
  • 选项,-f,表示持续跟踪(follow)
  • 选项, -num(整数不是单词),表示,查看尾部多少行,不填默认10行

image-20240602193921815

-f参数选项持续跟踪文件尾部内容的更改:

image-20240602194353977

2.3 vi/vim编辑器

​ vi\vim是visual interface的简称,是Linux中最经典的文本编辑器
​ 同图形化界面中的文本编辑器一样, vi是命令行下对文本文件进行编辑的绝佳选择。
vim是vi的加强版本,兼容vi 的所有指令,不仅能编辑文本,而且还具有shell程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性

2.3.1 vi/vim三种工作方式

  • 命令方式(command mode)

    命令模式下,所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能。
    此模式下,不能自由进行文本编辑。

  • 输入模式(insert mode)

    也就是所谓的编辑模式、插入模式。
    此模式下,可以对文件内容进行自由编辑。

  • 底线命令模式(last line mode)

    以:开始,通常用于文件的保存、退出。

image-20240602200011948

2.3.2 命令模式

  1. 终端命令行进入命令模式:

语法: vi /vim linux路径

  • 如果文件路径表示的文件不存在,那么此命令会用于编辑新文件
  • 如果文件路径表示的文件存在,那么此命令用于编辑已有文件
  1. 命令模式下有一般指令

移动光标:

命令 含义
gg 光标移动到文档头部
G 光标移动到文档尾部
ngg 光标移动到第n行头部
n+ 光标向下移动n行
n- 光标向上移动n行
0 光标移动到当前行行首
$ 光标移动到当前行行尾
w 光标移动到下一个字的开头
b 光标移动到上一个字的开头
fx 光标移动到当前行下一个字母x的位置
h 光标向左移动一个字符。等于方向键←
j 光标向下移动一个字符。等于方向键↓
k 光标向上移动一个字符。等于方向键↑
l 光标向右移动一个字符。等于方向键→

复制粘贴:

命令 含义
yy 复制当前行
nyy 复制当前行以及下面的n-1行
p 粘贴

删除:

命令 含义
x 删除光标后一个字符
X 删除光标前一个字符
nx 删除光标后n个字符
nX 删除光标前n个字符
d0 从光标处删除到行首(delete)
d$ 从光标处删除到行尾
dG 从光标当前行开始,向下全部删除
dgg 从光标当前行开始,向上全部删除
dd 删除光标所在行
ndd 删除光标所在行以及后面n-1行

撤销:

命令 含义
u 撤销上一步操作
  1. 命令模式进入编辑模式:
命令 含义
i 光标前插入
a 光标后插入
I 光标当前行头部插入
A 光标当前行结尾插入
o 光标下一行插入
O 光标上一行插入

2.3.3 底线命令模式

搜索查找:

命令 模式
/ 进入搜索模式
/str 从光标处向文件尾部搜索,查找str字符串
?str 从光标处向文件首部搜索,查找str字符串
n 向下继续搜索(next)
N 向上继续搜索

替换:

命令 含义
:s/str1/str2/g 将当前行中所有str1,均用str2替换
:s/str1/str2/gc 将当前行中所有str1,均用str2替换,需要确认
:%s/str1/str2/g 将文件中所有str1,均用str2替换
:%s/str1/str2/gc 将文件中所有str1,均用str2替换,需要确认

退出和其他:

命令 含义
:q 退出(quit)
:q! 强制退出
:wq 保存文件并退出
:w 将更改内容写入文件
:set nu 显示行号
:set paste 设置粘贴模式

第三章 Linux用户和权限

3.1认知root用户

无论是Windows. MacOS、Linux均采用多用户的管理模式进行权限管理。

  • 在Linux系统中,拥有最大权限的账户名为:root(超级管理员)

  • 而在前期,我们一直使用的账户是普通的用户: weisiyang

  • su命令exit命令

su命令就是用于账户切换的系统命令,其来源英文单词: Switch User

语法:su [-] [用户名]

  • - 符号是可选的,表示是否在切换用户后加载环境变量
  • 参数:用户名,表示要切换的用户,用户名也可以省略,省略表示切换到root
  • 切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:ctrl + d

image-20240629165117019

  • sudo命令

我们可以使用sudo命令,为普通的命令授权,临时以root身份执行。

语法:sudo 其他命令

  • 在其它命令之前,带上sudo,即可为这一条命令临时赋予root授权
  • 但是并不是所有的用户,都有权利使用sudo,我们需要为普通用户配置sudo认证

为普通用户配置sudo认证

  • 切换到root用户,执行visudo命令,会自动通过vi编辑器打开: /etc/sudoers

  • 在文件末尾添加:

  • 用户名 ALL=(ALL) ALL

  • 用户名 ALL=(ALL) NOPASSWD :ALL

image-20240629192153779

  • :wq保存

3.2 用户、用户组管理

  • 用户、用户组

Linux系统中:

  • 可以配置多个用户
  • 可以配置多个用户组
  • 用户可以加入多个用户组中

Linux中关于权限的管控级别有2个级别,分别是:

  • 针对用户的权限控制
  • 针对用户组的权限控制
  • 用户组管理

1.创建用户组

语法: groupadd 用户组名

2.删除用户组

语法:groupdel 用户组名

  • 用户管理

1.创建用户

语法:useradd [-g -d] 用户名

  • 选项: -g指定用户的组,不指定-g, 会创建同名组并自动加入,指定-g需要组已经存在,如已存在同名组,必须使用-g
  • 选项: -d指定用户HOME路径, 不指定,HOME目录默认在: /home/用户名

image-20240629214636861

image-20240629214844751

2.删除用户

语法:userdel [-r] 用户名

选项: -r, 删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留

image-20240629215058920

3.查看用户所属组

语法:id [用户名]

参数:用户名,被查看的用户,如果不提供则查看自身

image-20240629215250677

image-20240629215326378

4.修改用户所属组

语法:usermod -aG 用户组 用户名

将指定用户加入指定用户组

image-20240629215840994

  • getent命令

gentent命令可以查看当前系统中有哪些用户

语法:getent passwd

image-20240629220235029

上图中:密码(x):用户id组id:描述信息:HOME目录:执行终端(默认bash)

gentent也可以查看系统中的用户组

语法:getent group

image-20240629220727106

上图中:组名称:组认证(显示为x):组id

3.3查看权限控制

  • 认知权限信息

image-20240629221108120

第一列:表示文件、文件夹的权限控制信息

第三列:表示文件、文件夹所属用户

第四列:表示文件、文件夹所属用户组

image-20240629221623856

权限细节分为10位:

第1位:-dl:分别表示文件、文件夹、软链接

第2-4位(用户权限):r-,w-,x-

第5-7位(用户组权限):r-,w-,x-

第8-10位(其他用户权限):r-,w-,x-

image-20240629223006062

3.4修改权限控制

  • chmod命令

只有文件、文件夹的所属用户或root用户可以修改。

语法:chmod [-R] u=权限,g=权限,o=权限 文件或文件夹

选项:-R,对文件夹内的全部内容应用同样的操作

image-20240629223754886

权限的数字序列

权限可以用3位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其它用户权限。

数字 含义 原表示
0 (000) 无权限
1 (001) 有x权限 –x
2 (010) 有w权限 -w-
3 (011) 有w和x权限 -wx
4 (100) 有r权限 r–
5 (101) 有r和x权限 r-x
6 (110) 有r和w权限 rw-
7 (111) 有全部权限 rwx
  • chown命令

使用chown命令,可以修改文件、文件夹的所属用户和用户组,需要root权限

语法:chown [-R] [用户] [:] [用户组] 文件或文件夹

  • 选项, -R,同chmod,对文件夹内全部内容应用相同规则
  • 选项,用户,修改所属用户
  • 选项,用户组,修改所属用户组
  • :用于分隔用户和用户组

image-20240629231322800

第四章 linux实用操作

4.1快捷键

  • ctrl + c 强制停止

强制停止某些程序的运行

命令输入错误,退出当前输入

  • ctrl + d 退出或登出

退出账户的登录

退出某些程序的专属页面

  • 历史命令搜索

1.history:

可以通过history命令查看历史输入过的命令

image-20240630193826598

  1. !+命令部分前缀:

可以自动匹配符合前缀的最近执行过的命令

image-20240630194432974

3.ctrl + r ,输入内容:

使用输入的内容去匹配历史命令

  • 回车键可以直接执行
  • 键盘左右键,可以得到此命令(不执行)

image-20240630195437026

  • 光标移动
快捷键 含义
ctrl+a 光标移动到开头
ctrl+e 光标移动到结尾
ctrl+ 向左移动一个单词
ctrl+ 向右移动一个单词
  • 清屏

1.快捷键ctrl+l

2.命令clear

4.2软件安装

操作系统的两种安装软件的方法:

1.通过下载安装包自行安装

2.系统的应用商店安装

  • yum软件安装(for centos)

yum: RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题。

语法:yum [-y] [install | remove | search] 软件名称

  • 选项:-y,自动确认,无需手动确认安装或卸载过程
  • install:安装
  • remove:卸载
  • search:搜索

安装:

image-20240630202437189

卸载:

image-20240630202517485

查找:

image-20240630202719878

  • apt软件安装(for ubuntu)

ubuntu系统软件安装包为.deb文件,使用apt进行包管理

语法:apt [-y] [install | remove | search] 软件名称

安装:

image-20240630205239770

4.3 systemctl命令

Linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动、停止、开机自启.
能够被systemctl管理的软件,一般也称之为:服务

语法:systemctl start | stop | status | enable | disable 服务名

  • start:启动
  • stop:停止
  • status:状态查看
  • enable:开启开机自启动
  • disable:关闭开机自启动

系统内置服务,如:

  • NetworkManager,主网络服务
  • network,副网络服务
  • firewalld,防火墙服务
  • sshd, ssh服务( FinalShell远程登录Linux使用的就是这个服务)

image-20240630205740801

4.4软链接

在系统中创建软链接,可以将文件、文件夹链接到其它位置。
类似Windows系统中的快捷方式.

语法:ln -s 参数1 参数2

  • -s选项,创建软连接
  • 参数1:被链接的文件或文件夹
  • 参数2:要链接去的目的地

image-20240630210933385

4.5日期、时区

  • date命令

通过date命令可以在命令行中查看系统的时间

语法:date [-d] [+格式化字符串]

  • -d按照给定的字符串显示日期, -般用于日期计算
  • 格式化字符串:通过特定的字符串标记,来控制显示的日期格式
    • %Y
    • %y 年份后两位数字(00….99)
    • %m 月 份(01….12)
    • %d 日 (01…..31)
    • %H 小时(00…..23)
    • %M 分钟(00……59)
    • %S 秒(00…..60)
    • %s 自1970-01-01 00000UTC到现在的秒数

image-20240630213050357

-d选项的使用:

时间标记:

  • year
  • month
  • day
  • hour
  • minute
  • second

image-20240630213453229

  • 修改Linux时区

1.删除etc/localtime

2.创建新的软链接,将/usr/zoneinfo/Asia/Shanghai软链接到/etc/localtime

image-20240630214117736

  • ntp程序

ntp程序可以自动校准时间

安装程序并设置开机自启动即可

手动校准:

语法:ntpdate -u ntp服务器

image-20240630215135527

4.6IP地址、主机名

  • 查看本机IP地址

IP地址:IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异

语法:ifconfigipconfig

image-20240630215707609

  • 主机名

每一台电脑除了对外联络地址(IP地址)以外,也可以有一-个名字,称之为主机名
无论是Windows或Linux系统,都可以给系统设置主机名

  1. 查看主机名

语法:hostname

image-20240630215952430

  1. 修改主机名

语法:hostnamectl set-hostname 主机名 新主机名

image-20240630220559481

  • 虚拟机配置固定IP地址

1.vmware中配置IP地址和网段

编辑==>虚拟网路编辑器==>更改设置==>选择vmnet8并修改IP地址和网段==>nat设置==>设置网关==>确定应用

image-20240701231748520

image-20240701231918438

image-20240701233948406

2.Linux中修改固定IP

使用vim编辑etc/sysconfig/network-scripts/ifcfg-ens33

编辑结果如下:

image-20240701233535181

然后使用systemctl restart network重启网络,修改ssh连接配置并连接:

image-20240701233716737

image-20240701234328361

4.7网络传输

  • ping命令

可以通过ping命令,检查指定的网络服务器是否是可联通状态

语法:ping [-c num] ip或主机名

  • 选项: -C,检查的次数,不使用-C选项,将无限次数持续检查
  • 参数:ip或主机名,被检查的服务器的ip地址或主机名地址

image-20240701234813434

  • wget命令

wget是非交互式的文件下载器,可以在命令行内下载网络文件

语法:wget [-b] url

  • 选项:-b,可选,(backend)后台下载,会将日志写入
  • 当前工作目录的wget-log文件
    参数:url,’下载链接
  • curl命令

curl可以发送http网络请求,可用于:下载文件、获取信息等

语法:curl [-O] url

  • 选项:-O,用于下载文件,当url是下载链接时,可以使用此选项保存文件
  • 参数:url,要发起请求的网络地址

image-20240701235512804

  • 端口

端口,是设备与外界通讯交流的出入口。端口可以分为:物理端口和虛拟端口两类

  • 物理端口:又可称之为接口,是可见的端口,如USB接口, RJ45网口, HDMI端口
  • 虚拟端口:是指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用的

查看端口占用

  1. 查看IP的端口占用

使用yum安装nmap

命令: nmap 被查看的ip

image-20240702001615674

  1. 查看指定端口占用

安装net-tools

命令:netstat -anp | grep 端口号

image-20240702002846319

4.8进程管理

  • 进程

程序运行在操作系统中,是被操作系统所管理的。.
为管理运行的程序,每一个程序在运行的时候,便被操作系统注册为系统中的一个:进程
并会为每一个进程都分配一一个独有的:进程ID (进程号)

  • 查看进程

可以通过ps命令查看Linux系统中的进程信息

语法:ps [-e -f]

  • 选项: -e,显示出全部的进程
  • 选项: -f,以完全格式化的形式展示信息(展示全部信息)

一般来说,固定用法就是: ps -ef列出全部进程的全部信息

image-20240702214523291

  • UID:进程所属的用户ID
  • PID:进程的进程号ID
  • PPID:进程的父ID(启动此进程的其它进程)
  • C:此进程的CPU占用率(百分比)
  • STIME:进程的启动时间
  • TTY:启动此进程的终端序号,如显示?,表示非终端启动
  • TIME:进程占用CPU时间
  • CMD:进程对应的名称或启动路径或启动命令
  • 管道符过滤查看指定进程

语法: ps [-e -f] | grep 指定进程或名称

image-20240702215500140

  • 关闭进程

语法:kill [-9] 进程id

选项: -9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。

image-20240702215839471

4.9 主机状态

  • 查看系统资源占用

可以通过top命令查看CPU、内存使用情况,类似Windows的任务管理器
默认每5秒刷新一次,

语法:top [-p | -d | -c | -n | -b | -i | -u]

  • -p只显示某个进程的信息
  • -d 设置刷新时间,默认是5s
  • -c显示产生进程的完整命令,默认是进程名
  • -n 指定刷新次数,比如top -n 3,刷新输出3次后退出
  • -b 以非交互非全屏模式运行,以批次的方式执行top,一般配合-n指定输出几次统计信息,将输出重定向到指
    定文件,比如top -b -n 3 > /tmp/top. tmp
  • -i不显示任何闲置 (idle) 或无用(zombie) 的进程
  • -u查找特定用户 启动的进程

q ctrl+ c退出

image-20240702220501140

上图详解:

第一行:top:命令名称,22:00:45:当前系统时间,up 10:06:启动了10小时6分钟,2 user:2个用户登录,load :1、5、15分钟负载

第二行:Tasks:168个进程,1 runnning:一个进程在运行,167 sleeping:167个进程休眠,0个停止进程,0个僵尸进程

第三行:*%Cpu(s):cpu使用率,us*:用户cpu使用率,sy:系统cpu使用率,ni:高优先级进程占用cpu时间百分比,id:空闲cpu率,wa:IO等待cpu占用率,hi:cpu硬件中断率,si:cpu软件中断率,st:强制等待占用cpu率

第四、五行:

KiB Mem:物理内存,KiB Swap:虚拟内存(交换空间)

  • PID:进程id
  • USER:进程所属用户
  • PR:进程优先级,越小越高
  • NI:负值表示高优先级,正表示低优先级
  • VIRT:进程使用虚拟内存,单位KB
  • RES:进程使用物理内存,单位KB
  • SHR:进程使用共享内存,单位KB
  • S:进程状态(S休眠, R运行, Z僵死状态,N负数优先级, 1空闲状态)
  • %CPU:进程占用CPU率
  • %MEM:进程占用内存率.
  • TIME+:进程使用CPU时间总计,单位10毫秒
  • COMMAND:进程的命令或名称或程序文件路径

top交互式选项

按键 功能
h 显示帮助信息
c 显示产生进程完整命令
f 选择需要展示的信息列
M 根据驻留内存(RES)大小排序
P 根据CPU使用百分比大小排序
T 根据时间/累计时间进行排序
E 切换顶部内存显示单位
e 切换进程内存显示单位
l 切换显示平均负载和启动时间信息
i 不显示闲置或无用进程
t 切换显示CPU状态信息
m 切换显示内存信息
  • 磁盘信息监控

1.df命令查看硬盘的使用情况

语法: df [-h]

选项: -h,以更加人性化的单位显示

image-20240702224316354

2.iostat命令查看CPU、磁盘的相关信息

语法:iostat [-x] [num1] [num2]

-x:显示更多信息

num1:刷新间隔

num2:刷新次数

image-20240703001815091

  • 网络状态监控

可以使用sar命令查看网络的相关统计

语法:sar -n DEV num1 num2

-n:查看网络

DEV:查看网络接口

num1:刷新间隔

num2:刷新次数

image-20240703002408107

IFACE:本地网卡接口的名称出
rxpck/s:每秒钟接受的数据包
txpck/s:每秒钟发送的数据包
rxKB/S:每秒钟接受的数据包大小,单位为KB
txKB/S:每秒钟发送的数据包大小,单位为KB
rxcmp/s:每秒钟接受的压缩数据包
txcmp/s:每秒钟发送的压缩包
rxmcst/s:每秒钟接收的多播数据包

4.10环境变量

环境变量是操作系统(Windows.Linux、Mac)在运行的时候,记录的-些关键性信息,用以辅助系统运行。
在Linux系统中执行:env命令即可查看当前系统中记录的环境变量

image-20240703003500489

  • 环境变量PATH

image-20240703003755371

PATH记录了系统执行任何命令的搜索路径

上图记录了,执行命令时会在目录中搜索程序本体

/usr/local/bin

/usr/bin:/usr/local/sbin

/usr/sbin

/home/weisiyang/.local/bin

/home/weisiyang/bin

  • $ 符号

在Linux系统中,$符号被用于取”变量”的值。

如: echo $PATH

image-20240703005841795

  • 自行设置环境变量
  1. 临时设置

语法:export key (变量名)= value(变量值)

image-20240704190518125

  1. 永久生效的变量
  • 当前用户环境变量:~/.bashrc文件中配置
  • 所有用户环境变量:/etc/profile文件中配置

配置完后使用source 配置文件,使变量生效,或者重启ssh连接工具

当前用户变量配置:

image-20240704191841276

image-20240704191844167

所有用户变量配置:

image-20240704192500029

  • 自定义环境变量PATH

1.创建测试文件

image-20240704193745047

2.添加环境变量

临时修改PATH:

语法:export PATH=$PATH:要添加的路径

永久生效:

在用户环境变量文件(~/.bashrc)中或系统环境变量中(/etc/profile)追加

export PATH=$PATH:要添加的路径

image-20240704194645461

4.11上传和下载

1.图形化窗口

  • finallshell使用底部文件窗口上传和下载
  • xshell可以使用同系列程序xftp进行上传和下载

2.rz、sz命令

rz、sz命令需要安装,可以通过: yum -y install lrzsz,即可安装。

上传:输入rz,会自动打开一个文件窗口,选择文件即可上传

下载:输入sz 要下的文件,finalshell会自动下载到桌面的/fsdownload中,xshell则是先选择要下载到的文件在开始下载

4.12压缩、解压

  • tar命令

Linux和Mac系统常用有2种压缩格式,后缀名分别是:

  • tar, 称之为tarball,归档文件,即简单的将文件组装到一 个.tar的文件内,并没有太多文件体积的减少,仅仅是简单
    的封装

  • gz,也常见为.tar.gz, gzip格式压缩文件,即使用gzip压缩算法将文件压缩到- 一个文件内,可以极大的减少压缩后的

语法:tar [-c -v -x -f -z -C] 参数1….参数n

  • -c,创建压缩文件,用于压缩模式
  • -v,显示压缩、解压过程,用于查看进度
  • -x,解压模式
  • -f,要创建的文件,或要解压的文件, -f选项必须在所有选项中位置处于最后一个
  • -z, gzip模式,不使用-z就是普通的tarball格式,一般位于选项第一个
  • -C,选择解压的目的地,用于解压模式

压缩

image-20240704202041655

解压:

image-20240704202625456

指定目的地解压:

image-20240704202925586

  • zip压缩命令

语法:zip [-r] parm1parm2

-r ,递归压缩整个文件夹,与rm,cp命令效果一致

image-20240704203502262

  • unzip解压命令

语法unzip [-d] parm1 parm2

  • -d ,表示要指定解压目录,不指定默认是当前目录
  • parm1 ,被解压目录
  • parm2 :被解压的文件

image-20240704204228539