Linux学习笔记
2024-09-19 14:37:32 0 举报
AI智能生成
Linux学习笔记_NEW是一份关于Linux操作系统的详细指南,旨在帮助用户深入了解Linux的基本概念、命令和使用技巧。这份笔记涵盖了Linux文件系统、权限管理、网络配置、包管理、shell脚本、编辑器、版本控制、云计算等多个方面。通过丰富的实例和详细的解释,用户能够快速掌握Linux操作系统的使用方法和技巧,提高工作效率。
作者其他创作
大纲/内容
安装指引
https://blog.csdn.net/qq_57492774/article/details/131772646
终端工具:WindTerm
终端界面
https://blog.csdn.net/peter_52/article/details/121958639
子主题
切换鼠标在虚拟机和主机间的快捷键:右Ctrl
指引
1
2
3
4
5
6
7
8
9
10
11
12
linux命令大全
https://man.niaoge.com/
https://www.w3cschool.cn/
目录结构
Bin:全称 binary,含义是二进制。该目录中存储的都是一些二进制文件,文件都是可以被运行的。
Dev:该目录中主要存放的是外接设备,例如盘、其他的光盘等。在其中的外接设备是不能直接被使用的,需要挂载(类似 windows 下的分配盘符)。
Etc:该目录主要存储一些配置文件。Home:表示“家”,表示除了 root 用户以外其他用户的家目录,类似于 windows 下的 User/用户目录。
Proc:process,表示进程,该目录中存储的是Lnux运行时候的进程。
Root:该目录是root用户自己的家目录。
Sbin: 全称 super binary,该目录也是存储一些可以被执行的二进制文件,但是必须得有 super权限的用户才能执行。
Tmp:表示“临时”的,当系统运行时候产生的临时文件会在这个目录存着。
Usr:存放的是用户自己安装的软件。类似于 windows 下的 program files。
Var:存放的程序/系统的日志文件的目录。
Dev:该目录中主要存放的是外接设备,例如盘、其他的光盘等。在其中的外接设备是不能直接被使用的,需要挂载(类似 windows 下的分配盘符)。
Etc:该目录主要存储一些配置文件。Home:表示“家”,表示除了 root 用户以外其他用户的家目录,类似于 windows 下的 User/用户目录。
Proc:process,表示进程,该目录中存储的是Lnux运行时候的进程。
Root:该目录是root用户自己的家目录。
Sbin: 全称 super binary,该目录也是存储一些可以被执行的二进制文件,但是必须得有 super权限的用户才能执行。
Tmp:表示“临时”的,当系统运行时候产生的临时文件会在这个目录存着。
Usr:存放的是用户自己安装的软件。类似于 windows 下的 program files。
Var:存放的程序/系统的日志文件的目录。
目录
在 Linux 中,“~”表示当前用户的主目录,而“/”表示根目录。
“~”会根据登录的用户不同而指向不同的主目录,
比如用户“user1”登录,“~”就指向“/home/user1”。
“/”则是整个文件系统的起点,包含了系统的关键目录和文件,
如“/bin”、“/etc”、“/usr”等。
“~”会根据登录的用户不同而指向不同的主目录,
比如用户“user1”登录,“~”就指向“/home/user1”。
“/”则是整个文件系统的起点,包含了系统的关键目录和文件,
如“/bin”、“/etc”、“/usr”等。
命令/指令
指令与选项
什么是 Linux 的指令?
指在 Linux 终端(命令行)中输入的内容就称之为指令。
一个完整的指令的标准格式:Linux 通用的格式:#指令主体 [选项]【操作对象]
一个指令可以包含多个选项,操作对象也可以是多个
例如:需要让张三同学帮忙去楼下小卖铺买一瓶农夫山泉水和清风餐巾纸,在这个指令中“买
东西”是指令的主体,买的水和餐巾纸是操作的对象,农夫山泉、清风是操作的选项。
指在 Linux 终端(命令行)中输入的内容就称之为指令。
一个完整的指令的标准格式:Linux 通用的格式:#指令主体 [选项]【操作对象]
一个指令可以包含多个选项,操作对象也可以是多个
例如:需要让张三同学帮忙去楼下小卖铺买一瓶农夫山泉水和清风餐巾纸,在这个指令中“买
东西”是指令的主体,买的水和餐巾纸是操作的对象,农夫山泉、清风是操作的选项。
在linux中有一个特殊的符号:"~",表示当前用户的家目录,切换方式:#cd ~
图例
TAB键补全命令
查看命令帮助:#命令 --help
基础命令
ls
含义:ls(list)
用法1:#ls
含义:列出当前工作目录下的所有文件/文件夹的名称
用法 2:#ls 路径
含义:列出指定路径下的所有文件/文件夹的名称
关于路径(重要):
路径可以分为两种:相对路径、绝对路径。
相对路径:相对首先得有一个参照物(一般就是当前的工作路径);
写法:通常用到2个符号:“./”(表示当前目录下)、“../"(表示上一级目录下)
绝对路径:绝对路径不需要参照物,直接从根"/"开始寻找对应路径;
含义:列出当前工作目录下的所有文件/文件夹的名称
用法 2:#ls 路径
含义:列出指定路径下的所有文件/文件夹的名称
关于路径(重要):
路径可以分为两种:相对路径、绝对路径。
相对路径:相对首先得有一个参照物(一般就是当前的工作路径);
写法:通常用到2个符号:“./”(表示当前目录下)、“../"(表示上一级目录下)
绝对路径:绝对路径不需要参照物,直接从根"/"开始寻找对应路径;
加选项
#ls 选项 路径:在列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示
常见用法
用法1:#ls -l 路径:-l:表示list,表示以详细列表的形式进行展示
用法2:#ls -la 路径:-a:all表示显示所有的文件/文件夹(包含隐藏文件/文件夹)
1.第一列表示文档类型,”-“表示文件,”d“表示文件夹
2.”root“表示所属用户和用户组
3.数字列表示文字大小,单位字节
4.Aug 月份
5.在linux中,隐藏文档都是以”.“开头
2.”root“表示所属用户和用户组
3.数字列表示文字大小,单位字节
4.Aug 月份
5.在linux中,隐藏文档都是以”.“开头
用法3:#ls -lh 路径:列出指定路径下的所有文件/文件夹的名称,以列表的形式
且在显示文档大小的时候以可读性较高的形式显示。
且在显示文档大小的时候以可读性较高的形式显示。
颜色含义
蓝色:文件夹
白色/黑色:文件
绿色:其权限为拥有所有权限
pwd
pwd含义:print working directory 打印当前工作目录
图例
cd
cd 含义:change directory 改变目录,用于切换当前工作目录
”../“:表示上一级目录下
语法
语法1:#cd 路径
案例:
1.在绝对路径切换到/usr/local
2.当前在/usr/local下,需要用相对路径切换目录到
home目录下的admin用户的家目录中
1.在绝对路径切换到/usr/local
2.当前在/usr/local下,需要用相对路径切换目录到
home目录下的admin用户的家目录中
语法2:#cd
直接回到当前家目录
绝对路径是从根目录(/)开始的完整路径。例如,/home/user/documents/file.txt 就是一个绝对路径,无论当前工作目录在哪里,都能准确地定位到指定的文件或目录。
相对路径是相对于当前工作目录的路径。例如,如果当前工作目录是 /home/user,那么 documents/file.txt 就是一个相对路径,表示在当前目录下的 documents 目录中的 file.txt 文件。
相对路径是相对于当前工作目录的路径。例如,如果当前工作目录是 /home/user,那么 documents/file.txt 就是一个相对路径,表示在当前目录下的 documents 目录中的 file.txt 文件。
mkdir
mkdir含义:make directory 创建目录/目录
语法
语法1:#mkdir 路径(可以是文件夹名称或是包含名称的一个完整路径)
图例
语法2:#mkdir -p 路径(创建多层不存在的目录)
不加将会报错
p表示 “parents”(父目录)
语法3:#mkdir 路径1 路径2 路径3 ...(一次性创建多个目录)
较少使用
创建a1 a2 a3 3个文件夹
创建a1 a2 a3 3个文件夹
touch
touch含义:Touch 创建文件
语法:#touch 路径(可以文件名或是路径)
1.创建一个文件:linux.txt
2.使用touch在yunwei_x目录创建linux_1.txt
3.ls yunwei_x/a1
2.使用touch在yunwei_x目录创建linux_1.txt
3.ls yunwei_x/a1
cp
cp含义:copy 拷贝文件/文件夹到指定的位置
语法
语法1:#cp 被复制的文档路径 文档到被复制到的路径
复制时,建议保持文件名称不变
语法2:#cp -r 表示递归复制
复制文件夹下的文件及文件夹(含文件夹下的文件)
r 代表 recursive,意思是 “递归的”
复制过程可以对被复制的文件进行重命名
一般不这么做:复制的同时,对新位置文件进行重命名
mv
mv含义:move 移动(剪切):移动文档到新的位置
语法
#mv 需要移动的文档路径 需要保存的位置路径
移动mv_test.txt 到a/b/c下
移动文件夹c到a1目录下
重命名
语法与移动一致
文件重命名
文件夹重命名
rm
rm含义:remove表示移除/删除文档,可删除多个文件/文件夹
语法:#rm 选项 需要删除的文档路径
选项
-f:force 强制删除
不想频繁确认,可以在指令中添加
-r:表示递归
用于删除文件夹
r 代表 recursive,意思是 “递归的”
删除单个文件
不带选项删除文件,会有提示,需要输入Y/N
删除文件夹
删除a1目录
删除公共特性的文件,加通配符:”*“
rm -f linux_*:删除”linux_“开头的文件/文件夹
vim
vim含义:是一款文本编辑器(编辑器之神)
按i,进入编辑界面,按ESC退出编辑,再按下列命令:
1.如果没有对文件进行修改,要直接退出,输入以下命令:
:q(:是命令符)
2.如果对文件进行了修改,但不想保存修改直接退出,输入:
:q!
3.如果对文件进行了修改并且想要保存修改后退出,输入:
:wq
1.如果没有对文件进行修改,要直接退出,输入以下命令:
:q(:是命令符)
2.如果对文件进行了修改,但不想保存修改直接退出,输入:
:q!
3.如果对文件进行了修改并且想要保存修改后退出,输入:
:wq
语法:#vim 文件的路径,打开一个文件(可以存在/不存在)
在没有按下其他按键时,按下shift+: 输入q回车进行退出
Vi 和 Vim 的核心功能和命令是相似
输出重定向
含义:一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果保存到文件中进行分析/统计,则这时候需要用到重定向。
符号:
">":覆盖输出,会覆盖掉原先文件内容
“>>”:追加输出,不会覆盖掉原先文件内容
">":覆盖输出,会覆盖掉原先文件内容
“>>”:追加输出,不会覆盖掉原先文件内容
语法:#正常的执行执行>/>>文件的路径,注意文件可以不存在,不存在则自动新建
示例:
使用覆盖/追加重定向,保存 ls -a 的执行结果,保存到当前目录下的ls.txt,执行vim查看结果
cat
cat含义:有直接打开一个文件的功能,不需要进行退出操作
只查看,不需要编辑就用cat
还可以对文件进行合并
语法
语法1:#cat 文件路径
语法2:#cat 待合并的文件路径1 待合并的文件路径2 ...> 合并之后的文件路径
图例,将1.txt和2.txt的内容合并到3.txt(配合重定向)
tar
作用:用于创建、查看和提取归档文件
语法
语法1:创建归档文件
压缩的归档文件:tar -czvf archive.tar.gz file1 file2 dir1
-c表示创建新的归档文件。
-v表示显示详细信息。
-f指定归档文件名,这里是archive.tar。后面跟着要归档的文件和目录(file1、file2和dir1)。
创建一个压缩的 tar 归档文件(例如使用 gzip 压缩)
-z表示使用 gzip 压缩。生成的文件扩展名为.tar.gz
-c表示创建新的归档文件。
-v表示显示详细信息。
-f指定归档文件名,这里是archive.tar。后面跟着要归档的文件和目录(file1、file2和dir1)。
创建一个压缩的 tar 归档文件(例如使用 gzip 压缩)
-z表示使用 gzip 压缩。生成的文件扩展名为.tar.gz
语法2:解压文件
当前文件:tar -xf filename.tar
-x表示提取(解包)。
-f后面指定要解压的 tar 文件的文件名。
-x表示提取(解包)。
-f后面指定要解压的 tar 文件的文件名。
指定路径:tar -xf filname.tar -C 路径
-C:“创建(create)” 新的归档文件
-C:“创建(create)” 新的归档文件
-C(大写C)
进阶命令
df -h
作用:“disk free” 的缩写,意思是 “磁盘空闲”,查看磁盘的空间,已较高可读性较高的形式展示大小
h 代表 human-readable,意思是 “人类可读的”
h 代表 human-readable,意思是 “人类可读的”
语法:#df -h
图例
du与df的区别:想知道某个目录或文件占用了多少空间,使用 du;如果想了解整个文件系统的空间使用概况,使用 df。
free -m
作用:查看内存使用情况,已MB为单位
free表示 “空闲、释放”,-m 选项表示以兆字节(Megabyte)为单位显示内存信息。
free表示 “空闲、释放”,-m 选项表示以兆字节(Megabyte)为单位显示内存信息。
语法:#free -m
可以加-h
其他解释
SWAP:当系统真实内存不够用的时候,可以临时使用磁盘来充当内存
avilable:可利用的
head
作用:查看一个文件的前N行,如果不指定,默认显示前10行
语法:#head -n(n表示数字)文件路径
查看前5行
n 代表 number,意思是 “数量、数字”
tail
作用
-n :查看一个文件的末n行,如果不指定,默认显示后10行
-F :查看一个文件的动态变化
F代表 Follow,意思是 “跟随、跟踪”
语法
语法1:#tail -n 文件路径
语法2:#tail -F文件路径
要用大写的F
退出:ctrl+c
less
作用:查看文件,以较少的内容输出,按下辅助功能键:数字+回车+空格键+上下方向键查看更多
语法:#less 需要查看的文件路径
退出:q
wc
作用:统计文件内容信息:行数、单词数、字节数
wc 是单词 word count 的缩写,意思是 “单词计数”依照空格判断单词数量。
wc 是单词 word count 的缩写,意思是 “单词计数”依照空格判断单词数量。
语法
#wc -lwc 需要统计的文件路径
-l:lines表示行数
常用
wc -l filename :lines,只统计文件的行数。
wc -w filename :只统计文件的单词数。
wc -c filename :只统计文件的字节数。
wc -w filename :只统计文件的单词数。
wc -c filename :只统计文件的字节数。
date
作用:表示操作时间日期(读取、设置)
%F:表示完整的年月日
%T:表示完整的时分秒
%Y:表示四位年份
%m:表示两位数月份(带前导0)
%d:表示日期(带前导0)
%H:表示小时(带前导0)
%M:表示分钟(带前导0)
%S:表示秒数(带前导0)
%F:表示完整的年月日
%T:表示完整的时分秒
%Y:表示四位年份
%m:表示两位数月份(带前导0)
%d:表示日期(带前导0)
%H:表示小时(带前导0)
%M:表示分钟(带前导0)
%S:表示秒数(带前导0)
语法
语法1:#date
CST:中国标准时间China Standard Time
语法2:#date +%F
注意大小写:date +%F 等价于:date +%Y-%m-%d
语法3:#date "+%F %T"(引号表示让“年月日时分秒”成为一个不可分割的整体)
注意大小写,等价于:date "+%Y-%m-%d %H: %M: %S"
语法4:
作用:获取之前或者之后的某个时间(用于数据备份)
#date "-1 day" "+%F %T":输出一天前的时间
图例
#date -d "-1 year" "+%F %T"
图例
设置时间:#sudo date -s "日期 时间"
sudo date -s "2024-08-13 09:47:50"
“sudo” 全称为 “superuser do” ,用于以管理员(超级用户)权限来执行其他命令
“sudo” 全称为 “superuser do” ,用于以管理员(超级用户)权限来执行其他命令
cal
作用:calendar”(日历),用来操作日历
语法
语法1:#cal 直接输出当前月份的日历
语法2:#cal -3表示输出上一个月+本月+下个月的日历
语法3:#cal -y 表示输出某一个年份的日历
clear/ctrl+L
作用:清除终端中已经存在的命令和结果(信息)
语法:#clear
注意:该命令并不是真的清除之前的的信息,而是把之前的信息隐藏到了上面,通过滚轮可以查看以前的信息。
管道
管道符:|,管道一般可以用于“过滤”,“特殊”,“扩展处理”;
以管道作为分界线:前面的命令有个输出,后面需要先输入,然后再过滤,最后再输出,通俗的讲就是管道前面的输出就是后面指令的输入,实现了命令之间的数据传递和协同工作。
以管道作为分界线:前面的命令有个输出,后面需要先输入,然后再过滤,最后再输出,通俗的讲就是管道前面的输出就是后面指令的输入,实现了命令之间的数据传递和协同工作。
语法:管道不能单独使用,必须需要配合前面所讲的一些指令来一起使用,只要用于辅助作用
用法
过滤:ls |grep
grep:主要用于过滤
#ls /|grep y:需要通过管道查询出根目录下包含"Y"字母的文档
查看该目录下3.txt文件中含有字母"d"的内容
特殊:cat |less
#cat 路径|less
扩展处理:ls |wc -l
#ls 路径|wc -l :查看用户主目录下文档个数
高阶指令
hostname
作用:操作服务器的主机名(读取、设置)
语法
语法1:#hostname
表示输出完整的主机名
语法2:#hostname -f
表示输出当前主机名中的FQDN(完全限定域名)
f 代表 fully qualified domain name,意思是 “完全限定域名”。
id
作用:查看一个用户的一些基本信息(用户id,用户组id,附加组id...),该指令如果不指定用户则默认当前用户
语法
语法1:#id
显示当前用户的基本信息
语法2:#id 用户名
显示指定用户的基本信息
验证上述信息是否正确:
1.验证用户信息:通过文件/etc/passwd
2.验证用户组信息:通过文件/etc/group
1.验证用户信息:通过文件/etc/passwd
2.验证用户组信息:通过文件/etc/group
#cat etc/passwd
#cat etc/group
whoami
作用:“我是谁?”显示当前登录的用户名,一般用于shell脚本,用于获取当前操作的用户名方便记录日志。
语法:#whoami
ps -ef
作用:主要用于查看当前服务器的进程信息
ps:是 “process status” 的缩写,即进程状态
选项:
-e:等价于“A”,表示列出全部的进程
-f:显示全部的列(显示全字段)
ps:是 “process status” 的缩写,即进程状态
选项:
-e:等价于“A”,表示列出全部的进程
-f:显示全部的列(显示全字段)
-e 选项中的 e 代表 all processes,意思是 “所有进程”。
-f 选项中的 f 代表 full format listing,意思是 “完整格式列表”。
-f 选项中的 f 代表 full format listing,意思是 “完整格式列表”。
语法:#ps -ef
UID:该进程执行的用户id;
PID:进程id;
PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程;
C:CPU的占用率,其形式是百分比;
STIME:进行启动的时间;
TTY:终端设备,发起该进程的设备识别符号,如果显示的“?”则表示该进程并不是终端发起;
TIME:进程的执行时间;
CMD:该进程的名称或对应的路径。
PID:进程id;
PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程;
C:CPU的占用率,其形式是百分比;
STIME:进行启动的时间;
TTY:终端设备,发起该进程的设备识别符号,如果显示的“?”则表示该进程并不是终端发起;
TIME:进程的执行时间;
CMD:该进程的名称或对应的路径。
#ps -ef |grep 进程名称
#ps -ef |grep postix:在ps的结果中过滤出想要查看的进程状态。
top
作用:查看服务器进程占的资源
PID :进程Id;
USER:该进程对应的用户;
PR:优先级;
VIRT:虚拟内存;
RES:常驻内存;
SHR:共享内存;
计算一个进程实际使用的内存=常驻内存(RES)-共享内存(SHR)
S:表示进行的状态(sleeping,其中s表示睡眠,R表示运行);
%Cpu:表示CPU的占用百分比;
%MEM:表示内存的占用百分比;
TIME:执行时间;
COMMAND:进程的名称或者路径;
USER:该进程对应的用户;
PR:优先级;
VIRT:虚拟内存;
RES:常驻内存;
SHR:共享内存;
计算一个进程实际使用的内存=常驻内存(RES)-共享内存(SHR)
S:表示进行的状态(sleeping,其中s表示睡眠,R表示运行);
%Cpu:表示CPU的占用百分比;
%MEM:表示内存的占用百分比;
TIME:执行时间;
COMMAND:进程的名称或者路径;
语法
1(数字):当服务器拥有多个CPU的时候使用,“1”快捷键来切换是否显示各个CPU的详细信息
P:表示将结果按照CPU使用率进行降序排列
M:表示将结果按照内存(MEM)的降序
退出:按“q”
du -sh
作用:“disk usage”(磁盘使用情况)的缩写,用于快速查看当前目录或指定文件 / 目录所占用的磁盘空间大小,以一种更易读的方式显示。
du与df的区别:想知道某个目录或文件占用了多少空间,使用 du;如果想了解整个文件系统的空间使用概况,使用 df。
语法
语法:#du -sh 目录路径
-s 选项中的 s 代表 summarize,意思是 “汇总、总结”。
-h 选项中的 h 代表 human-readable,意思是 “人类可读的”,即以更易读的方式(如合适的单位)显示磁盘使用量。
-h 选项中的 h 代表 human-readable,意思是 “人类可读的”,即以更易读的方式(如合适的单位)显示磁盘使用量。
语法2
此命令会以人类可读的方式(-h选项)显示当前目录下一级目录的占用空间大小,
--max-depth=1限定只显示一级深度的目录。
|通过管道符
-r表示逆序排序,即从大到小排列
sort用于对文本文件的内容进行排序
du -h --max-depth=1 | sort -hr
--max-depth=1限定只显示一级深度的目录。
|通过管道符
-r表示逆序排序,即从大到小排列
sort用于对文本文件的内容进行排序
du -h --max-depth=1 | sort -hr
find
作用:用于查找文件
语法:#find 路径范围 选项 选项的值
-name:按照文档名称进行搜索(支持模糊搜索)
-type:按照文档的类型进行搜索,f表示文件,d表示目录
-name:按照文档名称进行搜索(支持模糊搜索)
-type:按照文档的类型进行搜索,f表示文件,d表示目录
在根目录根据文件名搜索文件“init.d”
在/etc下查找*.conf的文件,并用管道命令统计数量
find /etc -name *.conf |wc -l
find /etc -name *.conf |wc -l
f,find /etc/iproute2 -type f |wc -l
d
子主题
service
作用:用于控制一些软件的服务启动/停止/重启
语法:#service 服务名 start/stop/restart
例:需要启动本机安装的Apache(网站服务器软件),其服务名httpd.conf
kill
作用:表示杀死进程(当遇到僵尸进程或出于某种原因需要关闭进程的时候)
语法
语法1:#kill 进程PID,需要配合ps 一起使用
语法2:#killall 进程名称
ifconfig或ip
作用:用于操作网卡的相关命令
语法:#ifconfig,获取网卡信息
语法:#ip addr/ip a
reboot
作用:重新启动计算机
语法:
语法1:#reboot
语法2:#reboot -w
模拟重启但不重启(只写关机与开机的日志信息,用于测试)
w 代表 write,表示将重启操作记录到 /var/log/wtmp 日志文件中
shutdown
作用:关机(慎用)
#init 0
#halt
#poweroff
语法
语法1:#shutdown -h now
立即关机
语法2:#shutdown -h 12:00
1.定时关机,并增加提醒
2.ctrl+c 关机取消,7.x版本以后用shutdown -c
2.ctrl+c 关机取消,7.x版本以后用shutdown -c
h 这个选项的作用是让系统关机(halt)
uptime
作用:输出计算机持续在线时间
语法:#uptime
图例
uname
作用:获取操作系统相关信息
语法
语法1:#uname
图例
语法2:#uname -a
获取计算机详细信息(类型、版本、主机名、内核版本、发布时间、开源计划)
uname 是 “Unix name” 的缩写,意思是 “Unix 名称”
-a 选项中的 a 代表 “all”,所以 uname -a 用于显示系统的所有相关信息,包括内核名称、主机名、内核版本、硬件架构等
-a 选项中的 a 代表 “all”,所以 uname -a 用于显示系统的所有相关信息,包括内核名称、主机名、内核版本、硬件架构等
netstat -tnlp
作用:查看网络连接状态
语法
语法1:#netstat -tnlp
选项说明:
-t:表示只列出TCP协议的连接;
-n:表示将地址从字母组合转换成ip地址,将协议转换成端口号;
-l:表示过滤出“state(状态)”列中其值为LISTEN的连接;
-p:显示发起链接对应连接进程PID、进程名称。
-t:表示只列出TCP协议的连接;
-n:表示将地址从字母组合转换成ip地址,将协议转换成端口号;
-l:表示过滤出“state(状态)”列中其值为LISTEN的连接;
-p:显示发起链接对应连接进程PID、进程名称。
-t 选项中的 t 代表 TCP,用于显示 TCP 协议相关的连接信息
-p 选项中的 p 代表 program,用于显示与每个连接相关的进程 ID 和进程名称。
-l 选项中的 l 代表 listening,用于显示处于监听状态的套接字。
-n 选项中的 n 代表 numeric,以数字形式显示地址和端口号,而不进行名称解析
-p 选项中的 p 代表 program,用于显示与每个连接相关的进程 ID 和进程名称。
-l 选项中的 l 代表 listening,用于显示处于监听状态的套接字。
-n 选项中的 n 代表 numeric,以数字形式显示地址和端口号,而不进行名称解析
man
作用:manual手册(包含linux中全部命令的手册)
语法:#man 命令
退出:q
练习
1.如何在命令行中光标前后的命令
光标前:ctrl+u
光标后:ctrl+k
2.如何删除/tmp下所有A开头的文件
#rm -f /tmp/A*
3.系统重要文件备份,如何将/etc/passwd备份到/tmp目录下
图例
4.如何查看系统最后创建的3个用户
图例
5.什么命令可以统计当前系统中一共有多少账户
图例
#cat /etc/passwd |wc -l
6.如何查看/etc/passwd的头3行和尾3行
tail -3 etc/passwd
head -3 etc/passwd
7.查看/etc所占的磁盘空间
图例
8.如何只删除/tmp下所有文件
#rm -rf /tmp/*
不加删除tmp文件,所以加*
VIM
重点是光标的移动、模式切换、删除、查找、替换、复制、粘贴、撤销命令的使用
vim的三种模式(大众认知)
命令模式(默认):不能对文件直接编辑,可以输入快捷键进行一些操作(删除行、限制行、移动光标、粘贴等)
光标的移动操作
行首:按键:shift+^
行尾:shift+$
首行:gg
末行:G
翻屏
上翻
ctrl+b
Pageup
下翻
ctrl+f
Pagedown
光标的复制操作
复制光标所在行
复制:yy
粘贴:p,想要粘贴的地方按下p键
复制多行
复制:数字 yy,向下复制,包含当前行
粘贴:p,想要粘贴的地方按下p键
剪切/删除
光标所在行:dd,
向下剪切/删除:数字dd,向下删除,包含当前行
剪切/删除光标所在的当前行,但是删除之后下一行不上移:D
严格意义是剪切命令,如果不粘贴就是删除效果
撤销/恢复
撤销:u(undo)
恢复:ctrl+r,取消之前撤销的操作
扩展
快速将光标移动到指定的行数:数字G
以当前光标为准向上/下/左/右移动N行:数字+方向键
多个文件切换
查看已打开的文件:":files"
%a的位置会有2种显示的可能:
%a(active)表示当前正在打开的窗口
#:表示上一个打开的文件
%a(active)表示当前正在打开的窗口
#:表示上一个打开的文件
切换文件方式
如果需要指定切换文件名称:“:open 已经打开的文件名”
如果编辑了文档,需要先保存,才能切换到另一个文件
如果编辑了文档,需要先保存,才能切换到另一个文件
可以通过其他命令切换上一个文件/下一个文件:
":bp":表示切换到上一个缓冲区(buffer previous)
":bn”:表示切换到下一个缓冲区(buffer next)
":bp":表示切换到上一个缓冲区(buffer previous)
":bn”:表示切换到下一个缓冲区(buffer next)
可以一直按一个命令
编辑模式:可以对文件的内容进行编辑,按下“i”、“a”
"i":光标所在位置的前面插入
“a”:光标所在位置的后面插入
退出方式:Esc
末行模式:可以在末行输入命令对文件进行操作(搜索、替换、保存、退出、撤销、高亮等)
其他操作
保存退出
输入:“:w”保存文件
输入:“:w”路径,另存为
输入:"wq"保存并退出
退出:“:q”
强制退出:“:q!”刚才做的修改不做保存
支持另外一个保存退出方式:“:x”,在文件没有修改的情况下,表示直接退出;在修改的情况下,表示保存并退出
调用外部命令:":!外部命令"
:!ls 路径
搜索/查找:“:/关键词”,上/下切换:N/n
取消高亮:":nohl"
替换
语法
:s/搜索的关键词/新的内容,只替换光标所在行的第一组,符合条件的内容
:s/搜索的关键词/新的内容/g,光标所在行的全部符合条件的内容
:%s/搜索的关键词/新的内容,替换整个文档中每行第一个符合条件的内容
:%s/搜索的关键词/新的内容/g,替换整个文档中符合条件的内容
其他:%表示整个文件,g表示全局(global)
显示行号:":set nu",不显示:“:set nonu”
模式间的切换
输入":"进入末行模式
按1次Esc退出,按2次Esc删除末行命令
打开文件的方式
语法1:#vim 文件路径,打开指定的文件
语法2:#vim +数字 文件路径,打开指定的文件并将光标移动到指定行
语法3:#vim +/关键词 文件路径,打开指定的文件并高亮显示关键词
语法4:#vim 文件路径1 文件路径2 ..,同时打开多个文件
使用 :next 命令切换到下一个文件,使用 :prev 命令切换到上一个文件
使用 Ctrl + ^ 组合键在最近访问的两个文件之间切换
计算器的应用
当在编辑文件时,需要使用计算器去计算一些公式,vim集成了简易的计算器
使用方式:编辑模式下按ctrl+r,输入“=”,光标会跳转到最后一行,输入需要计算的内容,按回车输出结果
子主题
vim 的配置
个人配置文件:"/.vimrc"
如果没有就新建一个
输入命令:"set nu",保存退出,所有文档都加了编号
全局配置文件:“/etc/vimrc”
如果针对同一个配置下,个人配置种存在,以个人配置为准;如果个人配置种不存再这一项,以全局为准
代码着色开关(临时)
打开显示:":syntax on" ,表示:语法
关闭显示:“:symtax off”
异常退出
定义:在编辑文件之后没有正常的退出,而是遇到突然关闭终端或者断电的情况,则会显示下面的效果
解决办法
查找“.*”交换文件并删除即可
扩展
别名机制
作用:相当于创建一些属于自己的自定义命令
别名机制依靠一个别名映射文件:“~/.bashrc”
注意:要使别名文件生效,要重新登录当前用户
退出方式
支持另外一个保存退出方式:“:x”(小写,":X"表示对文件加密),在文件没有修改的情况下,表示直接退出;在修改的情况下,表示保存并退出
":x"文件的时间不会被更新,":wq"文件修改时间会被更新
Linux自有服务(内置)
运行模式
在linux中存在一个进程,init(initalize,初始化),进程id是1
查看进程,/etc/inittab
"#"在配置文件中表示注释
"init"
回到桌面:"init 5"
用户与用户组管理
用户
增加:#useradd 选项 用户名
常用选项
-g:指定用户的用户主组,选项的值可以是用户组Id,也可以是用户组名
-G:指定用户的用户附加组,选项的值可以是用户组Id,也可以是用户组名
-u:uid用户的id(用户的标识符),系统默认会从500 之后按顺序分配uid,可以自定义(类似QQ自选靓号)
-c:添加注释
不带选项
#useradd zhangsan
注意:创建同名的家目录、同名的用户组
带选项
#useradd -g 1000 -G1000 -u 666 lisan
删除:#userdel 选项 用户名
选项-r:删除用户的同时,删除其家目录
删除已经登录的用户,kill 对应用户的全部进程
ps -ef |grep 用户名
kill 进程ID
修改:#usermod 选项 用户名
常用选项
-g:指定用户的用户主组,选项的值可以是用户组Id,也可以是用户组名
-G:指定用户的用户附加组,选项的值可以是用户组Id,也可以是用户组名
-u:uid用户的id(用户的标识符),系统默认会从500 之后按顺序分配uid,可以自定义(类似QQ自选靓号)
-l:表示修改用户名,新用户名在前面,旧用户名在后面,入”zhangsan"改成"lisi"
#usermod -l li zhangsan
usermod:user modify 用户修改
设置密码
linux不允许没有密码的用户登录系统,因此前面创建的用户目前都是锁定状态,需要设置密码才能登录
语法:#passwd 用户名
切换用户:#su 用户名
su:switch user,如果用户名不指定则表示切换到root用户
注意
从root切换到普通用户,不需要密码
切换用户之后的工作路径是不变的
普通用户无法让问root,反之可以
注意
查看用户的主组可以查看passwd文件,查看附加组可以查看gourp文件
所有和用户操作的命令(passwd除外),只有root超级管理员有权限执行
用户更改自己的密码,不需要加用户名
用户组
增加:#groupadd 选项 用户组
常用选项-g:选择自己设置一个自定义的用户组id,如不指定,默认从500之后递增
修改:#groupmod 选项 用户组
常用选项-g:选择自己设置一个自定义的用户组id,如不指定,默认从500之后递增
常用选项-n:表示设置新的用户组的名称
删除:#groupdel 选项 用户组
注意:如果需要删除一个组,但是这个组是某个的主组时,则不允许删除
注意
linux下的用户属于与它同名的用户组,这个用户组在创建用户的同时创建
文件结构
用户组名:密码:用户组ID:组内用户名
密码:x表示占位符,虽然用户组可以设置密码,大部分情况不设置
组内用户名:表示附加组是改组的用户名称
密码:x表示占位符,虽然用户组可以设置密码,大部分情况不设置
组内用户名:表示附加组是改组的用户名称
注意文件路径
/etc/passwd:存储用户的关键的信息
/etc/group:存储用户组的关键的信息
/etc/shadow:存储用户密码的信息
扩展
认识passwd文件
用户名:密码:用户ID:用户组ID:注释:家目录:解释器shell
用户名:创建新用户的名称,后期登录的时候需要输入
密码:此密码位置一般情况都是”x“,表示密码的占位
用户ID:用户的标识符
注释(-c):解释该用户是做什么用的
家目录:用户登录系统之后默认的位置
解释器shell:等待用户进入系统输入指令之后,该解释器会收集用户输入的指令,传递给内核处理
用户名:创建新用户的名称,后期登录的时候需要输入
密码:此密码位置一般情况都是”x“,表示密码的占位
用户ID:用户的标识符
注释(-c):解释该用户是做什么用的
家目录:用户登录系统之后默认的位置
解释器shell:等待用户进入系统输入指令之后,该解释器会收集用户输入的指令,传递给内核处理
#tail -4 /etc/passwd |grep zhangsan
id 用户名
网络设置
网卡配置文件位置:/etc/sysconfig/network-scripts/
网卡文件命名的名称:ifcfg*
网卡文件命名的名称:ifcfg*
ONBOOT:是否开机启动
bootproto:iP 地址分配方式
HWADDR:硬件地址,MAC地址
bootproto:iP 地址分配方式
HWADDR:硬件地址,MAC地址
重启网卡
#service network restart
#/etc/init.d/network restart
共性目录:/etc/init.d
共性目录:/etc/init.d
重启单个网卡
#ifdown 网卡名,停止某个网卡
#ifup 网卡名,开启某个网卡
提示:在实际工作中不要随意禁网卡
扩展
#ln -s 修改网卡的配置文件,文件目录层次很深,可以在浅的目录中创建一个快捷方式,方便以后查找
#ln -s /etc/sysconfig/network-scripts/ifcfg-enp0s3 ~/ifcfg-enp0s3
在家目录下增加ifcfg-enp0s3的快捷方式,名称不变
在家目录下增加ifcfg-enp0s3的快捷方式,名称不变
设置主机名
查询主机名:hostname、hostname -f
设置
临时:立竿见影
#hostname 设置的主机名,,切换用户
永久设置:需要重启
#hostnamectl set-hostname 主机名 centos 7.0+
#vim /etc/sysconfig/network 主机名 u
chkconfig
作用:相当于windows下开机启动项的管理服务,并非所有的服务都有开机启动
语法
查询服务:#chkconfig --list
#chkconfig --list |grep http.d
其中0-6表示各个启动级别:
3级别为关闭,表示默认开机不启动
5则表示桌面环境下开机不启动
3级别为关闭,表示默认开机不启动
5则表示桌面环境下开机不启动
删除服务:#chkconfig --del 服务名
添加服务:#chkconfig --add 服务名
centos 7.0+:
systemctl list-unit-files
systemctl list-unit-files
设置服务在某个级别下开机启动/不启动
语法
#chkconfig --level 连在一起的启动级别 服务名 on/off
#chkconfig --level 35 http.d on
#chkconfig --level 35 http.d on
ntp服务
作用:ntp主要用于计算机时间同步管理操作
语法
一次性同步时间:#ntpdate ip地址
ntpdate ntp.aliyun.com
设置时间服务,启动"ntpd"服务
#service ntpd start
防火墙服务
作用:防范网络共计
防水墙:bbs 论坛灌水
防水墙:bbs 论坛灌水
语法:#service firewalld start/restart/stop
Linux权限管理
权限概念
权限概述
Linux系统一般将文件可存/取访问的身份分为3个类别:owener(所有者)、group、others,且3种身份各有read、write、execute(执行)等权限。
在多用户(可以不同时)计算机系统管理中,权限是指某个特定的用户具有特定的系统资源使用权限,像是文件夹、特定系统指令的使用或存储量的限制。
属主与属组
权限构成
读权限
文件夹:影响用户是否能够列出目录结构
文件:影响用户是否可以查看文件内容
写权限
文件夹:影响用户是否能够在文件夹下创建/删除/复制到/移动到文档
文件:影响用户是否能够编辑文件内容
执行权限
一般对于文件来说,特别是脚本文件
身份介绍
Owner身份(文件的所有者)
由于Linux是多用户、多任务的操作系统,可能有多人同时在某台主机上工作,但每个人均可在主机上设置文件的权限,让其成为个人的“私密文件”
Group身份(与文件所有者同组的用户)
同组同权限
Others身份(其他人)
相对概念,相对于所有者
Root身份(超级用户)
所有用户中权限最大,管理普通用户
权限指令
chomd
作用:修改文件/文件夹的权限
语法:#chmod 选项 权限模式 文档
子主题
其他
选项:-R,表示递归设置权限(文件类型是文件夹)
权限模式:该文档需要设置的权限信息
文档:可以是文件,也可以是文件夹,可以是相对路径也可以是绝对路径
注意:只有root用户、文档所有者才有设置权限
属主与属组设置
chown
作用:更改文档的所属用户,ch:change,own :owner
语法
文件:#chown username 文档路径
文件夹:#chown -R username 文档路径
子主题
chgrp
作用:更改文档的所属用户组,grp :group
语法
文件:#chgrp groupname 文档路径
子主题
文件夹:#chgrp -R groupname 文档路径
使用ll ,|grep
综合命令chown:一个命令修改用户与用户组
语法:#chown -R username:groupname 文档路径
子主题
字母形式
u:表示所有者身份owner(user)
g:表示给同组设置(group)
o:表示others,给其他用户设置权限
a:表示all,给所有人(包含ugo部分)设置权限
注意:如果在设置权限的时候不指定给谁设置,则默认给所有用户设置
数字形式:#chmod 777 xx.txt
子主题
权限字符
字符
r:读
w:写
x:表示执行
-:表示没有权限
注意:当文档拥有执行权限(任意部分),则其颜色在终端中是绿色
权限分配
+:表示给具体的用户新增权限(相对当前)
子主题
-:表示删除用户的权限(相对当前)
删除文件夹abcd的可读权限
=:表示将权限设置成具体的值(注重结果)
不给任何权限
语法
语法1:#ls -l 路径,等价于:ll
十位字符表示含义:
第1位:表示文档类型,取值常见的有“d”表示文件夹、“-”表示文件、"l"表示软链接、“s”表示套数字等等;
第2-4位:表示文档所有者的权限情况,第2位标识读权限的情况,取值r、-;第3位表示写权限的情况,w表示可写,-表示不可写;第4位标识执行权限的情况,取值有x、-。
第5-7位:表示所有者同在一个组的用户的权限情况,第5位标识读权限的情况,取值r、-;第6位表示写权限的情况,w表示可写,-表示不可写;第7位标识执行权限的情况,取值有x、-。
第8-10位:表示除了上面的前2部分的用户之外的其他用户的权限情况,第8位标识读权限的情况,取值r、-;第9位表示写权限的情况,w表示可写,-表示不可写;第10位标识执行权限的情况,取值有x、-。
第1位:表示文档类型,取值常见的有“d”表示文件夹、“-”表示文件、"l"表示软链接、“s”表示套数字等等;
第2-4位:表示文档所有者的权限情况,第2位标识读权限的情况,取值r、-;第3位表示写权限的情况,w表示可写,-表示不可写;第4位标识执行权限的情况,取值有x、-。
第5-7位:表示所有者同在一个组的用户的权限情况,第5位标识读权限的情况,取值r、-;第6位表示写权限的情况,w表示可写,-表示不可写;第7位标识执行权限的情况,取值有x、-。
第8-10位:表示除了上面的前2部分的用户之外的其他用户的权限情况,第8位标识读权限的情况,取值r、-;第9位表示写权限的情况,w表示可写,-表示不可写;第10位标识执行权限的情况,取值有x、-。
扩展
如何给普通用户分配管理员命令权限
sudo
使用sudo进行权限设置,可以让root管理员事先定义某些特殊命令谁可以执行,默认
默认sudo中是没有除root用户之外用户的规则,要想使用先配置sudo
编辑配置文件方法
配置sudo文件使用“#visudo -f”,打开后其使用方法和vim一样
所在路径:/etc/sudoers
配置普通用户权限
root :表示用户名,如果是用户组用"%组名"
ALL:表示允许登录的主机(地址的白名单)
=:固定不动
(ALL):表示以谁的身份执行,ALL表示root身份
ALL:表示当前用户可以执行的命令,多个命令可以使用,用","分割
ALL:表示允许登录的主机(地址的白名单)
=:固定不动
(ALL):表示以谁的身份执行,ALL表示root身份
ALL:表示当前用户可以执行的命令,多个命令可以使用,用","分割
案例
给admin分配root权限
admin ALL=(root) /usr/sbin/useradd, /usr/bin/passwd [A-Za-z0-9_]*
在编辑模式用“! 命令”调用外部命令,不用退出编辑模式
! which useradd
注意:在写sudo 规则时不建议写直接形式的命令,而是写命令完整路径,可以使用which命令查看,语法:#which 指令名称
sudo 需要执行的指令
增加一个用户
tail -1 /etc/passwd |grep yonglu
修改密码
软件安装+sudo
安装在/opt/
安装在/opt/
语法
解压语法
#tar -zxvf *.tar.gz
#tar -jxvf *.tar.bz2
含义
-z 或--gzip或--ungzip:通过gzip指令处理文件;
-x 或--extract或--get:从文件中还原文件;
-v:显示操作过程(可不加);
-f 或--file:指定一个文件;
-j :支持bzip2解压文件;
-x 或--extract或--get:从文件中还原文件;
-v:显示操作过程(可不加);
-f 或--file:指定一个文件;
-j :支持bzip2解压文件;
安装方式
1.二进制包(rpm)
查询软件:#rpm -qa |grep 包名
-qa 是 “query all”(查询所有)的缩写
#rpm -q 包名
卸载软件:#rpm -e 包名【--nodeps】
-e:erase
安装软件:#rpm -ivh 包名
-i:install
-v:显示详细的安装过程信息。
-h:以#号显示安装进度条
-v:显示详细的安装过程信息。
-h:以#号显示安装进度条
如果要强制安装可以使用--force参数,但这可能会覆盖现有文件或忽略某些错误,需谨慎使用。如果要忽略依赖关系进行安装可以使用--nodeps参数,同样这也可能导致软件安装后无法正常运行,需谨慎使用。
升级软件:#rpm -Uvh 包名
u:update
#rpm -qf 文件路径
查询哪个软件包拥有指定的文件
2.yum傻瓜式安装
优缺点
优点:安装简单快捷
缺点:完全丧失了自定义性
语法
#yum list
列出当前电脑已安装的软件和可以安装的软件
yum list |grep mariadb
yum list installed | grep 软件包名称
#yum list installed |grep mysql
#yum search 包名
搜索指定的关键词的包
#yum [-y] install 包名
选项y:yes
安装指定的包
#yum [-y] update [包名]
更新指定的包,不指定的包则更新全部软件
#yum [-y] remove 包名
卸载指定的包
3.源码包
1.配置(config/configure/bootstrap)
配置的操作主要是指定的安装目录,需要的依赖再什么地方、指定不需要可选依赖配置文件的路径、通用数据存储位置等等。
指定安装的路径:--prefix=路径
需要依赖的的路径:--with-PACKAGE 名=包所在的路径
不需要依赖:--without-PACHAGE 名
./configure --prefix=/usr/local/ncurses(指定目录名)
2.编译(make/bootstrapd)
3.安装(make install/bootstrapd install)
注意:切换到源码路径安装
建议:熟练后用源码包安装
存放路径:/usr/local/src
软件
JAVA-JDK
下载地址:https://www.oracle.com/java/technologies/downloads/
JDK安装方法
图例
子主题
配置环境变量
以下是在 Linux 系统中安装 JDK 的步骤:
一、下载 JDK
1. 打开浏览器,访问 Oracle 官网或者从其他可靠来源下载适合你系统的 JDK 安装包。通常是一个 `.tar.gz` 或 `.rpm` 文件。
二、安装(以 `.tar.gz` 为例)
1. 使用 SSH 连接到你的 Linux 服务器。
2. 将下载的 JDK 安装包上传到服务器,或者使用 `wget` 命令直接从网络下载到服务器上。
例如:`wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz`
3. 解压安装包到指定目录(通常可以选择 `/usr/local/`)。
sudo tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local/
4. 配置环境变量:
- 打开 `/etc/profile` 文件进行编辑。可以使用 `sudo vi /etc/profile` 命令。
- 在文件末尾添加以下内容:
export JAVA_HOME=/usr/local/jdk-17(这里替换为你的实际 JDK 安装路径:/root/soft_install/jdk-22.0.1)
export PATH=$PATH:$JAVA_HOME/bin
- 保存并退出文件。
5. 使环境变量生效:
source /etc/profile
6. 验证安装:
java -version 或 echo $JAVA_HOME
一、下载 JDK
1. 打开浏览器,访问 Oracle 官网或者从其他可靠来源下载适合你系统的 JDK 安装包。通常是一个 `.tar.gz` 或 `.rpm` 文件。
二、安装(以 `.tar.gz` 为例)
1. 使用 SSH 连接到你的 Linux 服务器。
2. 将下载的 JDK 安装包上传到服务器,或者使用 `wget` 命令直接从网络下载到服务器上。
例如:`wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz`
3. 解压安装包到指定目录(通常可以选择 `/usr/local/`)。
sudo tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local/
4. 配置环境变量:
- 打开 `/etc/profile` 文件进行编辑。可以使用 `sudo vi /etc/profile` 命令。
- 在文件末尾添加以下内容:
export JAVA_HOME=/usr/local/jdk-17(这里替换为你的实际 JDK 安装路径:/root/soft_install/jdk-22.0.1)
export PATH=$PATH:$JAVA_HOME/bin
- 保存并退出文件。
5. 使环境变量生效:
source /etc/profile
6. 验证安装:
java -version 或 echo $JAVA_HOME
java卸载
#sudo yum remove java-\*
mysql
下载地址:https://www.cnblogs.com/a565810497/p/18404779
https://dev.mysql.com/downloads/file/?id=532476
mysql安装方法
1.解压软件
在root/soft_install建立mysql目录,cd到这个目录进行解压:tar -xf /root/soft_install/mysql-9.0.1-1.el9.x86_64.rpm-bundle.tar
2.按顺序安装
1.安装MySQL
cd 到mysql目录安装
2.启动 MySQL 服务
sudo systemctl start mysqld
sudo systemctl enable mysqld
sudo systemctl enable mysqld
3.获取临时 root 密码
MySQL 在安装时会生成一个临时的 root 密码。可以通过以下命令查看临时密码:
sudo grep 'temporary password' /var/log/mysqld.log
MySQL 在安装时会生成一个临时的 root 密码。可以通过以下命令查看临时密码:
sudo grep 'temporary password' /var/log/mysqld.log
4.运行安全配置脚本,初始化MySQL配置
使用临时密码登录 MySQL,并运行安全配置脚本:
mysql_secure_installation
在这个过程中,可以设置新的 root@localhost 密码,删除匿名用户,禁止远程 root 登录等。设定好密码(Aa123456@)后,基本选择都选y,有特殊定制可以根据个人情况而定
mysql_secure_installation
在这个过程中,可以设置新的 root@localhost 密码,删除匿名用户,禁止远程 root 登录等。设定好密码(Aa123456@)后,基本选择都选y,有特殊定制可以根据个人情况而定
5.登录 MySQL
使用新设置的密码登录 MySQL:
mysql -u root -p
mysql -u root -p
6.退出MySQL
quit
3.修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'NEW_password123';
子主题
tomcat
确保已安装JAVA
下载链接:https://tomcat.apache.org/download-90.cgi
安装方法
指引:https://blog.csdn.net/m0_46695127/article/details/139553463
1.解压文件
#tar -xf /root/soft_install/apache-tomcat-9.0.94.tar.gz
2.配置tomcat
export CATALINA_HOME=tomcat路径
export PATH=$PATH:$CATALINA_HOME/bin
export CATALINA_HOME=tomcat路径
export PATH=$PATH:$CATALINA_HOME/bin
/etc/profile
3.保存文件并使环境变量生效
#source /etc/profile
4.启动/停止tomcat
cd切换到/root/soft_install/tomcat/apache-tomcat-9.0.94/bin
#./startup.sh
#./startup.sh
./shutdown.sh
5.验证tomcat
http://服务器ip:8080/
Nginx
redis
1.确保已安装依赖:sudo yum install gcc gcc-c++ make tcl
2.下载:wget http://download.redis.io/releases/redis-7.0.11.tar.gz
3.解压文件
tar -xf /root/soft_install/redis-7.0.11.tar.gz
4.执行编译命令
cd切换到/root/soft_install/redis/redis-7.0.11
#make
cd切换到/root/soft_install/redis/redis-7.0.11
#make
5.安装
sudo make install
6.配置
暂无
7.启动 Redis 服务器
#redis-server /root/soft_install/redis/redis.conf
docker
0 条评论
下一页