Linux初识

硬件和软件

硬件:看得见摸得着的物理计算机装置

软件:用户与计算机之间的桥梁,操作系统就是软件的一类

Linux是服务器操作系统

Linux内核:

Linux系统组成: 1.Linux系统内核   2.系统级应用程序

内核:调度CPU、调度内存、调度文件系统、、、

系统级应用软件:出厂自带的程序,如文件管理器、任务管理器、、、

虚拟机

虚拟机就是一个虚拟的电脑

虚拟机=虚拟硬件+真实操作系统

远程连接Linux系统

图形化、命令行

对操作系统的两种使用形式:

图形化页面使用操作系统(获得图形化反馈) eg:文件管理器;

以命令的形式使用操作系统(获得字符反馈) eg:命令提示符

Linux的目录结构

Linux的目录结构是一个树形结构,没有盘符的概念,只有一个根目录 / ,所有文件都在它之下

在Windows系统中路径的层级关系用\,Linux用 / 表示层级关系

其表示路径时,开头的 / 表示的是根目录,后面的 / 才表示层级关系

Linux命令入门

Linux命令本体就是一个个二进制可执行的程序

Linux命令基础

命令行就是Linux终端(Terminal),是一种命令提示符页面,以纯字符的形式操作系统

命令是Linux程序,一个命令就是一个Linux的程序,可以在终端中得到字符化的反馈

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

command:命令本身

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

parameter:[可选,非必填]命令的参数,多数用于命令的指向目标(路径)

eg:Is -l /home/itheima:

ls是命令本身,-l是选项,/home/itheima是参数,意思是以列表的形式,显示/home/itheima目录内的内容

ls命令入门

ls命令的作用是列出命令下的内容

直接用ls命令本体表示以平铺形式列出当前工作目录下的内容(并不显示隐藏的文件夹)

ls命令表示列出当前工作目录下的内容 ;  Linux系统的命令行终端在启动时默认加载当前用户的HOME目录为当前工作目录;  HOME目录就是每个Linux操作用户在Linux系统的个人账户目录,

根目录包含HOME目录

ls命令的参数 [parameter]

参数就是Linux路径,不写参数的话是默认的路径即HOME路径

ls命令的选项 [-options]

 -a 选项

表示 all 的意思,即列出全部文件(包含隐藏的文件/文件夹)

隐藏文件/文件夹前面都有一个 . ,这个 . 就表示隐藏文件夹

 -l 选项

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

 -a 与 -l 可以混用, ls -l -a  ,ls -la , ls -al 这三种写法都是一样,表示同时用两种选项既显示了

所有文件有是以列表的形式显示的

选项和参数也可以组合使用,eg:ls -al /

 -h 选项

表示以易于阅读的形式,列出文件大小单位,如K M G(文件大小的单位)

h是一定要和 l 混合使用的

此图中比上一图增加了各文件的大小单位

这三个命令可以组合使用 -alh  alh无前后顺序

目录切换相关命令

cd命令切换工作目录

刚打开Linux终端,默认HOME为当前工作目录;如果要更改当前所在的工作目录,就用到cd命令

语法:cd [Linux路径]

cd命令无选项(行为细节),只有参数(路径)

cd命令直接执行(不写参数)就代表回到用户的HOME目录

pwd命令展示当前工作目录

pwd命令可以查看当前的工作目录

语法: pwd

没有选项也没有参数

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

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

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

特殊路径符:

.    表示当前目录,比如cd ./下载 表示切换到当前目录下的 下载 目录内,和相对路径cd 下载效果一样

..   表示上一级目录,比如cd .. 即可切换到上一级目录,cd ../..切换到上二级的目录

~   表示HOME目录,比如cd ~ 即可切换到HOME目录,cd ~/下载,切换到HOME目录的下载目录

创建目录命令(mkdir)

通过mkdir命令可以创建新的目录

语法:mkdie [-p] Linux路径

参数必填,表示Linux路径,即要创建的文件夹的路径,相对路径绝对路径都可,特殊路径符也可以使用

-p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

文件操作命令partl(touch、cat、more、cp、mv、rm)

touch命令创建文件

语法:touch Linux路径

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

cat命令查看文件内容

语法:cat Linux路径

cat命令无选项,参数必填,即被查看的文件的路径,相对路径绝对路径都可,特殊路径符也可以使用

more命令查看文件内容

语法:more Linux路径

more命令无选项,参数必填,即被查看的文件的路径,相对路径绝对路径都可,特殊路径符也可以使用

more命令与cat命令不同的是:cat命令是直接将内容全显示出来

     more命令支持翻页,如果内容过多可以一页一页的展示,使用空格翻页,按q可以退出查看

cp命令复制文件 / 文件夹

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

-r选项,可选,用于复制文件夹使用,表示递归  (copy)

参数1,Linux路径,表示被复制的文件或文件夹的路径

参数2,Linux路径,表示要复制去的路径

mv命令移动文件 / 文件夹

语法:mv 参数1 参数2

参数1,Linux路径,表示被移动的文件或文件夹  (move)

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

不存在test3.txt,则改名

rm命令删除文件 / 文件夹

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

 -r选项用于删除文件夹  (remove)

 -f选项表示force,强制删除(不弹出提示确认信息,只有root管理员用户删除内容时会有提示)

参数1、参数2、参数3 ....... 表示要删除的文件或文件夹路径,按照空格隔开,可一次性删除多个文件或文件夹

rm命令支持通配符 *,用来做模糊匹配,*可以匹配任意内容

eg:test*,表示匹配任何以test开头的内容

       *test,表示匹配任何以test结尾的内容

       *test*,表示匹配任何包含test的内容

       rm *test 表示删除以test结尾的文件或文件夹

CentOS 7 :通过 su - root,并输入开机密码可进入root用户,通过输入exit命令退回普通用户

Ubuntu:通过sudo -i 进入,exit 退出

查找命令(which、find)

which命令查找命令的程序文件位置

语法:which 要查找的命令

which命令查看所使用一系列命令的程序文件存放在哪里

find命令查找指定文件

按文件名查找文件

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

find命令也支持使用通配符,用法与上一致

按照文件大小搜索

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

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

eg:查找小于100MB的文件:find / -size -100M

       查找大于1GB的文件:find / -size +1G

grep、wc和管道符

grep命令从文件中通过关键字过滤文件行

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

选项-n可选,表示在结果中显示匹配的(过滤出来的)行的行号

两个参数,关键字和文件路径必填

关键字参数表示过滤的关键字,带有空格或其他特殊符号,建议使用“ ”将关键字包围起来

文件路径参数表示要过滤内容的文件路径,也可作为內容输入端口(即不填路径就可以作为管道符的內容)

wc命令做数量统计

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

选项 -c,统计bytes(字节)数量

        -m,统计字符数量

        -l,统计行数

        -w,统计单词数量

参数,文件路径:被统计的文件,也可作为内容的输入端口(即不填路径就可以作为管道符的內容)

管道符

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

管道符可以嵌套使用

eg:统计文件中带有1关键字的结果中有多少个单词

echo、tail、重定向符

echo命令输出內容

语法:echo 输出内容

无选项只有一个参数,表示要输出的內容,复杂内容(有空格或 \ 时)可以用“ ”包围

反引号`的使用

被反引号`包围的內容会被作为命令执行

重定向符号的使用

重定向符> 和 >>

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

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

tail命令跟踪文件更改

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

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

参数:Linux路径 表示被跟踪的文件路径

选项:-f  表示持续跟踪尾部更改

          -num 表示查看尾部多少行,默认为10行

如果两个选项一起用,则数字前面要加上n :即要想实时追踪某文件(eg:test.txt)的倒数两行要写:tail -f -n 2 test.txt

要停止跟踪状态用ctrl + c;按 ↑ 可恢复上一次的命令內容,按 ↓ 可恢复下一次的命令内容

vi / vim 编辑器

vi / vim是纯文本编译器,编译文件文本

三种工作模式:1. 命令模式:命令模式下,所敲的按键编辑器(比如键盘快捷键)都理解为命令,以命令驱动执行不同的功能。此模型下,不能自由进行文本编辑。

2. 输入模式:也就是编辑模式、插入模式。此模式下,可以对文件内容进行自由编辑。

3. 底线命令模式:以:开始,通常用于文件的保存、退出。

以命令模式为中转,输入模式和底线命令模式之间不能转换

语法:vi 文件路径

          vim 文件路径

如果文件不存在,此命令就会用于编辑新文件

如果文件存在,此命令就会用于编辑已有文件

按 i 就可以进入输入模式,按esc退回命令模式,可以用快捷键:eg,yy复制p粘贴;dd 删除行;u 撤销,按:可以进入底线命令模式,w是保存,q是退出,再回车就退出了vim

命令模式快捷键

底线命令模式快捷键

最后一个set paste 用于从外界复制粘贴过来

Linux用户和权限

认识root用户

了解root用户

拥有最大权限的账户名为:root

普通用户为:yh

用户切换命令

su命令切换账户

语法:su - [用户名]

- 符号可选,表示是否在切换用户后加载环境变量

参数:用户名,表示要切换的用户,如果不输入用户名表示默认root用户

用exit命令退回上一个用户,或ctrl + d

root用户转到其他用户不用密码;其他转要密码

sudo命令

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

语法:sudo 其他命令

并不是所有的用户都有权利使用sudo,需要为普通用户配置sudo认证

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

在文件的最后添加:yh(你的电脑用户名) ALL=(ALL)        NOPASSWD: ALL

用户、用户组管理

Linux系统中可以配置多个用户,也可以配置多个用户组,一个用户也可以加入多个用户组

Linux中关于权限的设置有两个级别:针对用户的权限设置和针对用户组的权限设置

用户组管理

要用root用户执行:创建用户组 groupadd 用户组名    删除用户组 groupdel 用户组名

创建用户

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

-g指定用户的组,不指定-g会创建同名组并自动加入,指定-g需要组已经存在,如已经存在同名组,必须用 -g

-d指定用户的HOME路径,不指定HOME目录默认在:/home/用户名

删除用户

语法:userdel [-r] 用户名

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

查看用户所属组

语法:id [用户名]

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

修改用户所属组

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

将指定的用户加到指定的用户组里面,原来的组还在,一个用户可以加多个用户组

查看当前系统中有哪些用户 / 组

语法:getent passwd

包含信息:::用户名:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)

语法:getent group

包含信息:::组名称:组认证(显示为x):组ID

查看权限控制

1:表示文件、文件夹的权限控制信息

2:表示文件、文件夹所属用户

3:表示文件、文件夹所属用户组

r表示读权限 ;w表示写权限;x表示执行权限

针对文件、文件夹的不同,r w x的含义有细微差别

r,针对文件可以查看文件内容,如cat命令;针对文件夹,可以查看文件夹内容,如Is命令

w,针对文件表示可以修改此文件;针对文件夹,可以在文件夹内:创建、删除、改名等操作

x,针对文件表示可以将文件作为程序执行;针对文件夹,表示可以更改工作目录到此文件夹,即cd进入

修改权限控制

chmod修改文件(夹)的权限控制

只有文件、文件夹的所属用户或root用户可以修改权限控制(序号1)

语法:chmod [-R] 权限 文件或文件夹

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

权限:u=   ,g=   ,o=   

 u:usre所属用户权限,g:group组权限,o=other其他用户权限

3=2+1;5=4+1;6=4+2;7=4+2+1

chown命令修改文件(夹)的所属用户(组)

只有root用户可以修改文件(夹)的所属用户和所属用户组(序号2、3)

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

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

选项:用户,修改所属用户

选项:用户组,修改所属用户组

:用于分隔用户和用户组

eg:

Linux实用操作

快捷键

ctrl + c 强制停止

ctrl + d 退出或登出

history历史命令搜索;

        history | grep可以通过关键字过滤某些特定的指令

        !加命令前缀,可以从时间最近到最远找命令前缀开头的第一个(即最近一个)

ctrl + r,输入内容去匹配历史命令,回车可直接执行,键盘左右键可以得到此命令(可继续修改后再执行)

光标移动快捷键

ctrl + a,跳到命令开头

ctrl + e,跳到命令结尾

ctrl + 键盘左键,向左跳一个单词

ctrl + 键盘右键,向右跳一个单词

ctrl + l 或命令clear,清空终端内容

软件安装

yum为CentOS系统安装软件

yum:RPM包软件管理器,用于自动化安装配置Linux软件,其依赖的软件也会一并下载

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

选项-y:自动确认,无需手动确认安装或卸载过程

install:安装

remove:卸载

search:搜索

yum命令需要root权限,可以su切换到root,或sudo提权,yum需要联网

apt为Ubuntu安装软件

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

选项-y:自动确认,无需手动确认安装或卸载过程

install:安装

remove:卸载

search:搜索

apt命令需要root权限,可以su切换到root,或sudo提权,apt需要联网

systemctl命令控制软件的启动和关闭

 能被systemctl管理的软件,一般称之为服务

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

start:启动

stop:关闭

status:查看状态

enable:开启开机自启

disable:关闭开机自启

除内置的服务之外,部分第三方软件安装后也可以以systemctl进行控制,另一部分可以手动添加到系统中,再通过systemctl控制

ln命令创建软连接

在系统中创建软连接,可以将文件、文件夹链接到其他位置

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

-s选项,创建软连接(必填)

参数1:被链接的文件或文件夹

参数2:要链接去的目的地

eg:ln -s /etc/yum.conf ~/yum.conf 即将/etc/yum.conf 链接到 用户主目录的yum.conf 文件

日期、时区

date命令查看日期时间

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

-d 按照给定的字符串显示日期,一般用于日期计算

eg:2026-06-18的格式

eg:2026-06-18 20:28:00的格式

-d选项进行日期计算

-d选项可以和格式化字符串配合一起使用

修改Linux系统的时区

使用ntp进行时间同步和校准

下载npt:apt install ntp

启动ntp:systemctl start ntp

设置ntp开机自启:systemctl enable ntp

手动校准:ntpdate -u ntp.aliyun.com(ntp.aliyun.com是一个时间校准服务器)

IP地址、主机名

IP和主机名

每一台联网的电脑都有一个地址,用于和其他计算机通讯

IP有两个版本V4和V6

IPV4版本地址格式是:a.b.c.d,abcd是0~255的数字,eg:192.168.80.101

通过命令ifconfig查看本机的ip地址,如果不行就得安装:yum(CentOS)/ apt(Ubuntu) -y install net-tools

可以使用命令:hostname查看主机名

可以使用命令:hostnamectl set-hostname 主机名 修改主机名(需要root用户)

域名解析

通过主机名或替代的字符地址去代替数字化的ip地址

字符地址就是域名

先看自己的电脑上有没有地址的记录,没有再联网去DNS服务器上看有没有对应域名的ip地址

可以在上面的文件中去配置对应的域名和ip地址的映射

配置主机名映射:在开始栏目中搜索记事本,以管理员的身份运行,左击左上角文件,点打开按照上图windows路径打开到hosts(刚打开etc如果没有文档的话,就在左下角点击打开所有文件),在hosts最后加上 192.168.153.128 Ubuntu(ip地址和主机名)

虚拟机配置固定IP

步骤:1.在VMware中配置ip地址的网关和网段(ip地址的范围)

           2.在Linux系统中手动修改配置文件,固定ip

网络运输

下载和网络请求

ping命令检查服务器是否可以连通

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

选项-c:检查的次数,不使用-c选项,将无限次数持续检查

参数:ip或主机名,被检查的服务器的ip地址或主机名地址

wget命令下载文件

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

语法:wget [-b] url

选项:-b,可选,后台下载,会将日志写入到当前工作目录的wget-log文件

参数:url,下载链接

curl命令发起网络请求

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

语法:curl [-O] url

选项:-O(大写的o,不是零0),可选,用于下载文件,当url是下载链接时,可以用此选项保存文件

参数:url,要发起请求的网络地址

端口

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

物理端口:接口,是可见的端口,如USB接口,RJ45网口,HDMI端口等

虚拟端口:计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用的

虚拟端口

计算机程序之间的通讯,通过ip只能锁定计算机,但是无法锁定具体的程序,通过端口可以锁定计算机上的具体程序,确保程序之间的沟通

nmap命令查看端口占用

nmap不是系统自带,安装:apt(Ubuntu) -y install nmap

语法:nmap 被查看的ip地址

127.0.0.1是本机地址

netstat命令查看指定端口的占用情况

语法:netstat -anp | grep 端口号

grep过滤所输入的端口号

此命令还可以看那个是被占用,哪个没有

进程管理

程序运行在操作系统中,是被操作系统所管理的

每一个程序在运行时,便被操作系统注册为系统中的一个进程,并会给每个进程分配一个独有的进程id(进程号)

ps命令查看进程

语法:ps [-e -f]

选项:-e:显示出全部的进程

选项:-f:以完全格式化的形式展示信息(展示全部信息)

可以配合管道符 | grep 过滤

其中,UID、PID、PPID、C等等都可以被用来作为过滤的內容

关闭进程

语法:kill [-9] 进程ID

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

主机状态

top命令查看系统资源占用(任务管理器)

语法:top,按q或ctrl+c退出

top命令内容

top命令选项

>是重定向符,覆盖写

>>追加写

top交互式选项

磁盘信息监控

df命令查看硬盘(磁盘)的使用情况

语法:df [-h]

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

iostat查看CPU、磁盘的相关信息

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

选项:-x 显示更多信息

num1:数字,刷新间隔;num2:数字,刷新几次

网络状态监控

sar命令查看网络的相关统计

语法:sar -n DEV num1 num2

环境变量

env命令可查看当前系统中记录的环境变量

$符号取环境变量的值

语法:$环境变量名

自行设置环境变量

临时设置:

语法:export 变量名=变量值

永久生效:

语法:source 配置文件

1.只针对当前用户生效:配置(在文件中加入(语法:vi 路径))在当前用户的~/bashrc 路径文件中

2.针对所有用户生效:配置(在文件中加入(语法:vi 路径))在系统的/etc/profile路径文件中

最后通过语法source配置文件,使其立刻生效,或重新登录finalshell生效

通过FinalShall在Linux系统中上传、下载

下载是指下载到我们真实的windows系统的电脑上,上传是从windows电脑上传到虚拟机中

我们当前是在yh用户下登陆的,看不到root用户的文件,如果想要看root用户下的文件,就要

rz、sz命令进行文件传输

rz、sz命令需要安装:apt -y install lrzsz

rz命令进行上传:

语法:rz

sz命令进行下载:

语法:sz 要下载的文件

压缩和解压

tar命令压缩或解压tar或gzip文件

压缩格式

tar命令

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

压缩

注意:-z 如果使用的话,一般在选项的第一个

           -f 如果使用的话,必须在选项的最后一个

解压

注意:-z 如果使用的话,一般在选项的第一个

           -f 如果使用的话,必须在选项的最后一个

           -C选项单独使用,和其他的解压选项分开

zip、unzip命令压缩或解压zip文件

zip命令压缩文件

语法:zip [-r] 参数1 参数2 参数3......

-r,被压缩的包含文件夹时,需要使用

unzip命令解压文件

语法:unzip [-d] 参数

-d,指定要解压去的位置,无-d默认解压到当前目录

参数,被解压的zip压缩包文件

解压的时候有同名的内容,其会被覆盖替换掉

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐