Linux 操作系统速通

news2024/9/21 22:59:21

一、安装虚拟机

1. VmWare 安装下载

vmware workstation pro 16 下载

win + R 输入 ncpa.cpl 确保网卡正常

2. CentOS 系统下载

CentOS 系统下载

将 CentOS 系统安装到虚拟机

 

3. 查看虚拟机 IP

命令 ifconfig

4. finalShell 安装下载

finalShell 下载

输入用户名一般是 root,密码,虚拟机 ip 地址,端口不用变。

5. 虚拟机快照

保存稳定版的虚拟机状态,如果后续虚拟机宕机不可用了,可以回退状态。

在虚拟机关机状态下,保存快照,保存的速度快很多。

二、Linux 基础命令

Linux 中顶级目录只有一个 /,他表示根目录。所有的文件夹、文件都是在这个根目录下的。

Home 目录表示每个用户在 Linux 系统里属于自己的文件夹目录。路径在 /home/用户名

1. 命令基础格式

command [-options] [paramter]

command:命令本身

-options:可选,控制命令行为细节

paramter:可选,指向目标

示例:ls 是命令,-l 是选项,/home 是目标,表示以列表形式展示/home 下内容

ls -l /home

2. 特殊路径符

.:当前工作目录

..:上级工作目录

~:home 工作目录

cd ~/demo

3. 命令总结

3.1 ls

列出目录下的内容

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

ls:以平铺的形式列出当前工作目录的内容

ls -a:列出全部文件,包括隐藏文件

ls -l:以列表新式展示更多信息

ls -h:易于阅读的形式,配合-a -l 使用

ls -alh /home

3.2 cd

切换工作目录,当没有路径参数时,表示回到用户的 home 目录

cd [路径]

cd /home

3.3 pwd

展示当前工作目录

pwd

3.4 mkdir

创建目录

mkdir [-p] [路径]

-p:自动创建不存在的父目录

mkdir -p /www/pages

3.5 touch

创建文件

touch 路径

touch /www/pages/index.html

3.6 cat

查看文件

cat 路径

cat index.html

3.7 more

查看文件,支持翻页

more 路径

more index.html

3.8 cp

复制文件、文件夹

cp [-r] 被复制路径 复制去路径

-r:用于复制文件夹时使用,表示递归

cp -r /www/pages /www/page

3.9 mv

移动文件、文件夹

mv 被移动文件或文件夹 移动去文件文件夹

mv /www/page /www/pages

3.10 rm

删除文件、文件夹。可以使用通配符 \*,删除匹配的文件。

rm [-r -f] 路径 路径 ... 路径

-r:删除文件夹

-f:强制删除

rm -rf /www/pages/page

3.11 which

查看命令存放在哪里

which 命令

which ls

3.12 find

搜索指定文件,可是使用通配符 \* 进行搜索

find 查找路径 -name 文件名

find /www -name pages

find 查找路径 -size +|-n[kMG]

+|-:大于小于

n:数字

kMG:kb、mb、gb 单位

find /www -size +10M

3.13 grep

从文件中通过关键字过滤文件行

grep [-n] 关键字 路径

-n:可选,表示在结果中显示行号

grep -n yqcoder demo.text

3.14 wc

统计文件行数、单词数

wc [-c -m -l -w] 路径

-c:统计 bytes 数

-m:统计字符数

-l:统计行数

-w:统计单词数

wc -cmlw demo.text

3.15 管道符

管道符:|

将管道左边命令结果作为右边命令输入

ls /usr/bin | wc -l

3.16 echo

在命令行中输出指定内容

echo 输出内容

echo "hi yqcoder"

3.17 tail

查看文件尾部内容,更新文件的最新更改

tail [-f -num] 路径

-f:持续跟踪

-num:查看尾部多少行,默认 10 行

tail -f demo.text

3.18 重定向符

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

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

echo 'hi yqcoder' >> demo.text

3.19 反引号

反引号包裹的内容会当作命令指向

echo`pwd`

4. vim 文本编辑器

vim 文件路径

进入 vim 文本编译器,默认是命令模式,按 i 进入输入模式,按 esc 从输入命令模式,按 shift + : 进入底线命令模式

vim demo.text

4.1 命令模式

i:插入,进入输入模式

a:当前光标位置进入输入模式

I:当前行头进入输入模式

A:当前行尾进入输入模式

o:当前行的下一行进入输入模式

O:当前行的上一行进入输入模式

k:光标向上

j:光标向下

h:光标向左

l:光标向右

0:移动光标到行头

$:移动光标到行尾

PgUp:向上翻页

PgDn:向下翻页

/:进入搜索模式

n:向下继续搜索

N:向上继续搜索

dd:删除整行

ndd:n 表示数字,删除当前行下的多少行

yy:复制当前行

nyy:复制当前行下的多少行

p:粘贴

u:撤销

ctrl + r:反向撤销

gg:跳到行首

G:跳到行尾

dG:从当前行向下全删除

dgg:从当前行开始向上全删除

d$:从光标开始到当前行尾全删除

d0:从光标开始到当前行头全删除

4.2 输入模式

编辑文件内容

4.3 底线命令模式

wq:保存并退出

w:仅保存

q:仅退出

q!:强制退出

set nu:显示行号

set paste:设置粘贴模式

三、Linux 用户和权限

root 用户为最大权限用户,普通用户没权限的操作,它都有。

1. 切换用户

1.1 su

切换用户

su [-] [用户名]

-:可选,切换用户后加载环境变量

用户名:可选,切换用户,不填切换到 root

su - ycoder

1.2. exit

退回上一个用户,快捷键 ctrl + d

exit

1.3. sudo

为普通命令授权,临时以 root 身份执行,需要给普通用户配置 sudo 认证。

sudo 认证:切换到 root,运行 visudo。在最后添加 ycoder ALL=(ALL) NOPASSWD:ALL

sudo 命令

sudo mkdir /ycoder

1.4 查看用户列表

ls /home

2. 用户/用户组权限

需要 root 用户执行

2.1 groupadd

创建用户组

groupadd 用户组名

groupadd kf

2.2 groupdel

删除用户组

groupdel 用户组名

groupdel kf

2.3 useradd

创建用户

useradd [-g -d] 用户名

-g:指定用户组

-d:指定 home 路径

useradd yqcoder -g kf -d /home/yqcoder/user

2.4 userdel

删除用户

userdel [-r] 用户名

-r:删除用户的 home 目录

userdel -r yqcoder

2.5 id

查看用户所属组

id [用户名]

id yqcoder

2.6 usermod

修改用户所属组

usermod -aG 用户组 用户名

usermod -aG kf yqcoder

2.7 getent

查看所有组

getent group

查看所有用户

getent passwd

3. 权限控制信息

[-dl][r-][w-][x-][r-][w-][x-][r-][w-][x-]

[-dl]:- 表示文件,d 表示文件夹,l 表示软连接

第一个[r-][w-][x-]:所属用户权限,r 读权限,w 写权限,x 执行权限

第二个[r-][w-][x-]:所属用户组权限

第三个[r-][w-][x-]:其他用户权限

ls -l

4. 修改权限

4.1 chmod

修改文件权限

chmod [-R] 权限 文件或文件夹

-R:对文件夹内素有内容应用相同操作

chmod -R u=rwx,g=rwx,o=rwx demo.text

4.2 快捷方式

将 r 记为 4,w 记为 2,x 记为 1,- 记为 0。那么上面的命令等同于:

chmod -R 777 demo.text

4.3 chown

修改文件所属用户和用户组权限

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

-R:对文件夹内素有内容应用相同操作

chmod -R yqcoder:kf demo.text

四、Linux 实用操作

1. 快捷键

ctrl + c:强制停止

ctrl + d:退出登出

history:查看历史命令

!命令前缀:自动匹配上一个命令

ctrl + r:搜索历史命令

ctrl + a:光标移动到命令开始

ctrl + e:光标移动到命令结束

ctrl + 左:左跳单词

ctrl + 右:右跳单词

ctrl + l:清屏

clear:清屏

2. yum 软件安装

RPM 包软件管理器,用于安装 Linux 软件。需要使用 root 用户且联网操作。

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

-y:可选,无需手动确认安装或卸载

install:安装

remove:卸载

search:搜索

yum search wget

3. systemctl

控制软件的启动、关闭、开机自启,能被 systemtl 管理的软件称之为服务。比如:NetworkManager 主网络服务、network 副网络服务、firewalld 防火墙服务、sshd,ssh 服务

systemctl start | stop | status | enable | disable 服务名

start:启动

stop:关闭

status:查看状态

enable:开启开机自启

disable:关闭开机自启

systemctl status firewalld

4. ln

创建软连接,将文件、文件夹连接到其他位置。类似于快捷键。

ln -s 被链接文件 连接目的地

-s:创建软连接

ln -s /etc/yum.conf ~/yum.conf

5. date

查看系统的时间

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

-d:按照给定的字符串显示日期,一般用于日期计算。year、Month、day、hour、minute、second

格式化字符串:%Y 年、%y 年份后两位、%M 月份、%d 日、%H 小时、%M 分钟、%S 秒、%s 时间戳

date "+%Y-%m-%d %H:%M:%S"

计算明天的日期

date -d "+1 day"

6. IP 地址、主机名

6.1 IP 地址

ifconfig

6.2 主机名

查看主机名

hostname

修改主机名

hostnamectl set-hostname 主机名

hostnamectl set-hostname centos

6.3 域名解析

域名解析流程:先看本机记录 window 在 C:\Windows\System32\drivers\etc\hosts 下、Linux 在/etc/hosts 下,如果没有,联网询问 DNS。

7. 网络传输

7.1 ping

检查指定网络服务是否联通

ping [-c num] ip 或主机名

-c:检查次数

ping -c 4 baidu.com

7.2 wget

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

wget [-b] url

-b:后台下载,下载进度在 wget-log 文件

wget -b url

7.3 curl

发送 http 网络请求,用于下载文件,获取信息

curl [-O] url

-O:url 是下载连接时,保存文件

获取主机公网 IP

curl cip.cc

7.4 端口

公认端口:1-1023,用于系统内置或知名程序预留端口,如 22 SSH 服务,443 HTTPS 服务

注册端口:1024-49151,用于松散的绑定一些程序/服务

动态端口:49152-65535,临时使用

7.5 nmap

查看端口占用情况

安装

yum -y install nmap

使用

nmap 127.0.0.1

7.6 netstat

查看指定端口占用情况

安装

yum -y install net-tools

netstat -anp | grep 端口号

netstat -anp | grep 22

7.7 新增开放端口

sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent

sudo firewall-cmd --reload

7.8 查看开放端口

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

8. 进程管理

8.1 ps

查看进程

进程信息表示:UD 所属用户 ID,PID 进程 ID,PPID 进程父 ID,C CUP 占用率,STIME 启动时间,TTY 终端序号,TIME 占用 CPU 时间,CMD 启动路径

ps [-e -f]

-e:显示全部进程

-f:展示更多信息

ps -ef

8.2 kill

关闭进程

kill [-9] 进程 ID

-9:强制关闭

kill -9 123

9. 主机状态

9.1 top

查看 CPU、内存占用

top

9.2 df

查看硬盘使用情况

df [-h]

-h:单位显示

df -h

9.3 iostat

查看 CUP、磁盘相关信息

iostat [-x] [num1] [num2]

-x:显示更多信息

num1:数字,刷新间隔

num2:数字,刷新几次

iostat -x 1 3

9.4 sar

查看网络相关统计

sar -n DEV num1 num2

-n:查看网络

DEV:查看网络接口

num1:刷新间隔

num2:时间次数

sar -n DEV 1 3

10. 环境变量

10.1 env

查看环境变量

env

10.2 $

获取环境变量值

echo $PATH

10.3 export

临时设置环境变量

export 变量名=变量值

export name=yqcoder

10.4 永久生效环境变量

针对用户:修改 ~/.bashrc

针对全部用户:/etc/profile

export PATH=$PATH:自定义路径

export PATH=$PATH:/root/myenv

11. 上传、下载

安装 lrzsz

yum -y install lrzsz

11.1 rz

上传

rz

11.2 sz

下载

sz 文件名

sz /www/dist

12. 压缩、解压

12.1 tar

归档文件,将多个文件组装到一个.tar 文件中,文件大小没多少变化。

tar [-c -v -x -f -z -C] 包名 路径...路径

-c:压缩

-v:查看进度

-x:解压

-f:放在最后,要压缩的文件后解压的文件

-z:gzip 格式

-C:解压目的地

将 1.txt 2.txt 压缩成 a.tar

tar -cvf a.tar 1.txt 2.txt

将 1.txt 2.txt 压缩成 a.tar.gz

tar -zcvf a.tar.gz 1.txt 2.txt

解压 a.tar 到 txt 文件夹

tar -xvf a.tar -C txt

解压 a.tar.gz 到 txt 文件夹

tar -zxvf a.tar.gz -C txt

12.2 zip

zip 压缩包

zip [-r] 路径...路径

-r:压缩文件夹是需使用

将 dist 压缩成 dist.zip

zip -r dist.zip dist

12.3 unzip

解压

unzip 压缩包 [-d] 路径

unzip dist.zip -d admin

五、安装部署软件

切换到 root 用户

1. MySQL8.0

1.1 查看是否安装 mysql

rpm -qa | grep -i mysql

1.2 查看 mysql 运行状态

service mysql status

1.3 查看 mysql 对应文件夹

find / -name mysql

1.4 删除安装包

rpm -ev mysql80-community-release-el7-7.noarch

1.5 删除系统中关联文件夹

rm -rf mysql关联文件

1.6 下载 mysql 安装包

wget https://dev.mysql.com/get/mysql80-community-release-el8-3.noarch.rpm

1.7 安装 mysql 安装包

yum install mysql80-community-release-el8-3.noarch.rpm

1.8 查看 mysql 安装

yum repolist all | grep mysql

1.9 安装 mysql 服务器

yum install mysql-community-server

1.10 安装服务报错执行

当执行安装 mysql 服务器报错时执行,然后再执行安装 mysql 服务器命令。

yum module disable mysql

1.11 启动 mysql 服务

systemctl start mysqld

1.12 检查 mysql 服务状态

systemctl status mysqld

1.13 mysql 开机自启

systemctl enable mysqld

systemctl daemon-reload

1.14 获取登录密码

grep 'temporary password' /var/log/mysqld.log

1.15 本地登录 mysql

mysql -uroot -p

1.16 修改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'P@ssw0rd123';

1.17 设置用户密码策略的安全强度

set global validate_password.policy=LOW;

1.18 设置密码长度不少于 4

set global validate_password.length=4;

1.19 查看密码策略

SHOW VARIABLES LIKE 'validate_password%';

1.20 刷新密码生效

flush privileges;

1.21 查看数据库用户

select user,host from user;

1.21 更改远程连接权限

update user set host='192.168.181.128' where user='root';

update user set host='%' where user='root';

1.22 授权 root 远程登录

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

FLUSH PRIVILEGES;

2. Nginx

2.1 安装 EPEL 存储库

yum install epel-release

2.2 安装 Nginx

yum install nginx

2.3 启动 Nginx 服务

systemctl start nginx

2.4 设置 Nginx 服务开机自启

systemctl enable nginx

2.5 查看 Nginx 配置

cat /etc/nginx/nginx.conf

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

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

相关文章

高标准农田监测设备—农田环境的实时监测和精准管理

TH-Q3高标准农田监测设备是现代农业生产中不可或缺的重要工具,它们通过集成物联网、大数据、人工智能等先进技术,实现了对农田环境的实时监测和精准管理。以下是对高标准农田监测设备的详细介绍: 设备组成 高标准农田监测设备通常由多个子系统…

出现 No mapping for DELETE/GET等

出现 No mapping for DELETE/GET等 错误一:请求url不对 修改前 如下图可知后端请求url为http://localhost:8080/user/addressBook 运行后控制台出现 发现后端请求url比前端请求url少了/ 改正: 在DeleteMapping后面加上 / DeleteMapping("/&quo…

欧科云链对话香港大学、零壹智库:监管加速,市场增长何时就位?

香港Web3行业近期在广泛讨论一个话题——稳定币。它是虚拟资产和Web3市场的重要分支,也是连接传统金融与虚拟资产市场重要的“桥梁”。随着全球Web3 合规进程加速,各国也在积极推进本土稳定币监管及发展,稳定币市场格局正在迎来变革。近日&am…

堆排序以及向上、向下调整算法的时间复杂度推导及实现(超详细)

什么是堆排序? 堆排序是由堆这种数据结构所设计的一种排序算法 堆的分类: 大根堆:每个父结点的值都大于子结点 小根堆 :每个父结点的值都小于子结点 在了解完堆之后,需要先了解建堆,建堆有向上建堆建大…

JavaWeb——CSS的使用

CSS 层叠样式表(英文全称:(cascading stle sheets)能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力,简单来说,CSS用来美化页面 一、CSS的引入方式: 1.行内式:通过元素开始标…

清除 Nuxt 数据缓存:clearNuxtData

title: 清除 Nuxt 数据缓存:clearNuxtData date: 2024/8/6 updated: 2024/8/6 author: cmdragon excerpt: 摘要:本文详细介绍了Nuxt.js框架中的clearNuxtData方法,用于清除useAsyncData和useFetch缓存的数据、错误状态和待处理promises&am…

Sentine 源码分析之--AuthoritySlot、SystemSlot、GatewayFlowSlot

前言: 上一篇我对 Sentinel 中统计数据部分的 NodeSelectorSlot、ClusterBuilderSlot、StatisticSlot 的相关源码进行了分析,本篇我们开始分析规则相关的源码。 Sentinel 系列文章传送门: Sentinel 初步认识及使用 Sentinel 核心概念和工…

国家机构选用NAS存储的要求是什么?

西北航天基地采用Infortrend NAS存储做影视后期及共享 国家机构航天基地每天都有升空任务,记录下的视频数据分发给对应的项目组的NAS存储设备上,方便每个项目组做分析总结、对外宣传及学术交流的使用需求,因此选用了Infortrend桌面级NAS存储…

数据采集器与条码扫描器的区别

在条码二维码的应用领域中,数据采集器和条码扫描器是其应用过程两种核心硬件设备,均具备独特的功能与应用场景,您是否真正了解数据采集器和条码扫描器之间的细微差别?这一区别对于您的项目开发成本和工作效率提升有着至关重要的影…

VM16中安装Linux虚拟机

VM16下安装Linux虚拟机 注意这里只安装虚拟机,并没有按照Linux操作系统,按装操作系统请看后续文章 点击“创建新的虚拟机” 选择自定义创建虚拟机 选择虚拟机的硬件兼容性 暂时不选择系统镜像文件我们选择稍后安装 选择操作系统类型和版本 命…

PEER:基于高效专家检索的Transformer模型扩展新方法

谷歌DeepMind提出了一种名为PEER的参数高效专家检索机制,利用产品密钥技术从超过百万个微型专家库中进行稀疏检索,从而提高模型效率和性能,有效解决了Transformer模型规模扩展带来的计算挑战。 论文介绍 在 Transformer 架构中,计…

ADC的一些细节2

一,转换时间 ADC 是挂载在 APB2 总线(PCLK2)上的,经过分频器得到 ADC 时钟(ADCCLK),最高 14 MHz。 转换时间采样时间12.5个周期 12.5个周期是固定的,一般我们设置 PCLK272M&#x…

基于CentOS Stream 9平台搭建Nacos2.4.0.1集群,并使用OpenResty反向代理集群

目录展示 Nacos2.4.0.1集群搭建1. 下载2. 解压3.修改配置3.1分别修改下启动类中JDK路径以及启动大小3.2 分别配置数据源 修改端口去掉前面的#注释(修改数据库地址、数据库用户名、密码)If use MySQL as datasource:Count of DB:Connect URL of DB:密钥鉴…

空气质量传感器 - 从零开始认识各种传感器【第二十八期】

空气质量传感器|从零开始认识各种传感器 1、什么是空气质量传感器? 空气质量传感器是一种检测空气中污染物浓度的设备,广泛应用于环境监测、智能家居、工业控制和健康管理等领域。 2、空气质量传感器是如何工作的? 对于每个人都关心的空气质…

java学习day17MyBatis

Mybatis 数据持久化是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中数据模型的统称。例如,文件的存储、数据的读取以及对数据表的增删改查等都是数据持久化操作 MyBatis支持定制化SQL、存储过程以及高级映射,可以在实体类和…

【socket编程】预备知识 {IP地址和MAC地址;端口号;认识TCP/UDP协议;网络字节序;socket编程入门}

一、IP地址和MAC地址 源IP地址和目的IP地址 IP地址用于唯一标识网络中的一台主机在IP数据包头部中(网络层), 有两个IP地址, 分别叫做源IP地址, 和目的IP地址这两个地址在网络传输过程中是不变的,因为它们是数据包的一部分,并且用…

Serverless 1

一、云原生应用 云原生应用覆盖到: 大数据,人工智能,边缘计算,区块链等 服务代理:envoy API 网关:APISIX 服务网格:Istio 服务发现:CoreDNS 消息和流式处理:kafka Serve…

打造高效校园办公:智慧校园行政办公合同类型

智慧校园行政办公中的合同类型功能是为了满足校园内各种合同管理需求而设计的一套数字化管理系统。该功能旨在提高合同管理效率,简化合同处理流程,确保合同内容的准确性和合规性。 智慧校园行政办公中的合同类型功能支持多种类型的合同管理,包…

【书生大模型实战营第三期 | 基础岛第1关-书生大模型全链路开源体系】

学习心得:《书生浦语大模型全链路开源开放体系》 摘要 通过观看哔哩哔哩上的《书生浦语大模型全链路开源开放体系》视频,我对开源大模型及其工具链有了更深入的了解。视频由社区贡献者汪周谦讲解,不仅介绍了书生浦语大模型的架构和功能&…

Excel公式与函数(运算符,计算限制,错误检查)(一)

公式 公式概念 公式 是以“”号为引导,用过运算符按照一定的顺序组合进行数据运算处理的等式,函数 则是按特定算法执行计算的产生一个或一组结果的预定义的特殊公式。 公式组成要素 公式的组成要素为“”,运算符,单元格引用&a…