哇,膜拜,师父竟然懂HARAKIRI的意思(附Linux常用命令)

news2024/9/28 15:28:10

哇,膜拜,师父竟然懂HARAKIRI的意思

我在看服务器日志的时候,发现有好几行开头都写着HARAKIRI
还以为是什么机制,就去问了问AI,结果它也不懂,百度也没查到

就去问师父,他一下就说出,是切腹自杀的意思,是日语,牛哇牛哇

然后理解一下发现是系统的负载过大,跑不动了,然后线程自杀后释放资源又重启的过程
就有点像我们手机APP开太多,然后前面开的部分APP没反应卡住了,要重启一下就能接着使用

顺便放点前段时间记录的Ubantu服务器命令


连接服务器

不是Win自带的远程桌面连接!

法一 右键打开Git Bash 输入

ssh 用户名(默认root)@IP地址
e·g· ssh root@<IP地址>

法二 用可视化工具 推荐Xshell

工具在安装后,配置的用户密码可以不填
打开Xshell主界面, 点击菜单栏文件 --> 新建, 在默认的连接标签页中填写名称、主机信息

点击连接的子标签页 用户身份验证, 右侧方法选择Public Key
点击用户密钥所在行右侧的浏览按钮, 在弹出窗口中点击导入按钮

在文件对话框中选择私钥文件, 并点击打开确认选择
在用户密钥窗口中, 单击选中添加的私钥, 然后点击确定

在新建会话属性窗口点击右下方确定完成会话创建

(部署)更新服务器中Flask项目代码命令

  • cd workspace/unis-ai/ 进到项目中

  • git pull (从git服务器拉取代码到我们的服务器上)

  • sh run_uwsgi.sh stop

  • tail查看日志中进程状态
    (进程是否都已终结,可以看第[六]列的启动时间),确定所有子进程都stop后再下一步
    tail -f uwsgi.log 看日志文件,可实时监控文件,显示最新的内容 看到good bye(自定义的)就已经完全停止运行了 (自定义的)

  • sh run_uwsgi.sh start (重启服务)
    确认重启成功:start后记得稍等一会,至少20s,tail查看日志中进程状态(进程是否都已启动,看第[六]列的启动时间)以及主进程PID一致否

部署前提:

一定要前后端商量好接口的变动,本地测试都没问题了,才能部署到服务器上

或者后端的内容修改,一定要测试了确定没问题才能部署

重启完服务器,一定要记得测试API接口 一个就行

服务器挂掉时的处理

  • 先找挂掉的原因:
    tail -50 uwsgi.log 查看日志文件,查看报错内容
  • 要解决后再stop start
    stop后记得稍等一会,tail查看日志中进程状态

上传下载文件用sz rz


cat /proc/version
查看Linux版本信息、以及gcc的
cat requirements.txt
cat +文件名 可查看文件内容

sudo update-alternatives --config gcc
修改系统中的默认gcc版本
不过得先安装gcc的其他版本:
sudo apt install gcc-4.8

查看gcc版本:
gcc -v 或cat /proc/version 或gcc --version

tail -50 uwsgi.log
查看日志文件,不要vi!
1.命令格式:tail [必要参数] [选择参数] [文件]
2.命令功能:
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用来查看日志文件
3.命令参数:
-f 循环读取 不用跟数字
-n<行数> 显示行数 要跟个数字 50/-50都表示最后50行的内容,+50即开头50行
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.
-q, -quiet, -silent 从不输出给出文件名的首部
-s, -sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

vi 文件名
(vi命令尽量尽量不要用,tail平替日常查看日志,其他文件另说)
进入到这个日志文件中,可查看它能进行的操作参数,可进行 行编辑、翻页等操作,有快捷键

退出:看完按 :q 回车可安全退出

注意:若按Ctrl+Z退出来,vi进程还在运行,很危险
可以jobs -l 查看序列号
kill -9 序列号 -9是强制删除,可以不加
最后记得status看一下进程状态,没有vi才正常,不然很危险

ps -ef | grep wsgi
显示系统进程信息的命令:
grep命令的功能是查找,支持正则表达式!
中间的 | 是管道命令 即ps与grep同时执行
在这里插入图片描述

ps 有两个参数
ps -ef 是用标准的格式显示进程的、其格式如下(顺序一致)
在这里插入图片描述

UID //用户ID、但输出的是用户名
PID //进程的ID
PPID //父进程ID
C //进程占用CPU的百分比
STIME //进程启动到现在的时间
TTY //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。
CMD //命令的名称和参数

ps aux 是用BSD的格式来显示、其格式如下
在这里插入图片描述

同ps -ef 不同的列有
USER //用户名
%CPU //进程占用的CPU百分比
%MEM //占用内存的百分比
VSZ //该进程使用的虚拟內存量(KB)
RSS //该进程占用的固定內存量(KB)(驻留中页的数量)
STAT //进程的状态
START //该进程被触发启动时间
TIME //该进程实际使用CPU运行的时间

其中STAT状态位常见的状态字符有
D //无法中断的休眠状态(通常 IO 的进程);
R //正在运行可中在队列中可过行的;
S //处于休眠状态;
T //停止或被追踪;
W //进入内存交换 (从内核2.6开始无效);
X //死掉的进程 (基本很少见);
Z //僵尸进程;
< //优先级高的进程
N //优先级较低的进程
L //有些页被锁进内存;
s //进程的领导者(在它之下有子进程);
l //多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads);

  • //位于后台的进程组;
    

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

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

相关文章

Kubernetes - pod详解

Pod基础概念&#xff1a; Pod是kubernetes中最小的资源管理组件&#xff0c;Pod也是最小化运行容器化应用的资源对象。一个Pod代表着集群中运行的一个进程。kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的&#xff0c;例如&#xff0c;用于管理Pod运行的S…

动手学Matplotlib画图,Matplotlib 是一个非常强大的 Python 画图工具。【Matplotlib学习笔记】

一、第一章 1.基本用法 import matplotlib.pyplot as plt import numpy as npx np.linspace(-1,1,50) y 2*x 1 plt.plot(x,y) plt.show()2.figure图像 import matplotlib.pyplot as plt import numpy as npx np.linspace(-1,1,50) y1 2*x 1 y2 x**2 plt.figure() plt…

6.ELK之Elasticsearch嵌套(Nested)类型

0、前言 在Elasticsearch实际应用中经常会遇到嵌套文档的情况&#xff0c;而且会有“对象数组彼此独立地进行索引和查询的诉求”。在ES中这种嵌套文档称为父子文档&#xff0c;父子文档“彼此独立地进行查询”至少有以下两种方式&#xff1a; 1&#xff09;父子文档。在ES的5.…

基于人工蜂鸟算法的无人机航迹规划-附代码

基于人工蜂鸟算法的无人机航迹规划 文章目录 基于人工蜂鸟算法的无人机航迹规划1.人工蜂鸟搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用人工蜂鸟算法来优化无人机航迹规划。 …

【kubernetes】k8s组件

文章目录 1、概述2、控制平面组件&#xff08;Control Plane Components&#xff09;2.1 kube-apiserver2.2 etcd2.3 kube-scheduler2.4 kube-controller-manager2.5 cloud-controller-manager 3、Node组件3.1 kubelet3.2 kube-proxy3.3 容器运行时&#xff08;Container Runti…

基础算法-回溯算法-案例

现象&#xff1a; 基础算法-回溯算法-案例 基础算法-回溯算法从不同角度出发 去寻找答案 找到答案或者走不通了(根据需求:找一个答案还是列举全部答案) 则回溯返回继续从下一条路出发 去寻找答案, 一直到走完 常见案例&#xff1a; 案例一&#xff1a; 通过输入一个不重复数…

找到【SVM】中最优的惩罚项系数C

因为本来SVM是想找到间隔最大的分割面&#xff0c;所以C越大&#xff0c;SVC会选择边际更小的&#xff0c;能够更好的分类所有训练点的决策边界&#xff0c;不过模型的训练时间也会越长。如果C的设定值较小&#xff0c;那SVC会尽量最大化边界&#xff0c;决策功能会更简单&…

4.求1000以内的所有完数

#include<stdio.h> // 完数&#xff1a;一个数的所有的真因子 (即除了自身以外的约数)的和&#xff0c;恰好等于它自身 // 1 不是完数 // 4的因子&#xff1a;1 2 4 除了本身 4 不等于 1&#xff0b;2 所以4不是完数void fun(void){int sum,i,j;for(i2;i<1000;i)…

架构师必备-DDD之落地实践

1. 走进 DDD 1.1 为什么要用 DDD &#xff1f; 面向对象设计&#xff0c;数据行为绑定&#xff0c;告别贫血模型&#xff1b;降低复杂度&#xff0c;分而治之&#xff1b;优先考虑领域模型&#xff0c;而不是切割数据和行为&#xff1b;准确传达业务规则&#xff0c;业务优先…

Unity中Shader再议ATTENUATION

文章目录 前言一、实现实时阴影的投射1、直接复制之前实现投射阴影的Pass 二、实现实时阴影的接受&#xff0c;同时实现光照衰减1、在 v2f 中使用这个2、在 顶点着色器 中使用这个3、在 片元着色器 中使用这个 前言 在之前文章中&#xff0c;实现了 Global Illumination 的直接…

python 之切片

文章目录 基本切片语法负索引step 为负使用负数的 Step从右向左提取间隔提取 注意事项切片的应用切片运用到字符串、元组、range对象字符串切片基本字符串切片使用步长进行操作 元组切片基本元组切片使用步长进行操作 range 对象切片基本 range 切片使用步长进行操作 在 Python…

SPSS两变量相关性分析

1.两变量相关性分析 两变量相关性分析是统计学中用于评估两个变量之间是否存在线性关系以及关系紧密程度的一种方法。相关性的大小通常使用相关系数来衡量&#xff0c;最常用的是皮尔逊相关系数&#xff08;Pearson correlation coefficient&#xff09;&#xff0c;但还有斯皮…

简单讲讲RISC-V跳转指令基于具体场景的实现

背景 在 RISC-V指令集中&#xff0c;一共有 6 条有条件跳转指令&#xff0c;分别是 beq、bne、blt、bltu、bge、bgeu。如下是它们的定义与接口 BEQ rs1, rs2, imm ≠ BNE rs1, rs2, imm &#xff1c; BLT rs1, rs2, imm ≥ BGE rs1, rs2, imm < unsigned BLTU rs1…

Stable Diffusion源码调试(二)

Stable Diffusion源码调试&#xff08;二&#xff09; 个人模型主页&#xff1a;https://liblib.ai/userpage/369b11c9952245e28ea8d107ed9c2746/model Stable Diffusion版本&#xff1a;https://github.com/AUTOMATIC1111/stable-diffusion-webui/releases/tag/v1.4.1 分析S…

汽车标定技术(五)--基于模型开发如何生成完整的A2L文件(1)

1 数据对象的创建 CtrlH打开Model Explorer&#xff0c;在Base workspace中点击工具栏add&#xff0c;出现如下界面&#xff0c; 可以看到Simulink提供了多种数据类型 Matlab Variable&#xff1a;Simulink.Parameter&#xff1a;使用该数据对象表示工程应用中的标定量Simuli…

python爬虫怎么翻页 ?

首先&#xff0c;你需要安装相关的库。在你的命令行窗口中&#xff0c;输入以下命令来安装所需的库&#xff1a; pip install requests beautifulsoup4然后&#xff0c;你可以使用以下代码来爬取网页内容并翻页&#xff1a; package mainimport ("fmt""net/htt…

DAY 12 结构体 共用体 枚举02

1.结构体 结构体对齐(了解) 概述 typedef struct Data01 { char a; int b; }Data01; typedef struct Data02 { char a; char b; }Data02; void fun01(){ printf("%ld\n",sizeof(Data01)); printf("%ld\n",sizeof(Data02)); } 特点&#xff…

QuantLib学习笔记——一个简单的价值估算案例

⭐️ 前言 QuantLib很强大&#xff0c;它实现了很多金融工具及其价值估算方法&#xff0c;从最简单的折现模型&#xff0c;到利用BSM模型对期权进行定价&#xff0c;覆盖面相当齐全。本文以一个简单的净现值估算案例&#xff0c;开启笔者金融工具估值的旅程。 开上豪车&#…

〔003〕虚幻 UE5 基础教程和蓝图入门

✨ 目录 &#x1f388; 新建项目&#x1f388; 快捷操作&#x1f388; 镜头移动速度&#x1f388; 新建蓝图关卡&#x1f388; 打印字符串&#x1f388; 蓝图的快捷键&#x1f388; 场景中放置物体&#x1f388; 通过蓝图改变物体位置&#x1f388; 展现物体运动轨迹&#x1f3…

泛微移动管理平台E-mobile lang2sql接口任意文件上传漏洞

一、漏洞描述 泛微e-mobile,由高端OA泛微专业研发,是业内领先的移动OA系统,提供移动审批,移动考勤,移动报表,企业微信等丰富办公应用,支持多种平台运行,灵活易用安全性高。 e-mobile可满足企业日常管理中的绝大部分管理需求&#xff0c; 诸如市场销售、项目、采购、研发、客服…