【服务器问题】xshell 登录远程服务器卡住( 而 vscode 直接登录不上)

news2024/12/28 18:55:08




在这里插入图片描述



打开 xshell ssh 登录远程服务器:卡在下面这里,迟迟不继续

当 SSH 连接卡在 Connection established. 之后,但没有显示远程终端提示符时,这通常意味着连接已经成功建立,说明不是网络连接和服务器连接问题,可能就是服务器自己的问题了


外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传




一、直接的解决办法(重点)


查明原因

打开服务器官网(我用的是阿里云的服务器),查看你的服务器的相关运行信息

如果发现你的机器如下图一样,CPU占用和硬盘IO的数据有点不对劲(有点高了),这表示当前你的机器被大量服务使用着(可能是运行着某些大型服务),因此导致服务器变卡


在这里插入图片描述




解决办法

1、如果你的机器真的在运行某些大型服务,而且就是你自己主动运行的:那就没办法了,就是其他服务占用导致机器变卡

2、如果不是,则可能是某些服务堆积过多(比如我的机器大概是因为 vscode 服务占用的内存资源太多了(平时会用 vscode 远程登录写代码))

若这些服务你认为可以关闭,则直接重启你的机器

打开你云服务器的官网,打开你的机器服务页面,找到重启键(下面是阿里云的重启键位置)


在这里插入图片描述



等待重启即可



二、手动开启一个 swap 分区:缓解服务器内存和 CPU 占用过高的问题


​ 手动开启一个 swap 分区可以暂时缓解服务器内存和 CPU 占用过高的问题。当物理内存(RAM)不足时,操作系统会使用 swap 分区作为虚拟内存,将不常用的数据移到磁盘上,从而释放 RAM 供更重要的进程使用。这可以有效防止系统因内存不足而崩溃或变得非常缓慢。


如何创建和启用 swap 分区

1. 检查现有 swap

首先,检查你的服务器是否已经有 swap 分区:

sudo swapon --show

如果输出为空,则表示没有启用 swap。


2. 创建 swap 文件

你可以通过创建一个 swap 文件来增加虚拟内存。以下是一个常见的做法:

  • 选择一个合适的大小:通常建议 swap 的大小为物理内存的 1-2 倍,但具体取决于你的需求和磁盘空间。例如,如果你有 4GB 的 RAM,可以创建一个 8GB 的 swap 文件。

  • 创建 swap 文件

    sudo fallocate -l 8G /swapfile
    
  • 设置适当的权限

    sudo chmod 600 /swapfile
    
  • 设置 swap 文件:把文件转换为swap文件

    sudo mkswap /swapfile
    
  • 启用 swap 文件:激活swap文件,这里可以直接用命令挂载上一个swap分区,但是重启后要重新挂载

    sudo swapon /swapfile
    
    如果不需要了,可以也可以卸载:
    卸载:sudo swapoff /swapfile
    
  • 验证 swap 是否已启用

    sudo swapon --show
    

你应该看到新创建的 swap 文件已经启用。

以下是我给自己的系统开了 2G 的分区


在这里插入图片描述



3. 使 swap 永久生效

为了确保在系统重启后 swap 仍然有效,你需要将其添加到 /etc/fstab 文件中:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

4. 调整 swappiness 参数

swappiness 参数控制内核使用 swap 的频率。默认值通常是 60,但这可能不适合所有情况。你可以根据需要调整这个值:

  • 临时调整

    sudo sysctl vm.swappiness=10
    
  • 永久调整
    编辑 /etc/sysctl.conf 文件,添加或修改以下行:

    vm.swappiness=10
    

较低的 swappiness 值(如 10)意味着内核会尽量避免使用 swap,只有在绝对必要时才会将数据移到 swap 中。较高的值(如 60 或更高)则会让内核更积极地使用 swap。


5. 监控 swap 使用情况

你可以使用以下命令监控 swap 的使用情况:

free -h

或者使用 tophtop 等工具查看实时的内存和 CPU 使用情况。


其他建议

虽然启用 swap 可以暂时缓解内存不足的问题,但它并不是长期解决方案。swap 是基于磁盘的,访问速度远低于物理内存,因此频繁使用 swap 会导致系统性能下降。为了更彻底地解决问题,建议你考虑以下措施:

  1. 优化应用程序
    • 检查哪些进程占用了大量的内存和 CPU,并尝试优化它们。
    • 关闭不必要的服务和进程,减少资源消耗。
  2. 增加物理内存
    • 如果可能的话,考虑升级服务器的物理内存(RAM)。这是最直接且有效的解决方法。
  3. 负载均衡
    • 如果你有多个服务器,可以考虑将负载分摊到不同的服务器上,避免单台服务器过载。


三、我的解决思路(非必要观看)


当你等待好一会后,发现 xshell 登录成功连接上服务器了,但是向这个打开的终端窗口输入命令,终端的反应变慢了,每一条命令都是迟迟才响应

此时我想到:服务器并不是不能登录,而是响应速度变慢了


于是打开服务器官网(我用的是阿里云的服务器)


在这里插入图片描述


发现我的机器 cpu占用到了 50% 以上 、硬盘IO 也到了一个较高的数值,说明该机器正在运行某些比较大的服务(如果你确实有用该服务器运行大型服务,则原因就是你的大型服务占用该机器的大部分性能,导致你的 vscodexshell 登录不上机器与终端响应变慢(破案了!))

但是我确定我没有运行大型服务,是不是中病毒了(但我也确定我没有乱下载什么东西)

最终大法:重启该服务器!

(世界真理:机器的 99%的问题都能通过重启解决)



打开你云服务器的官网,打开你的机器服务页面,找到重启键(下面是阿里云的重启键位置)


在这里插入图片描述



重启时,机器名称旁边的 “运行中” 会变成 “正在停止”等停止字样,等待一会

过几分钟若还是 “正在停止”等停止字样,此时刷新一下当前页面试试,不行继续等待,直到最后重启成功


重新使用 vscodexshell 登录远程机器,此时就成功了!


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

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

相关文章

Python Selenium 各浏览器驱动下载与配置使用(详细流程)

1、安装 pip install selenium 2、浏览器驱动下载 Chrome(google)浏览器驱动 下载地址:http://chromedriver.storage.googleapis.com/index.html 或 https://sites.google.com/a/chromium.org/chromedriver/home . 下载地址:http://chromedriver.stor…

Redis的认识

目录 1. Redis的特性2. Redis的使用场景2.1 Redis可以做什么?2.2 Redis不可以做什么 3. Redis的安装和启动4. Redis的基本全局命令4.1 GET和SET命令4.2 KEYS指令4.3 EXISTS指令4.4 DEL指令4.5 EXPIRE指令4.6 TTL指令4.7 TYPE指令 5. 数据类型和内部编码6. 单线程架构…

IntelliJ+SpringBoot项目实战(28)--整合Beetl模板框架

在前面的文章里介绍过freemarker,thymeleaf模板引擎,本文介绍另一个性能超高的模板引擎---Beetl,据说此模板引擎的性能远超Freemarker。官网的说法是,Beetl 远超过主流java模板引擎性能(引擎性能5-6倍于FreeMarker,2倍…

全面解析DApp开发中的智能合约设计

在DApp的开发过程中,智能合约的设计起到了至关重要的作用。智能合约是运行在区块链上的程序,负责处理和执行DApp中的逻辑、交易和数据存储。下面我们将深入探讨智能合约的设计原则、挑战和优化方法,帮助开发者掌握如何设计高效、安全的智能合…

利用Grounding DINO进行自动标注——目标检测任务——YOLO格式

关于Grounding DINO的环境搭建可以参考我的以前的博客,链接如下所示 如何在Linux上离线部署Grounding DINO-CSDN博客 这个博客主要来介绍如何利用Grounding DINO这个项目去进行目标检测的自动化标注。并且给出了相关的代码已经实验验证。 1.数据集准备 2. 开始实…

1.使用docker 部署redis Cluster模式 集群3主3从

1.使用docker 部署redis Cluster模式 集群3主3从 1.1 先安装docker 启动docker服务,拉取redis镜像 3主3从我们要在docker启动6个容器docker run --name redis-node-1 --net host --privilegedtrue -v /data/redis/share/redis-node-1:/data redis:6.0.8 --cluster-…

开发类似的同款小程序系统制作流程

很多老板想要开发一款和别人家类似的同款小程序系统,但是不知道该怎么开发制作,本文就为大家详细介绍一下开发类似的同款小程序的流程为大家做参考。 一、前期准备找到对标小程序:首先,需要找到你想要模仿的同款小程序&#xff0…

Jenkins凭据管理及使用详解

简介:Jenkins凭据管理是指对Jenkins中存储的敏感信息进行管理的功能,这些信息通常用于认证和授权,以确保Jenkins能够安全地与其他系统和服务进行交互。以下是关于Jenkins凭据管理添加及作用的详细介绍: 一、Jenkins凭据管理的添加 进入凭据管理页面: 登录Jenkins后,点击…

车载VR可视化解决方案

车载VR可视化解决方案是通过融合跟踪用户头部运动的特殊预测算法与惯性测量数据而开发的。该系统将大范围虚拟现实跟踪技术与IMU传感器相结合,为VR和AR应用打造了一套全面的运动跟踪与渲染流程,极大地方便了虚拟现实头显制造商定制可视化流程。 该车载VR…

鸿蒙实现数据管理

目录: 1、鸿蒙实现数据管理的三种方式2、用户首选项3、键值型数据管理3.1、获取KVManager实例,用于管理数据库对象3.2、创建并获取键值数据库3.3、调用put()方法向键值数据库中插入数据3.4、调用get()方法获取指定键的值3.5、调用delete()方法删除指定键…

【环境搭建】WordPress本地部署搭建及历史版本插件安装(windows系统)

🏘️个人主页: 点燃银河尽头的篝火(●’◡’●) 如果文章有帮到你的话记得点赞👍收藏💗支持一下哦 【环境搭建】WordPress本地部署搭建及历史版本插件安装(windows系统) WordPress搭建环境部署(…

【教程】创建NVIDIA Docker共享使用主机的GPU

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 这套是我跑完整理的。直接上干货,复制粘贴即可! # 先安装toolkit sudo apt-get update sudo apt-get install -y ca-certifica…

突破空间限制!从2D到3D:北大等开源Lift3D,助力精准具身智能操作!

文章链接:https://arxiv.org/pdf/2411.18623 项目链接:https://lift3d-web.github.io/ 亮点直击 提出了Lift3D,通过系统地提升隐式和显式的3D机器人表示,提升2D基础模型,构建一个3D操作策略。 对于隐式3D机器人表示&a…

详解MySQL安装

目录 Ubantu 1. 使⽤apt安装MySQL 2.查看MySQL状态 3. MySQL 安装安全设置 4.设置密码 卸载MySQL Centos 1. 确认当前的系统版本 2.下载MySQL源 3.安装MySQL 4.启动mysqld 5.查看MySQL状态 6.设置开机自启动 7.查看MySQL密码,并登录 8.修改密码 Ubant…

Java线程的interrupt中断、wait-notify/all(源码级分析)

实例方法: interrupt()方法是设置结束阻塞(sleep、),并且设置中断标记true isInterrupted()判断当前是否中断 静态方法: Thread.interrupted():调用这个方法的线程中断标记位还原为false 那么好,既然上面的方法作用是清晰的&…

[Python学习日记-70] 元类

[Python学习日记-70] 元类 简介 什么是元类 关键字 class 创建类的流程分析 自定义元类控制类的创建 自定义元类控制类的调用 自定义元类的属性查找 自定义元类的应用与练习 简介 在上一篇章当中我们已经了解了面向对象的各种内置函数了,本篇我们将讲述“元类…

【前端】浏览器输入url到页面呈现发生了什么?

前言 在此总结记录下浏览器输入url到页面呈现期间的流程。 浏览器输入url发生了什么? 从浏览器地址栏上输入url到页面渲染主要分为以下流程: 解析请求url,建立连接发送请求浏览器渲染页面 在输入url地址后,浏览器识别输入的是…

深入云电脑PC Farm技术探讨,以阿里云、华为云、ToDesk为例

🌝引言 近年来,云计算技术的飞速发展为各行各业的数字化转型带来了全新机遇,其中云电脑作为一种虚拟化桌面解决方案,逐渐成为个人用户与企业的核心选择。从远程办公、在线教育到高性能计算需求,云电脑通过为用户提供随…

Windows中MySQL8.3.4 MSI版本——详细安装教程

一、下载MySQL安装文件。 下载地址:MySQL官网 进入后点击下面的MySQL社区版下载 点击MySQL Comunity Server。 我这里选择的是版本8.4.3LTS版本,在线对应的msi文件。 点击No thanks,直接下载。 二、安装MySQL 2.1、双击刚刚下载好的msi文件,…

Appium:安装uiautomator2失败

目录 1、通过nmp安装uiautomator2:失败 2、通过 Appium 的平台直接安装驱动程序 3、通过pip 来安装 uiautomator2 1、通过nmp安装uiautomator2:失败 我先是通过npm安装的uiautomator2,也显示已经安装成功了: npm install -g …