You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

linux服务器程序远程调试

Linux服务器程序远程调试是在Linux系统下的开发中非常重要的一环。当我们在本地编写代码时,如果程序出现了问题,我们可以很方便地进行调试。但是,当程序在远程Linux服务器上运行时,如果出现了问题,该如何进行调试呢?本文将介绍使用GDB实现Linux服务器程序的远程调试

  1. 准备工作

在进行远程调试之前,需要对服务器进行一些准备工作。

1.1 安装GDB

首先要在服务器上安装GDB。在命令行下输入以下命令:

sudo apt-get update
sudo apt-get install gdb

1.2 编译程序

将需要调试的程序在本地进行编译,并加上-g参数生成调试信息。

gcc -g -o test test.c

1.3 启用调试端口

为了允许远程调试,需要在被调试服务器上开启一个调试端口。可以在被调试程序运行前,在终端中执行以下命令:

$ gdbserver host:port prog [args ...]

其中,host为被调试服务器的IP地址,port为开启的调试端口,prog为被调试程序的可执行文件。该命令会在被调试服务器上启动一个GDB服务器,等待连接。例如:

$ gdbserver :2345 ./test
Process ./test created; pid = 13270
Listening on port 2345
  1. 远程调试

在完成准备工作之后,就可以使用GDB实现远程调试了。

2.1 连接GDB服务器

在本地终端中输入以下命令,连接被调试服务器上的GDB服务器

gdb prog
target remote host:port

其中,prog为被调试程序的可执行文件,host为被调试服务器的IP地址,port为已开启的调试端口。连接成功后,终端输出以下信息:

Remote debugging using host:port
0x00007fc32d1f8b72 in ??? () from /lib/x86_64-linux-gnu/libc.so.6

2.2 使用GDB调试

连接成功后,就可以使用GDB进行调试了。常见的调试命令有:

  • break:设置
本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
云服务器提供稳定的弹性计算服务。通过实时增减计算资源,适应业务变动,降低维护成本

社区干货

Linux 远程 链接ssh 保活配置

# 问题描述当我们使用ssh 工具本地链接远程服务器时,会遇到ssh 断开链接的情况。此时可能是由于本地客户端与远程服务器ssh链接断连导致的。可以通过ssd配置,保持ssh 长链接# 解决方案### 服务端配置```bash# sudo vim /etc/ssh/sshd_config# 修改配置ClientAliveInterval 30ClientAliveCountMax 60# sudo service ssh restart```### 客户端配置```bashsudo vim /etc/ssh/ssh_configServerAliveInterval 30Server...

CentOS 7上部署TigerVNC

# 运行环境* CentOS 7* Red Hat Enterprise Linux 7* tigervnc-server# 问题描述* 如何设置VNC远程访问CentOS操作系统图形界面# 解决方案## 安装X Windows System图形化界面* 安装图形化所需软件包... ### 安装配置服务端* 以root用户执行以下命令安装相关软件包```bash yum -y install tigervnc-server tigervnc```* 执行以下命令创建一个VNC用户账号```bash useradd vncuser passwd vncuser```...

Rocky Linux镜像

## 简介Rocky Linux 是 CentOS 的一个分支,它位于 Red Hat Enterprise Linux(RHEL) 的下游。与 CentOS 一样,它提供了非常适合服务器的稳定版 Linux。它旨在作为 CentOS 的完全兼容替代品。Rocky Linux的首个候选版本发布于2021年4月30日,首个正式版本发布于2021年6月21日。Rocky Linux 8将提供支持至2029年5月下载地址:- 火山引擎访问地址:https://mirrors.ivolces.com/rockylinux/- 公网访问地址:https://mirrors.volces....

KubeWharf:为什么说 k8s 是新时代的 Linux|社区征文

我们经常说 Kubernetes 已经取代了 Linux 成为下一代的操作系统了。此话怎讲,看下面这张图片,传统Linux不管是用户态还是内核态,在 k8s 里面都有与其对应的服务。![picture.image](https://p6-volc-community-si... 整个数据中心抽象成一台服务器,一切皆应用,像使用个人电脑一样使用 Sealos!### KubeWharf官网:https://github.com/kubewharfKubeWharf 是一套以 Kubernetes 为基础构建的分布式操作系统,由一组云原生组件构成...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

linux服务器程序远程调试-优选内容

使用边缘函数CLI
nest是边缘函数提供的CLI(Common Line Interface)工具,支持运行在Linux和macOS操作系统。您可以通过操作系统中的命令行终端安装nest,然后使用nest创建和管理边缘函数,以及远程调试、发布代码等。 安装nest 您可以在... debugger / 登录远程调试服务器调试代码。在调试模式下,您可以使用调试命令。 publish / 执行全量发布。 canary 执行灰度发布。 envs / 查看环境变量。 add 添加环境变量。 delete 删除环境变量。...
Linux 远程 链接ssh 保活配置
# 问题描述当我们使用ssh 工具本地链接远程服务器时,会遇到ssh 断开链接的情况。此时可能是由于本地客户端与远程服务器ssh链接断连导致的。可以通过ssd配置,保持ssh 长链接# 解决方案### 服务端配置```bash# sudo vim /etc/ssh/sshd_config# 修改配置ClientAliveInterval 30ClientAliveCountMax 60# sudo service ssh restart```### 客户端配置```bashsudo vim /etc/ssh/ssh_configServerAliveInterval 30Server...
ECS Terminal登陆实例后连接时长提升
ECS Terminal作为云服务器远程登录实例的工具之一,用户在使用ECS Terminal连接到Linux实例时,连接会在未操作的180秒后自动断开,这给用户在远程管理和调试实例时带来了一些不便。 本次优化后,用户在通过ECS Terminal登录Linux实例,连接保持时间取得较大优化。这意味着用户不再需要频繁地重新连接实例,可以更长时间地进行操作和管理实例,进一步提升工作效率。 发布地域全部地域
CentOS 7上部署TigerVNC
# 运行环境* CentOS 7* Red Hat Enterprise Linux 7* tigervnc-server# 问题描述* 如何设置VNC远程访问CentOS操作系统图形界面# 解决方案## 安装X Windows System图形化界面* 安装图形化所需软件包... ### 安装配置服务端* 以root用户执行以下命令安装相关软件包```bash yum -y install tigervnc-server tigervnc```* 执行以下命令创建一个VNC用户账号```bash useradd vncuser passwd vncuser```...

linux服务器程序远程调试-相关内容

Linux (Ubuntu 服务端)

操作步骤参见以下步骤通过传统的 DNS 协议使用公共解析 PublicDNS: 说明 本文以 Ubuntu 22.04 LTS 服务器版为例。 更改 resolv.conf 中的 DNS 设置一般情况下,您可以直接更改 resolv.conf 中的 DNS 设置。 打开 /etc/nsswitch.conf 文件。确保 hosts 字段的配置如下: shell vim /etc/nsswitch.conf 使用编辑模式打开 /etc/resolv.conf 文件。 shell sudo vim /etc/resolv.conf 如果文件中有 nameserver 参数,您需要将 nameserv...

DescribeInstanceVncUrl

调用 DescribeInstanceVncUrl 查询一台云服务器的VNC管理终端地址。 接口说明调用该接口时,您需要注意: 无法使用ECS Terminal连接Linux实例时,您可以通过控制台的 VNC远程连接 登录实例,查看云服务器操作界面的实时... 调试API Explorer您可以通过API Explorer在线发起调用,无需关注签名生成过程,快速获取调用结果。去调试请求参数名称 类型 是否必选 示例值 描述 Action String 是 DescribeInstanceVncUrl 要执行的操作,取值:De...

本地Linux系统通过RDP上传文件到Windows云服务器

如果您的本地计算机操作系统为Linux,您可以通过RDP上传文件至Windows云服务器。 关于RDPrdesktop是Linux下支持Windows远程桌面连接的客户端程序,在Linux系统下可通过它远程访问Windows桌面,采用RDP(Remote Desktop Protocol,远程桌面协议),支持多种版本。 前提条件本地Linux计算机已安装可视化界面,否则无法使用rdesktop。 已购买云服务器并绑定公网IP。 云服务器状态为 运行中。 Windows云服务器打开3389端口。 Windows云服...

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

Centos7 搭建Samba服务

前言 Samba在Linux中实现了服务器消息块(SMB)协议。SMB协议用于访问服务器上的资源,例如文件共享和共享打印机。此外,Samba实现了Microsoft Windows使用的分布式计算环境远程过程调用(DCE RPC)协议。 关于实验 预计... bash chgrp sambashare /sambaSamba 使用 Linux 用户和组权限系统,但它有自己的身份验证机制,与标准的 Linux 身份验证不同。首先使用 Linuxuseradd工具创建用户,然后使用该smbpasswd实用程序设置用户密码。 Samba...

DetachKeyPair

调用 DetachKeyPair 接口为一台或多台Linux实例解绑密钥对。 接口说明仅安装了密码插件的实例支持解绑密钥对,请先安装密码插件。 当前密钥对仅支持解绑 运行中 、 已停止 两种状态的实例。 解绑后的实例密钥对不再生效,如果您的实例已设置密码登录,解绑密钥对后,仍可以使用密码登录,否则需要重新绑定密钥对或重置密码才能登录实例,请谨慎操作。 解绑密钥对后需重启实例,密钥对生效。 调试API Explorer您可以通过API Explorer...

Linux (Ubuntu 桌面端)

操作步骤说明 本文以 Ubuntu 22.04 TLS 桌面版为例。不同的 Linux 发行版的界面可能存在差异。 参见以下步骤通过传统的 DNS 协议使用公共解析 PublicDNS: 选择 Settings > Network。找到您需要配置的网络,点击锯齿图标。 选择 IPv4。取消 DNS 右侧的 Automatic 选项。在 DNS 下方的文本框中输入 公共解析 PublicDNS 的 DNS 服务器的 IPv4 地址。 点击 Apply 保存设置。 下一步您可以在设备端验证 DNS 配置 .volc-md-viewer i...

Linux安装可视化界面

火山引擎提供的公共镜像默认未安装图形化桌面组件,您可以参考本文对CentOS 8安装可视化界面。 注意事项云服务器状态为 运行中。 若安装不当,可能造成实例无法正常启动。建议您提前进行数据备份。 软件版本云服务器操作系统:本文以CentOS 8.3为例。 操作步骤远程连接云服务器并登录,具体操作请参考登录Linux实例。 执行以下命令,安装图形桌面软件。yum groupinstall "Server with GUI" -y 执行以下命令,设置图形模式为默认启动...

Rocky Linux镜像

## 简介Rocky Linux 是 CentOS 的一个分支,它位于 Red Hat Enterprise Linux(RHEL) 的下游。与 CentOS 一样,它提供了非常适合服务器的稳定版 Linux。它旨在作为 CentOS 的完全兼容替代品。Rocky Linux的首个候选版本发布于2021年4月30日,首个正式版本发布于2021年6月21日。Rocky Linux 8将提供支持至2029年5月下载地址:- 火山引擎访问地址:https://mirrors.ivolces.com/rockylinux/- 公网访问地址:https://mirrors.volces....

配置Linux实例NTP服务(Ubuntu 18)

本文以Ubuntu 18.04为例介绍如何修改Linux实例时区,以及开启和配置Linux NTP服务,保证实例本地时间精确同步。 什么是NTP?NTP(Network Time Protocol)即网络时间协议,是TCP/IP协议族中的一个应用层协议,用于客户端和服务器之间进行时钟同步,提供高精准度的时间校正。 前提条件若您未安装NTP,请使用如下命令完成安装。sudo apt-get updatesudo apt-get install ntp 由于NTP服务使用用户数据报协议(UDP)在端口 123 上发送和接受时间...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

数据智能知识图谱
火山引擎数智化平台基于字节跳动数据平台,历时9年,基于多元、丰富场景下的数智实战经验打造而成
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询