Linux

一、Linux概述:

Linux是一种免费使用和自由传播的类UNIX操作系统,它并不是Unix(Linux可以解读为Linux is not Unix),它由林纳斯·本纳第克特·托瓦兹发布,是一个开源的、多用户、多任务、支持多线程和多CPU操作系统

二、Linux安装

例如采用VMware当作虚拟机软件,注意VMware不是虚拟机,它是虚拟机软件。采用centos-7作为操作系统,市面上存在的常见操作系统如ubuntu、centos、Redhat、Debian、中标麒麟等等。

三、Linux常用目录结构(以下只是部分目录结构)

root:超级用户的家,即管理员的家

home:用户的家,每个用户的家目录通常是 /home/用户名

etc:存放系统配置文件

usr:存放共享的系统资源

bin:包含基本命令的二进制文件

sbin:存放可执行的二进制文件,只要root可以有权限访问

前四个常用

四、Linux操作命令(注意Linux操作命令严格区分大小写,并且注意空格要求)

基础版命令

1.pwd(print working directory打印工作目录)

显示当前所在的工作目录

2.ls(list)

显示当前目录下的内容

3.ls -a

显示当前目录下的所有内容,包括隐藏文件

4.ls -l(缩写为ll):

显示文件的详细信息,可以显示文件大小

5.ls -lh(缩写为lh)

友好的显示文件所有的信息,可以显示文件大小

6.mkdir:创建目录

例如mkdir app创建名为app的目录

mkdir -p a/b/c:级联的创建目录a里面包含b,b里面包含c

7.rmdir

删除目录;例如rmdir a删除目录a

8.cd

切换目录,如:

cd a 切换到a目录

cd a/b 切换到 a里面的b目录

cd ../ 返回上一级目录

cd -  返回上一个目录

cd ~ 返回到用户主目录

cd / 返回根目录

9.浏览文档

cat:浏览文档所有内容

more:分页式的浏览文档内容,只能往下翻页(空格下一页,回车下一行,q退出)

less:分页式浏览文档内容,可以往前翻页也可以往后翻(上箭头往前翻页,下箭头往后翻页,q退出)

tail:从尾部查看文件,默认倒数第十行开始

tail -5 /usr/local/a 显示a的后五行内容

tail -f 循环读取,动态查看

ctrl+c结束查看

10.touch 创建一个空文件

如touch a.txt 创建空的a.txt文件

11.rm 删除文件 

rm a.txt 删除a.txt

rm -f a.txt 不询问直接删除a.txt

rm -r a 递归的删除a

rm -rf a 不询问递归删除

12. cp 复制

cp a.txt b.txt 复制a.txt重命名为b.txt

cp a.txt a/b.txt 将b.txt 复制到文件a里并重命名为b.txt

13. mv 剪切

mv a.txt b.txt 实际上就是重命名

mv a.txt ../  把a.txt移动到上一级目录

14.tar压缩或解压

常用参数:

-c :创建一个新的tar文件(可以理解为往袋子里放东西)

-v :显示tar命令执行的详细信息

-x :   解开tar文档(像是拿剪刀剪开袋子拿东西)

-z :调用gzip命令进行压缩或者解压

-f :指定被处理文件的文件名

-t :列出存储文档的内容

-C(注意是大写C) :指定压缩或者解压的目录

例子:

tar -zcvf app.tar.gz /usr/loacl -C /usr/apps :把/usr/local的所有目录压缩到/usr/apps中命名为app.tar.gz

tar -zxvf app.tar.gz -C /usr/a :把app.tar.gz解压到/usr/a里

15.vi和vim编辑器

vi和vim的区别:

1、多级撤销:在vi里,按u只可以撤销上次命令,但是在vim里面可以无限制撤销;

2、易用性:vi只能运行于Unix中,而vim不仅可以运用于Unix,还可以运行于Linux、Windows、mac等多个操作平台;

3、语法加亮:vim可以用不同的颜色来加亮你的代码;

4、可视化操作:vim不仅可以在终端运行,还可以运行于x Windows、Mac os、Windows。

5、对vi完全兼容:某种情况下,你可以将vim当作vi来使用。

可以将vim理解为vi的plus版,两者操作大致一样,常用vim。

vim a.txt :用vim编辑器打开a.txt

vim的三种模式:

1. 命令模式(按esc可以进入)打开vim编辑器默认的就是命令模式:

命令模式下可以进行复制粘贴或者删除

v-y-p(按住v可以选择多行,再按y可以复制,再按p可以粘贴):可以选择复制多行

v-d (按v选择多行,按d删除):可以选择多行删除

2.插入模式(在命令模式下按i可以进入插入模式,按esc可以退出插入模式返回命令模式):

可以对文本文件正文进行修改或添加新的内容。处于输入模式时,vi编辑器的最后一行会出现“-- INSERT --"的状态提示信息

3.底行模式(在命令模式下打出英文“:”即可进入底行模式):

q:退出

q!:强制退出

wq:保存并退出

17、grep:

-v 显示不被pattern匹配到的行

-i 忽略字符大小写

-n 显示匹配的行号

-c 统计匹配的行数

-o 仅显示匹配到的字符串

-q 静默模式,不输出任何信息

-A # after, 后#行

-B # before, 前#行

-C # context, 前后各#行

你们的服务器在哪的,生成环境在本地部署的,开发环境在阿里云买的;通过find 

alias给命令起别名

例如:alias c='clear'

kill:杀死进程

kill -9 +pid  :强制杀死一个进程

高级点的

18、配置防火墙

(1)设置开机启用防火墙:systemctl enable firewalld

(2)设置开机禁用防火墙:systemctl disable firewalld

(3)启动防火墙:systemctl start firewalld

(4)关闭防火墙:systemctl stop firewalld 或 systemctl stop firewalld.service

(5)检查防火墙状态 systemctl status firewalld

systemctl不仅可以用于设置防火墙,其他程序或者应用皆可用这个命令设置开机自启或者关闭

使用firewall-cmd配置端口

(1)查看防火墙状态:firewall-cmd --state

(2)重新加载配置:firewall-cmd --reload

(3)查看开放的端口:firewall-cmd --list-ports

(4)开启防火墙端口:firewall-cmd --zone=public --add-port=9200/tcp --permanent

命令含义:

–zone #=作用域=pubic

–add-port=9200/tcp #添加端口,格式为:端口/通讯协议

–permanent #永久生效,没有此参数重启后失效

注意:添加端口后,必须用命令firewall-cmd --reload重新加载一遍才会生效

(5)关闭防火墙端口:firewall-cmd --zone=public --remove-port=9200/tcp --permanent

19、free命令:内存使用情况

free 命令显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。共享内存将被忽略

命令的参数:

-b  以Byte为单位显示内存使用情况。 

-k  以KB为单位显示内存使用情况。 

-m  以MB为单位显示内存使用情况。

-g   以GB为单位显示内存使用情况。 

-o  不显示缓冲区调节列。

-s<间隔秒数>  持续观察内存使用状况。 

free显示内存和交换空间的使用情况

free -h以人类可读的形式显示内存情况

df:查看磁盘使用情况

df -h以人类可读的形式显示磁盘使用情况

df -h +文件目录,显示当前文件下的磁盘使用情况

fdisk磁盘分区工具,用于管理磁盘

20、du -h:磁盘占用情况

查看指定目录的磁盘空间占用情况
du -h /path/test/directory
使用du命令查看指定目录下的文件占用情况,找到大小比较大的文件
du -sh /path/test/directory/*

du命令使用G单位显示
du -h --max-depth=1 --time / | sort -nr | grep G
查看全部硬盘的使用与剩余情况
df -a
查看整个磁盘空间占用情况
df -h
查看磁盘剩余空间信息
df -hl

21、top,ps

top:  top 是 Linux 系统中的一个动态监视工具,它可以实时显示系统中各个进程的资源占用状况,类似于 Windows 的任务管理器。通过 top 命令,用户可以快速查看系统的运行状态,以及各个进程的 CPU、内存等使用情况

动态视图:top 提供了一个实时动态更新的视图,能够持续显示系统中当前正在运行的进程信息及其资源占用情况。

系统性能监控:除了显示进程信息外,top 还可以显示系统的整体性能指标,如平均负载(uptime,load average)、CPU使用率(%CPU)、内存使用量(%MEM)等。

更新频率:默认情况下,top命令会定期(通常是3秒钟)刷新输出,更新进程列表和系统状态。 top -d 2:设置两秒刷新一次

ps:

 ps -axjf | grep 进程名

查看进程的详细信息,特别是父子关系以及进程的树形结果

ps -axjf :查看所有进程的详细信息;
 

静态视图:ps 命令在执行瞬间提供一个进程状态的快照,它不会像 top 那样持续刷新,一次性输出指定时刻的进程信息。

详细信息:ps 可以列出大量的进程详细信息,包括进程ID(PID)、父进程ID(PPID)、进程状态、CPU利用率、内存占用、启动时间和命令行等。

定制化输出ps 支持多种参数组合,可以灵活定制输出格式和选择要显示的进程,例如通过 -ef 参数查看全部进程的详细信息,或者通过 -aux 查看系统中所有用户的进程等。

22、netstat和telnet

netstat命令netstat 主要用于查看本机的网络连接状态、监听端口等信息

yum install net-tools 使用前先安装

netstat -anp | grep 8080 使用的方式anp是Linux的操作命令,Windows是ano

使用的例子:

netstat -a      # 列出所有端口

netstat -at     # 列出所有TCP端口

netstat -au    # 列出所有UDP端口

netstat -ax    # 列出所有unix端口

netstat -atnlp    # 直接使用ip地址列出所有处理监听状态的TCP端口,且加上程序名

telnet:查看远程ip或端口是否开放

例子:

telnet 192.168.21.35 8080

Windows系统里自带的也有,不过要先去安装

打开控制面板里的程序和功能,找到打开或关闭Windows功能,找到Telnet勾选上,点击确定,过几分钟后在cmd窗口输入 telnet(空格) ip(空格) 端口号查看端口是否开放

23、nohup以守护式运行Java程序

nohup 是一个在类 Unix 操作系统(如 Linux 和 macOS)中广泛使用的命令,全称是 "no hang up",即“不挂断”。它的主要目的是允许用户在终端断开连接或注销账户后,仍然能够让指定的命令或程序在后台继续运行,不受 SIGHUP(挂起)信号的影响。

nohup java -jar your-project.jar &

如果你想要将输出重定向到一个日志文件,可以这样做:
nohup java -jar your-project.jar > output.log 2>&1 &

启动第二个程序,端口不一样
nohup  java -jar ./wms-app/wms-0.0.1-SNAPSHOT.jar --server.port=9090  > app9090.log 2>$  &

24、桥接模式和host(主机模式)的区别

桥接模式:

  • 在桥接模式下,虚拟机的网络接口被连接到主机上的一个虚拟网络桥上。
  • 这个虚拟网络桥模拟了一个物理交换机,使得虚拟机就像是网络中的另一个独立的物理机器。

主机模式:

  • 在主机模式下,虚拟机只能与主机进行通信,无法直接访问外部网络
  • 这种模式创建了一个仅限于主机和虚拟机之间的私有网络。

桥接模式是在一个容器内部为容器内镜像搭建一个局域网,使得各个容器之间可以进行交互,使用的时候

TCP与UDP区别

TCP是安全可靠的网络传输层协议,规定必须要有响应,否则会一直发送请求;

UDP类似于广播,只管发送不管响应

docker容器启动的时候设置网络模式为主机模式:

docker run --network=host [其他参数] <镜像名>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值