linux操作系统的基本命令

news2024/11/11 12:14:22

1.linux下的文件系统

在linux操作目录下没有像window操作系统下盘符的概念,只有一个根目录/,所有文件目录都在它的下面

linux的目录结构:

在Linux系统中:

  • 文件都从跟目录开始的,用/表示
  • 文件名称区分大小写
  • 路径都是以/俩进行分隔(windown用\分隔)
  • 以.开头的文件为隐藏文件

Linux有一个基本思想一切皆文件,系统中所有的都可以归结为一个文件,例如:数据文件,可执行命令,

进程等等,都被视为拥有各自特性的文件

/: 根目录,位于Linux文件系统目录结构的最高层,所有的内容大都是从这里开始

/root: 管理员root的主目录(家目录)

/home: 普通用户的主目录(家目录),当新建的账户时,都会分配其主目录再此,/home/用户名

/bin: 用于存放提供给用户使用的基本命名(二进制命令)

/opt:表示的是可选择的意思,第三方软件的安装位置(类似 D:\Progrem Files\)

/usr:安装是系统是所安装的软件的目录,类似 C:\Windows\

/usr/local: 用户级软件安装目录,用户自己编译的软件默认会安装到这个目录,类似 C:\Progrem

Files
/tmp: 存放临时文件,任何人都可以访问,只能删除自己的文件
/var: 用来存放系统中经常发生变化的文件,如日志文件,mysql 数据库文件等
/var/log : 日志目录及文件
/dev: 设备(device) 文件目录,存放linux 系统下的设备文件
/sbin: 用于存放系统管理类的基本命令
/boot: 用于存放引导文件,内核文件,引导加载文件
/etc: 系统配置文件存放的目录,该文件存放的大部分配置文件

Linux 基本命令

Linux 的命令提示行

Linux 的命令提示行,也称为命令行界面(CLI)或终端(Terminal),是用户与 Linux 操作系统

进行交互的主要方式之一。它是一个文本界面,用户可以在其中输入命令来执行各种操作,如文件管 理、系统设置、程序编译等。 命令提示行通常由一个命令提示符和一个光标组成。命令提示符是用户输入命令的地方,它通常会显示当前用户、主机名和当前工作目录等信息。光标则用于指示用户当前可以输入命令的位置。

Linux 命令提示行中,用户可以通过输入命令和参数来执行各种操作。这些命令可以是系统内

置的命令,也可以是用户自己编写的程序。Linux 系统提供了丰富的命令和工具,可以满足用户各种不同的需求。

除了执行命令外,Linux 命令提示行还支持一些快捷操作和命令历史记录功能。用户可以使用上

下箭头 按键来浏览之前输入过的命令,也可以使用 Tab 键来自动补全命令和文件名等。

总之,Linux 的命令提示行是一个功能强大的工具,它允许用户通过文本界面与操作系统进行交

互,执行各种操作和管理系统资源。

命令行解析:

[root@localhost wzg]# 

root    当前登录的用户名

loaclhost   逐句名

zwg   当前所在的工作目录/文件夹

# 命令提示符(代表管理员root, $表示普通用户)

温馨小提示: Linux 没有垃圾站回收功能,删除文件一定要三思而后行

Linux 的常用快捷键

  • ctrl+c 或者 Ctrl+z  立即中止当前正在执行的任务,退出当前操作
  • ctrl+d 注销登录
  • ctrl+l  清屏 (或 clear
  • ctrl+s  暂停屏幕输出 (纯命令行模式下)
  • ctrl+q  恢复屏幕输出 (纯命令行模式下)
  • tab  命令补齐、文件名补齐(提高效率,防止出错)
  •  上一个命令
  • ↓  下一个命令
  • history 查看用户历史操作记录:

Linux 中"" 和 ''(双引号和单引号)的效果一样的,但注音是英文字符,字母大小写需要严格区分

Linux终端命令格式:

Linux 命令通常有三部分组成, 命令名 ,选项 ,参数  从左到右, 依次用空格隔开

命令名(command):

命令名是表示命令的基本功能,在Linux中,每个命令都是一道程序

通常保存在系统的/bin目录下,当用户在shell中输入命令时,shell会根据命令

所在的相应的位置搜索并执行相应的程序

选项 (Options)

选项是命令执行方式的调整开关,它决定了命令的显示结果或执行方式。选项分为长选项和短选

项。

短选项通常是一个字母,前面带有连字符“-”。例如,-l 选项在 ls 命令中表示长格式列出,显

示文件和目录的详细信息。

长选项是完整的单词,前面带有两个连字符“--”。例如,--help 选项在大多数命令中用于显示帮

助信息。

有些命令允许组合短选项,如-abc 表示-a -b -c。有些短选项可以不带“-”

有些选项需要带参数,例如-L 512M 表示限制大小为 512M

参数 (Arguments)

参数是命令作用的对象。它可以是文件、目录、用户名、进程 ID 等。参数的位置通常在选项之

后。

例如,在 ls /dev 命令中,/dev 是参数,表示列出/dev 目录下的文件和目录。

通过组合不同的命令、选项和参数,Linux 用户可以执行各种复杂的任务,从而实现系统管理和

应用程序开发等多种功能。

  

Tips

Linux 命令,通常也被称为 Bash 命令行。Bash Linux 系统中最常用的 shell,几乎所有的 Linux

发行版中都内置了 BashBash 命令行以其强大和灵活性而著称,用户可以使用少量的命令执行多种

任务,甚至可以将任务自动化。

当用户提到 Linux 命令行时,他们通常指的是 Bash 命令行或 Bash 脚本。Bash shell 不仅可以直

接执行用户输入的命令,还可以从文件中读取命令来执行,这被称为 shell scripting(脚本编程)。

因此,可以说 Linux 命令和 Bash 命令行在很大程度上是相同的,因为 Bash Linux 中最常用的

命令行解释器。

centos7调节时间

项目判断时间的标准,不应该是客户端请求中携带的时间,要么以服务器时间为判断标准,

要么以互联网时间为准

CentOS 7 中,可以使用多种方法来调节系统时间。以下是两种常用的方法:

方法一:使用 timedatectl 命令


1.检查当前的系统时间和时区 
timedatectl 

local time : 六 2024-09-21 11:07:51 CST

Local time :本地时间  CST China Standard Time 中国标准时间,即东八区)

Universal time: 2024-09-21  03:07:51 UTC

Universal time协调世界时(UTCUniversal Time Coordinated

RTC time:硬件实时时钟,独立时钟(RTCReal-Time Clock)的时间。

Time zone:时区。

Asia/Shanghai (CST, +0800):表示系统配置的时区是亚洲/上海,也就是中国标准时间(CST),

UTC 偏移量是 +0800,即比 UTC 8 小时。

第五行:NTP enabled: no

网络时间协议(NTP)没有被启用。NTP 用于同步系统时钟到远程服务器。

第六行:NTP synchronized: no

表示系统时钟尚未与 NTP 服务器同步。

第七行:RTC in local TZ: no

表示硬件实时时钟(RTC)没有设置为本地时区时间。

DST active: n/a

第八行:DST:夏令时。

n/a:表示不适用或没有相关信息。这可能意味着当前时区或地区不实行夏令时,或者系统没有

配置夏令时信息

2.修改系统时间:

sudo timedatectl set-time "YYYY-MM-DD HH:MM:SS"

例:timedatectl set-time "2023-06-30 09:01:55

如果需要修改时区:

sudo timedatectl set-timezone "时区"

方法二 

①检查当前的系统时间date

②修改系统时间sudo date -s "YYYY-MM-DD HH:MM:SS"

例:sudo date -s "2024-12-30 09:01:55"

修改完成后,再次运行 date 命令来验证修改后的时间。


查看ip地址 ,切换用户

1.查看网络情况和IP地址: ifconfig

ens33 是网卡的名称, inet  192.168.229.128 是该网卡的ip地址,这就是

你想要的ip地址

Tips:

lo网卡(loopback Inerface), 他是一个虚拟的网络接口,用于同一台计算机上

发送和接收网络数据包,而不需要经过任何实际的物理网络

它通常用于测试网络应用程序和服务,因为它们可以在没有实际网络连接的情况下与本地主机通

信。

lo 接口的 IP 地址通常是 127.0.0.1IPv4)和 ::1IPv6),这些地址用于标识本地主机。

virbr0 网卡(Virtual Bridge Interface:

virbr0 是一个虚拟桥接接口,通常与虚拟化技术(如 KVM Xen)一起使用。

当您在一台物理服务器上运行虚拟机(VMs)时,virbr0 允许这些虚拟机共享一个网络桥接器,

从而允许它们像物理机一样在网络中通信。virbr0 接口通常配置有一个 IP 地址,使得虚拟机可以通过这个接口访问外部网络。

在您的输出中,virbr0 IP 地址是 192.168.122.1,并且配置了子网掩码 255.255.255.0

这两个接口都是软件定义的,并且通常不直接连接到物理网络。lo 接口总是存在的,而 virbr0

在启用了虚拟化并且需要虚拟机网络桥接时存在。

2.测试网络连通:

ping IP地址

ping 网站地址(www开头) # 测试网站连通,获取网站ip 地址

3. 查看当前在线登录用户: who

要看本机编号 who am i

4.显示当前系统的信息:uname 

5.显示当前系统的日期时间:date

6.切换root 用户 

su root 

 输入密码: (输入密码时不显示,直接输入正确的密码后按回车即可)

返回登录root账号之前的用户:exit 

7.添加用户:

(sudo 表示需要使用root 权限操作 ,切换到root 权限之后 ,可以不输入 sudo即可)

sudo useradd 用户名 #sudo表示需要root账号操作

给该用户设置密码:

sudo passwd 用户命名

(接下来按提示进行,密码可以设置成 123456 ,系统提示 无效的密码: 密码少于 8 个字符
但仍然是可以使用的,需要输入 2 次)

8.切换到某用户

su 用户名

9.删除用户 

sudo userdel -rf 用户名

10.查看当前路径 pwd 

11.进入文件夹:

cd 文件夹的路径 # 绝对路径(/开头的) 或相对路径都可以

cd / 进入跟目录

cd .. 返回上一级

cd ~ 进入当前用户的家目录

cd 绝对路径 直接进入某个文件夹

12.ls 查看当前文件夹下的内容:

ls 显示当前文件夹下非隐藏内容, 使用不同的颜色标注不同类型

ls -l ( 可缩小为ll) 列出当前文件夹下内容的详细信息

ls -a 显示指定目录下所有子目录与文件,包括隐藏文件

白色 : 普通文件

蓝色: 目录/文件夹

红色:压缩文件

绿色:可执行文件/二进制文件

浅蓝色:链接文件

通配符:

* 表示任意多个字符,

ls  *.txt 在当前目录下查看以.txt结尾的文件(非目录)

? 表示1个任意字符,

例: ls ?.c 在当前目录下,查找第一个字符任意,后缀为.c的文件

[]括号内的范围自馁任意一个字符

ls [abd]d

ls [a-z]d  a-z之间的任意字符

关于ll详细信息格式说明:

第三行第1段: 'drwxr-xr-x'标识文件属性

第一个字符代表文件的类型,常见的有:

-:普通文件

d:目录

l:连接文件,类似快捷方式

后面9个字符:'rwxr-xr-x'为文件的控制权限,没三个字符为一组

r表示可读取,-表示无读取权限

w表示可写入,-表无写入权限

x表示可执行,-表示无执行权限

第一组 (前三位) :表示文件拥有者的权限

第二组(中间三位):表示所属组其他用户拥有的权限

第三组(最后三位):表示其他用户的权限

第三行第2段 '2' :子目录的个数

第3段 'root' :创建文件的用户名

第4段'root':创建文件的用户所在的用户组的名称

第五段:“1612”:文件占用空间(本身大小,不包含子文件)

第六、七、八段: “1 20 16:07”:文件最后后访问时间

第九段:“1.txt” : 内容名称

为什么第三段和第四段都是root 

执行命令:cd/home;ll;

Linux 的每个用户都是在用户组里的,新创建的用户会默认分配一个与用户名同名的组名,此时,

该用户组只有一名用户,用户组的组名是可以维护、更改的。

13.关于用户的操作

新建用户 

sudo useradd -g 组名 用户名  #新建一个用户分配到某个已存在的组,不能是不存在的组

例:sudo useradd -g admin jack  # 新建一个用户并加入admin 组

设置密码 

sudo passwd 用户名 

sudo passwd   #后面不跟用户名,默认修改当前用户的密码

查询用户的组归属 

id 用户名 

 

uid:用户id 是1000 括号中的是用户名 wzg

gid:主组id 是1000 括号中的是主组组名 wzg

组:依次列出:主组 id(主组名称),附加组 id(附加组名称),……如果被附加到了多个组,

会依次列出。

Linux 系统中,每个用户都有一个主组,这个主组是在用户创建时指定的,用户还可以被添加

到其他一个或多个组中,这些组被称为附加组。

主组、附加组的区别:

主组

定义:每个用户都有一个主组,它通常是用户创建时自动创建的与用户名相同的组。用户的主组

/etc/passwd 文件中定义。

特点:

1.每个用户只能有一个主组。

2.用户创建文件时,文件的默认所属组通常是该用户的主组。

3.用户不能直接从主组中被移除,但可以更换主组。

4.用户被删除时,如果其主组没有其他成员,该主组也会被删除。

附加组

定义:除了主组之外,用户还可以被添加到其他一个或多个组中,这些组被称为附加组。附加组

信息存储在/etc/group 文件中。

特点:

1.用户可以同时属于多个附加组。

2.用户可以通过附加组访问该组所拥有的文件和目录,而不需要将用户直接添加到文件或目录的

所有者组中。

3.附加组允许更灵活的文件和目录权限管理,因为用户可以通过不同的组来访问不同的资源。

4.附加组可以直接被删除,而不影响属于该组的用户。

将用户附加到另一个组的好处

权限管理:通过将用户添加到特定的附加组,可以更方便地管理他们对文件和目录的访问权限。

例如,你可以创建一个专门用于共享文件的组,并将需要访问这些文件的用户添加到该组中。

资源共享:附加组允许用户共享文件和目录,而无需将每个用户都添加到文件或目录的所有者组

中。这简化了权限管理,并减少了管理开销。

灵活性:由于用户可以属于多个附加组,因此可以根据需要轻松地将用户从一个组移动到另一个

组,以调整他们的访问权限

删除用户 

sudo user德里 -rf 用户名 #删除用户信息及家目录

14. 关于组的操作

新建用户组

sudo groupadd 组名 #新建一个用户组

判断组是否存在: getent group 组名

如果组不存在,则不会有任何输出;
如果组存在,会返回该组详细信息,依次为: 组名、 x 密码占位符、组 id
如果该组没有附加成员,则附加成员信息为空,如果有附加成员,则显示附加成员名称;
修改组名 
sudo groupmod -n 新组名 原组名 
sudo groupmod -n  admin wzg  # 把用户组名修改为admin
更改用户主组归属

sudo usermod -g  要加入的主组名称 用户名

sudo usermod -g root wzg 

-aG usermod 命令的一个选项组合,用于修改用户账户。其中:
-a 表示 追加 Append ),意味着将用户添加到指定的附加组中,而不是替换用户当前的所有
组。
-G 后面通常跟着一个或多个组名,表示用户要加入的附加组,中间用逗号隔开

15.创建文件夹

mkdir 文件夹名

同时创建两个文件夹 (同级别)

mkdir a b

创建有从属关系的文件夹:(如果父目录不存在则创建)

mkdir -p a1/b1d1

删除空文件夹(只能删除空的文件夹,若不是空的将操作失败)

rmdir  文件夹名

强制删除文件夹下的所有内容:

rmdir -rf 文件夹名

16.创建文本文件

touch 文件名

例:创建1.txt 文本文件:touch 1.txt

删除文件:

rm 文件名

一次执行多条命令,使用;连接与使用&&连接的区别

cd /r ;mkdir tt 与 cd /t&&mkdir tt 区别

命令执行顺序:使用分号分隔命令会按照从左到右的顺序依次执行,

1. 使用分号连接:如果第一个命令 cd /r 失败,第二个命令 mkdir tt 仍然会执行,会在当前工作
目录创建文件夹 tt
2. 如果想要在第一个命令失败时,停止执行后续的命令,可以使用 && 而不是 ; 来分隔命令。
例如, cd /r && mkdir tt 只有在成功切换到 /r 目录后才会尝试创建 tt 目录
shell 脚本:

Shell 脚本是一种计算机程序,通常由一系列 Linux Unix 命令组成,这些命令通过 Shel

l(一 种命令行解释器)来执行。Shell 脚本通常保存在以 .sh 为扩展名的文件中,但实际上它们并不依赖

于特定的文件扩展名来识别。

17.复制(或更名)文件到指定路径

(cp 可操作文件, cp 操作文件夹,需夹 -a 或者-r 选项)

cp 源文件名 目标路径 # 当然也可以是文件的路径

(目标路径可以使用绝对路径,或者相对路径)

Linux 服务器之间复制文件 scp

语法:

1.复制本地文件到服务器

scp [选项] 本地文件 用户名@服务器 IP:目录

2.复制服务器文件到本地

scp [选项] 用户名@服务器 IP:源文件 本地目录

18.移动(或变更名)文件到指定路径

将复制命令中的 cp 替换成 mv 即可,使用方法完全一样。
注意: 移动的特点:原文件不存在,被移动到了新的位置

19.linux 编辑神器 vi

vi/vim 是什么?

linux 系统上经常需要进行文本编辑,最常用的是 vi 编辑器。可以把他理解为 windows 下的

记事本。

vim vi 的增强版,需要另外安装

vi 的使用场景

在非图形安装 Linux 下的首选编辑器

远程使用 Linux 系统的时候

黑客、红客、白客、运维

vi编辑器的3种模式:

1.命令行模式:通过对应的快捷键或者命令来管理文件

2.插入模式:在插入模式下主要是用来对文件的增加,修改操作

3.末行模式:主要是用来保存文件或退出文件

光标移动,复制,剪切,粘贴,撤消,恢复

光标移动:

← ↑ ↓ →G

移动到最后一行

(以大写 G 为例,可以通过 shift + g 实现,因为在虚拟机中,CapsLock 大小写切换键,是看不到提

示灯的,愿意使用 CapsLock 大小写切换键当然也是可以的。)

100G

移动到第 100

ctrl+f 向下翻页

ctrl+b 向上翻页

复制: yy

复制当前光标所在行 yG

复制光标所在行到最后一行之间的所有行 y1G

复制光标所在行到第一行之间的所有行

剪切/删除: x

剪切光标所在位置 X(大写)

向前剪切(删除)一个字符 dd

剪切(删除)当前光标所在行 dG

剪切(删除)光标所在行到文件最后一行之间的所有行 d1G

剪切(删除)光标所在行到文件第一行之间的所有行

粘贴: p

粘贴到光标所在行下面

P(大写) 粘贴到光标所在行上面

撤消: u 撤消

恢复: ctrl+r

恢复

编辑模式: i

从当前光标所在位置开始插入

A 从当前行的末尾字符后面开始编辑

o 在当前行下面插入一行新的空白行

a 从当前光标所在字符的下一位开始编辑

O 在当前行上面插入一行新的空白行

r

替换当前光标所在字符一次(r 1:将当前光标所在字符替换为 1)

R 一直替换光标所在的字符,直到按下 ESC 停止

命令行模式

命令行模式可执行的操作: 保存,退出,显示行号,搜寻

保存/退出: :wq

保存并退出 :q!

不保存,强制退出

设置行号: :set nu

显示行号:set nonu

取消显示行号

搜寻关键字:

语法:/关键字,例:/word,向下搜寻 word 关键字

n下一个

N 上一个

vim 编辑器并不是所有版本 centos 都自带,如果没有的话,可以自行下载:

sudo yum install vim

CentOS 7 中,验证是否已经安装了 vim 编辑器:

1.使用 which 命令:

打开终端,输入以下命令来查找 vim 是否已经安装并确定其安装路径:

which vim

如果 vim 已经安装,该命令会输出 vim 的路径,通常是 /usr/bin/vim。如果没有安装,则不

会输出任何内容或显示 vim not found

2.使用 rpm 命令

你也可以使用 rpm 命令来检查 vim 包是否已经安装:

rpm -qa | grep vim

如果 vim 已经安装,这个命令将列出与 vim 相关的包,通常包括 vim vim-common 等。

如果没有安装,则不会显示任何内容。

20.搜索文件

find 搜索路径  [选项] '关键字' #有通配符是必须加引号

搜索范围:

路径 及路径 所有子目录中搜索

选项:

-name 文件名  #按文件名搜索

-iname 文件名 #按文件名搜索,忽略大小写

-user 用户名 #按用户名搜索

-group 组名 #按组搜索

-type f #按类型搜索,搜索所有的普通文件f目录d 链接文件l

21查看文件内容:cat

cat 文本名  #一次性文件内容全部输出

cat -n 文本名 # 开头显示行号

cat -E 文本名 # 灭行末尾添加$表识

cat -n -b 文本名 #去空行,加行号

合并文件 cat a.txt b.txt > c.txt 

将会按顺序以收尾相接的顺序合并

临时合并文档查看内容 cat a.txt b.txt 

|管道符:

Linux 中,竖线“|”被称为管道符,其主要功能是将两个或者多个命令连接到一起,使得前一

个命令的输出可以作为后一个命令的输入。这种机制允许用户将多个简单的命令组合成一个复杂的命 令序列,以实现更复杂的功能。

语法通常形如“command1 | command2 [ | commandN... ]”,其中“|”符左边的命令的输出会作

“|”符右边命令的输入。而且,管道符是可以连续使用的,第一个命令的输出会作为第二个命令的

输入,第二个命令的输出又会作为第三个命令的输入,依此类推。

查看静态日志

cat 日志名:

查找日志中的关键字

cat 日志名| grep errot 

22. 在文件中检索内容

搜寻字符串:grep 关键字 文件名

第一步:进入 a.txt 所在文件夹,使用 ls 指令可以看到 a.txt 文件,

第二步:输入指令:grep 1 a.txt

# a.txt 文本文档中查找关键字 1

grep error abc.log # 在日志文件 abc.log 中查找关键字 error

more 查看

命令格式:more文件名

命令说明:

1.more命令用于分屏显示文件内容,每次显示一页内容

2.用于查看文件内容较多的文件

23.head tail 查看日志:

准备数据:将文件夹 apache-tomcat-8.5.57 放入 centos7 根目录中

查看动态日志:

1、进入日志文件所在的文件目录,

cd apache-tomcat-8.5.57/logs/

2、通过命令打开日志,分析需求场景打开需要的日志

例:tail -f catalina.2020-09-05.log -f:循环显示末尾 10 条)

ctrl + c 退出)

(1)查看文件的开头几行:

head -n 行数 文件名

例:查看 a 文件的前五行:

head -n 5 a.txt

(2)查看文件的末尾几行:

tail -n 行数 文件名

25.赋权 chmod(一般使用 root 权限操作)

ll 可查看文件或文件夹的各种权限数字法将文件赋权到最高:

chmod 777 文件名

chmod 777 目录名 # 仅将目录赋权,不包含子文件、子文件夹

数字法将文件夹递归(包含子文件、子文件夹)赋权到最高:

chmod 777 -R 文件夹名称

修改用户权限 chmod-字母法

字母法命令格式:chmod u+r 文件名

用户类型说明:

u:表示文件所属用户

g:表示文件所属的用户组

o:表示其他用户

a:表示所有用户

权限设置说明:

+:增加权限

-:撤销权限

=:设定权限

修改用户权限 chmod 777

chmod +数字组合 文件名 增加权限

chmod -数字组合  文件名 减小权限

26. 打包、解包文件

.tar 打包格式: tar 程序打包的数据,并没有压缩过

.tar.gz 打包压缩:tar 程序打包的文件,其中并且经过 gzip 的压缩

.gz 压缩格式:

gzip 程序压缩的文件

.z 格式:

compress 程序压缩的文件.bz2 压缩格式: bzip2 程序压缩的文件

.tar.bz2 打包压缩:tar 程序打包的文件其中并且经过 bzip2 的压缩

.tar (比较常见)

打包语法:tar -cvf 打包后的包名.tar 要打包的文件 1 要打包的文件 2 ……

例:tar -cvf aaa.tar 1.txt abc # abc 是一个文件夹,tar 命令可以打包文件夹

解包语法:tar -xvf 包名 路径 # 如果不指定路径,则解包到当前文件夹

例:tar -xvf aaa.tar

解包到指定目录:

tar -xvf 包名.tar -C 文件夹的路径

# C 须为大写

tar.gz

自动调用 gzip 打包:tar -zcvf 文件名.tar.gz 文件名

自动调用 gzip 解压:tar -zxvf 文件名.tar.gz

自动调用 gzip 解压到指定目录:tar -zxvf 文件名.tar.gz -C 路径

27.linux 系统监控

查看端口的使用情况

netstat 命令可显示当前服务器上所有端口及进程服务,一般配合选项-nultp grep 结合可查看

某个具体端口及服务情况。

选项:

-t : 指明显示 TCP 端口

-u : 指明显示 UDP 端口

-l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料

的程序)

-p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。

-n : 不进行 DNS 轮询,显示 IP(可以加速操作)

查看某个端口号是否空闲( root 权限):
例: 查看 22 端口、 3306 端口是哪个服务在使用
netstat  -nultp | grep :22
netstat -nultp | grep :3306
.监视进程工具 ps--提供系统过去信息的一次性快照

(常使用 root 权限操作)

ps 命令是否需要 root 账号操作取决于用户想要查看的进程信息的范围和级别。如果只是查看当

前用户的进程信息,那么普通用户就可以执行 ps 命令;如果需要查看其他用户或系统级别的进程信

息,则可能需要 root 权限。

选项:

l 长格式输出;

u 按用户名和启动时间的顺序来显示进程;

f 用树形格式来显示进程;

a 显示所有用户的所有进程(包括其它用户);

x 显示无控制终端的进程;

ps au

# 显示所有人的进程

ps aux | grep bash # 显示所有人的进程(包含无终端的进程),并搜寻名称为 bash 的进程

ps aux | grep redis # 显示所有人的进程,搜索名称为 redis 的进程

ps aux 命令可以显示快照信息的列名,grep 检索后,往往不显示列名

 实时显示进程状态--top

top 命令反应的是系统进程动态信息

top 命令是 Linux 下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似

Windows 的任务管理器

命令:top

 终止进程的工具---kill

kill 1233

# 终止 pid 1233 的进程(子进程 pid 或父进程 ppid

kill -9 1234

# 强制终止 pid 1234 的进程

killall httpd

# 终止所有 httpd 进程

查看系统硬盘空间占用--df

命令用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计。

查看包含给定文件磁盘空间使用情况

指定一个文件夹,查看该文件夹所在磁盘的使用情况

df /home

 查看系统运行时间、用户数、负载--uptime
uptime 命令我们系统启动 up 了(运行了)多长时间

27 系统关机,需要 root 权限

centos7 中, shutdown 命令,会默认 1 分钟之后关机

28 centos7 关于系统服务的相关操作(root 权限操作)

查看服务状态:sudo systemctl status 服务名称

停止服务:sudo systemctl stop 服务名称

启动服务:sudo systemctl start 服务名称

重启服务:sudo systemctl restart 服务名称

开机自动启用服务:sudo systemctl enable 服务名称

开机禁用服务:sudo systemctl disable 服务名称

29 rpm 安装:

redhat package manage centos 去除了红帽 Linux 的一些商业软件,也兼容 RPM 的安装方式。
简单的说, RPM 是以一种数据库记录的方式将所需要的软件安装到 Linux 主机的一套管理程序,
最大的特点是将要安装的软件先编译并打包,通过包装好的软件中默认的数据库记录,记录这个软件 在安装的时候需要的依赖属性模块,在用户的 Linux 主机安装时, RPM 会先根据软件里的记录数据, 查询 Linux 主机的依赖属性软件是否满足,若满足则予以安装,不满足则不安装。安装的时候将该软 件的信息全部写入 RPM 的数据库中以便将来的查询、验证与卸载。
 查询
rpm -qa | grep java
# 搜索是否安装 java 相关软件
-q
# 查询
-a
# 所有软件包
卸载
rpm -e --nodeps 软件名称
-e 卸载
--nodeps
忽略依赖关系
安装
rpm -ivh 安装包名
-i 安装 -v 显示附加信息
-h “#” 显示进度条

30 yum 安装(centos 的专用命令,Ubuntu 是另外的命令)

yum 安装的优点:

rpm 不能自动解决依赖关系。

yum 安装可以自动解决依赖关系,自动下载,自动安装。

yum 常用命令:

yum install 软件名 -y

# 安装软件【如果添加 -y 选项,表示自动确认】

yum remove 软件名

# 删除软件

yum install xxxx.rpm # 安装本地 xxxx.rpm,并自动解决依赖

yum remove 命令不会自动卸载指定软件的所有依赖项。yum remove 命令只会卸载指定的软件

包本身,以及那些没有被其他软件包所依赖的无用依赖项。如果一个依赖项还被其他软件包所依赖,

那么 yum remove 命令就不会卸载它。这是为了防止破坏系统的稳定性和其他软件的正常运行。

yum install 命令在 Linux 系统中用于安装软件包,它会在配置的仓库(repository)中检索指

定的软件。仓库是存储软件包及其元数据(例如软件包描述、版本信息、依赖关系等)的地方,可以

是本地服务器、远程服务器或本地文件。

执行 yum install 软件包名 时,yum 会按照 /etc/yum.repos.d/ 目录下定义的仓库配置,连接

到相应的仓库服务器,并检索该服务器上的软件包列表和元数据。如果找到了指定的软件包,yum

分析依赖关系,并计算出需要安装哪些软件包以满足依赖要求。

默认情况下,yum 会尝试安装最新版本的软件包。它会检查每个软件包的版本号,并基于这些版本信息选择最新的可用版本进行安装。

如果你希望安装特定版本的软件包,可以使用 yum install 软件包名-版本号 的格式来指定。例

如,要安装特定版本的 nginx,你可以使用类似 yum install nginx-1.14.2 的命令(假设 1.14.2 是你

想要的版本号)。

需要注意的是,仓库中可能不包含所有软件包的最新版本。仓库的更新频率取决于仓库管理员或

维护者。因此,在某些情况下,yum 可能只能提供较旧的软件包版本。如果你需要最新的软件包版

本,并且这些版本不在你的仓库中,你可能需要手动下载并安装这些软件包,或者添加包含最新版本

的仓库到你的仓库配置中。

配置之前,vm 虚拟机可先保存快照,便于反复练习

(使用 iso 镜像安装的 centos7,需要手动配置一下镜像源)

网络源配置:

阿里开源镜像网页:

https://developer.aliyun.com/mirror/

https://developer.aliyun.com/mirror/centos

1. 备份仓库配置文件

cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2. 下载新的配置文件 CentOS-Base.repo /etc/yum.repos.d/

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

或:

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

3. 运行 yum makecache 生成缓存、更新软件列表

yum makecache # 需要一定的时间,完成后会提示元数据缓存已建立

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2153264.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java反序列化利用链篇 | CC6链分析(通用版CC链)

文章目录 CC6和CC1之间的区别CC6的调用链构造CC6的payload完成TiedMapEntry.getValue()完成TiedMapEntry.hashCode()完成HashMap.hash()及HashMap.readObject()解决hash()方法提前触发的问题 系列篇其他文章,推荐顺序观看~ Java反序列化利用链篇 | JdbcRowSetImpl利…

LeetCode[中等] 215. 数组中的第 K 个最大元素

给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 思路:基于快排改进的快速…

【AI算法岗面试八股面经【超全整理】——深度学习】

AI算法岗面试八股面经【超全整理】 概率论【AI算法岗面试八股面经【超全整理】——概率论】信息论【AI算法岗面试八股面经【超全整理】——信息论】机器学习【AI算法岗面试八股面经【超全整理】——机器学习】深度学习CVNLP 目录 1、激活函数2、Softmax函数及求导3、优化器 1、…

LED灯、蜂鸣器、继电器的控制

LED灯的控制 该专栏所有文章都默认使用STM32F103ZET6开发板 目录 LED灯的控制 一、简单的LED灯控制 1、初始化函数 led灯 2、应用函数 2、蜂鸣器 3、继电器 一、简单的LED灯控制 编程框架:初始化函数和应用函数 1、初始化函数 初始化函数一般包括&#xf…

【学术会议:中国厦门,为全球的计算机科学与管理科技研究者提供一个国际交流平台】第五届计算机科学与管理科技国际学术会议(ICCSMT 2024)

您的学术研究值得被更多人看到! 在这里,我为您提供精准的会议推荐,包括计算机科学、管理科技、信息系统、人工智能、供应链管理等领域的国际会议。高效的稿件录用流程和优质的检索服务将确保您的研究成果迅速传播。关注我,寻找与…

Java免税商品优选商城:Spring Boot实战

第二章 系统开发关键技术 2.1 JAVA技术 Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterrise JavaBeans)的全面支持,java servlet AI,JS(java server ages&#xff09…

[Matplotlib教程] 02 折线图、柱状图、散点图教程

基于MFCC和CNN的语音情感识别 2 折线图、柱状图、散点图2.1 折线图2.1.1 简单折线图2.1.1 线形和Markevery2.1.2 带误差棒的折线图2.1.3 区间填充和透明度 2.2 柱状图2.2.1 分组柱状图2.2.2 堆叠柱状图2.2.3 横向柱状图 2.3 散点图 我们的网站是 菜码编程,我们的q群…

解决Hive乱码问题

在插入数据后,发现hive乱码 原因:Hive默认将存储表结构的元数据列编码设置为latin1,不支持中文 解决方法:在MySQL中修改对应Hive元数据列的编码 先查看mysql的所有字符集编码 1、先修改my.cnf 代码如下: vim /etc/…

C++——初步认识C++和namespace的用法

1.编程语言排行榜 我们通过排行可以看出 C在变成语言中还是占据着重要的地位 2.C在工作领域中的应用 1.PC客户端开发。⼀般是开发Windows上的桌面软件,比如WPS之类的,技术栈的话⼀般是C和 QT,QT 是⼀个跨平台的 C图形用户界面(G…

【解决】chrome 谷歌浏览器,鼠标点击任何区域都是 Input 输入框的状态,能看到输入的光标

chrome 谷歌浏览器,鼠标点击任何区域都是 Input 输入框的状态,能看到输入的光标 今天打开电脑的时候,网页中任何文本的地方,只要鼠标点击,就会出现一个输入的光标,无论在哪个站点哪个页面都是如此。 我知道…

Nature Communications|一种快速响应的智能可穿戴嗅觉接口(可穿戴电子/柔性电子/人机交互)

香港城市大学于欣格( Xinge Yu)、北京航空航天大学李宇航(Yuhang Li)、中国特种设备检验研究所赵召(Zhao Zhao)和东京大学Takao Someya团队,在《Nature Communications》上发布了一篇题为“Intelligent wearable olfactory interface for latency-free mixed reality and …

云盘视频保护神器,支持云盘视频加密与在线播放,配合alist使用,超完美!

平时我们保护视频,一般都是采用压缩工具,进行加密打包,然后在上传到网盘存储。这虽然能起到很好的保护,但是有很多问题?比如:无法直接在线播放,还得从网盘中下载后解压,才能进行观看…

【Python语言初识(一)】

一、python简史 1.1、python的历史 1989年圣诞节:Guido von Rossum开始写Python语言的编译器。1991年2月:第一个Python编译器(同时也是解释器)诞生,它是用C语言实现的(后面),可以调…

计算机人工智能前沿进展-大语言模型方向-2024-09-21

计算机人工智能前沿进展-大语言模型方向-2024-09-21 1. AIvril: AI-Driven RTL Generation With Verification In-The-Loop Authors: Mubashir ul Islam, Humza Sami, Pierre-Emmanuel Gaillardon, and Valerio Tenace AIVRIL: 人工智能驱动的RTL生成与验证内循环 摘要 本…

allWebPlugin中间件自定义alert、confirm及prompt使用

allWebPlugin简介 allWebPlugin中间件是一款为用户提供安全、可靠、便捷的浏览器插件服务的中间件产品,致力于将浏览器插件重新应用到所有浏览器。它将现有ActiveX控件直接嵌入浏览器,实现插件加载、界面显示、接口调用、事件回调等。支持Chrome、Firefo…

通信工程学习:什么是WLAN无线局域网

WLAN:无线局域网 WLAN(Wireless Local Area Network),即无线局域网,是一种利用无线技术实现局域网内设备间数据传输的网络系统。以下是对WLAN无线局域网的详细解释: 一、WLAN无线局域网的定义与概述 WLAN通…

python-3n+1数链/233

一:3n1数链题目描述 在计算机科学上,有很多类问题是无法解决的,我们称之为不可解决问题。然而,在很多情况下我们并不知道哪一类问题可以解决,哪一类问题不可解决。现在我们就有这样一个问题,问题如下&#…

Qt-QLabel 添加图片并设置 GIF 图动态效果

Qt-QLabel 添加图片并设置 GIF 图动态效果 一、添加图片资源并设置图片 选择标签,拖拉到界面上,然后选择器属性 picmap   选择设置,在这里添加图片资源   点击左边的加号符号按钮添加前缀,并设置前缀名,如果已经…

C++速通LeetCode中等第20题-随机链表的复制(三步简单图解)

方法图解: class Solution { public:Node* copyRandomList(Node* head) {if ( !head ) {return nullptr;}Node *cur head;// 1. 在原节点的每个节点后创建一个节点while ( cur ) {Node *newNode new Node(cur -> val);newNode -> next cur -> next;cur …

一篇进阶Python深入理解函数之高阶函数与函数式编程

当我们深入探讨了函数的作用域与闭包,了解到函数不仅是代码的执行单元,还能通过闭包完成数据的封装与保护.接下来,我们将进一步挖掘函数的强大特性,尤其是高阶函数与函数式编程,帮助你更全面地理解 Python 中函数的特性与应用. 高阶函数 高阶函数是指接受一个或多个函数作为参…