首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

强制从FreeBSD上正常运行的活动程序转储核心

强制从FreeBSD上正常运行的活动程序转储核心

核心转储是一种记录程序在运行时的状态的文件,它可以帮助开发人员诊断和修复程序中的问题。在FreeBSD上,可以使用gcore命令来强制从正常运行的活动程序转储核心。

以下是使用gcore命令的基本语法:

代码语言:txt
复制
gcore [-o filename] pid

其中,pid是要转储核心的进程ID,filename是生成的核心文件名。如果不指定filename,则默认为core.pid

例如,要强制从进程ID为1234的活动程序转储核心,可以使用以下命令:

代码语言:txt
复制
gcore 1234

或者指定核心文件名:

代码语言:txt
复制
gcore -o my_core_file 1234

转储核心文件后,可以使用gdb命令来分析它,以确定程序中的问题。

注意:在使用gcore命令之前,请确保已经安装了gdb工具。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

符号下载器 (dotnet-symbol)

--recurse-subdirectories 处理所有子目录中的输入文件。 --host-only 仅下载 lldb 加载核心转储所需的主机程序(即 dotnet)。...下载符号 默认情况下,针对转储文件运行 dotnet-symbol 将下载调试转储所需的所有模块、符号和 DAC/DBI 文件,包括托管程序集。...由于 SOS 现在可以按需下载符号,因此可以使用仅带主机 (dotnet) 和调试模块的 lldb 分析大多数 Linux 核心转储。...若要获取使用 lldb 诊断核心转储所需的这些文件,请运行以下内容: dotnet-symbol --host-only --debugging 故障排除 下载符号时出现...下载调试文件时出现 404 错误,这可能表示转储是使用来自其他源的 .NET Core 运行时创建的,例如,从本地源、特定 Linux 发行版或从社区站点(例如 archlinux)构建的转储。

84900

使用 VisualVM 进行性能分析及调优

转储:性能分析工具从内存中获得当前状态数据并存储到文件用于静态的性能分析。Java 程序是通过在启动 Java 程序时添加适当的条件参数来触发转储操作的。...它包括以下三种: 系统转储:JVM 生成的本地系统的转储,又称作核心转储。一般的,系统转储数据量大,需要平台相关的工具去分析,如 Windows 上的 windbg 和 Linux 上的 gdb。...VisualVM 自身要在 JDK6 以上的版本上运行,但是它能够监控 JDK1.4 以上版本的应用程序。下面主要介绍如何安装 VisualVM 以及各种 VisualVM 上的插件。...转储功能 线程转储的生成与分析 VisualVM 能够对正在运行的本地应用程序生成线程转储,把活动线程的堆栈踪迹打印出来,帮助我们有效了解线程运行的情况,诊断死锁、应用程序瘫痪等问题。 图 15....堆转储的摘要包括转储的文件大小、路径等基本信息,运行的系统环境信息,也可以显示所有的线程信息。 图 18. 堆转储的摘要视图 ?

2.3K50
  • ATT&CK框架:攻击者最常用的TOP7攻击技术及其检测策略

    此外,该技术利用的运行时环境、库和可执行文件是每个现代计算平台的核心组件,不能轻易禁用,并且没有始终对其进行密切监视。...而且在基于GUI的应用程序上完成的所有任务,能够通过命令行界面更快地打开。 针对这类攻击,可以通过使用命令行参数正确记录进行执行情况来捕获命令行界面活动。...通过网站从加密连接传递的有效载荷需要进行加密的网络流量检查。 7. “凭据转储”让黑客在内网为所欲为 凭据转储是从操作系统和软件获取帐户登录名和密码信息的过程,通常是哈希或明文密码形式的信息。...进行凭据转储后,攻击者就可以使用凭据进行横向移动及访问受限信息。 凭据转储是攻击者访问目标组织中的用户帐户和其他资源的共同需求。攻击者还利用转储的凭据来实现权限提升和横向移动。...除了将转储凭据用于出售和初始访问外,凭据是漏洞利用后的一个重要部分。一旦攻击者获得对环境的初始访问权限,通常需要某种级别的特权访问权限才能实现攻击活动中的进一步目标。

    1.5K10

    在 Linux 上创建并调试转储文件

    崩溃转储、内存转储、核心转储、系统转储……这些全都会产生同样的产物:一个包含了当应用崩溃时,在那个特定时刻应用的内存状态的文件。...当你退出一个正在运行的应用程序时,应用程序通常会收到 SIGTERM 信号。因为这种类型的退出信号是预期的,所以这个操作不会创建一个内存转储。...是否创建核心转储是由运行该进程的用户的资源限制决定的。你可以用 ulimit 命令修改资源限制。...内核处理核心转储的方式定义在: /proc/sys/kernel/core_pattern 我运行的是 Fedora 31,在我的系统上,该文件包含的内容是: /usr/lib/systemd/systemd-coredump...而如果不是你的应用程序,将核心转储转发给开发人员将帮助她或他找到并修复问题。

    3.4K30

    【Linux探索学习】第十七弹——进程终止:深入解析操作系统中的进程终止机制

    二、进程终止的主要原因 进程可能因多种原因终止: 终止原因 描述 正常终止 进程完成所有任务后自然结束,例如程序执行到return语句或调用exit函数。...三、进程终止的类型 进程终止根据触发方式可以分为以下几类: 类型 触发方式 常见场景 正常终止 调用exit()、返回主函数 程序完成任务后自然结束。...核心转储终止 错误导致生成核心转储文件 例如段错误(SIGSEGV)导致的异常。 一般进程终止的场景包含一下三种: 1. 代码运行完毕,结果正常 2. 代码运行完毕,结果不正常 3....\n"); abort(); // 异常终止 return 0; // 不会被执行 } 调用abort会产生一个信号(SIGABRT),通常会生成一个核心转储文件供调试使用。...终止并生成核心转储 SIGCHLD 子进程终止或停止时通知父进程。

    20510

    java性能分析与常用工具

    ,最基本的要求就是用java语言编写程序,并能够在jvm虚拟机上正常运行,但是在实际开发过程中,我们所有的程序由于各种各样的原因,并不是总能够正常运行,经常会发生故障或者程序的性能低下等问题,此时我们就需要借助于一些...live子选项是可选的。如果指定了live子选项,堆中只有活动的对象会被转储。想要浏览heap dump,你可以使用jhat(Java堆分析工具)读取生成的文件。...监视应用程序的CPU、GC、堆、方法区以及线程的信息(jstat、jstack)。 dump以及分析堆转储快照(jmap、jhat)。 方法级的程序运行性能分析,找到被调用最多、运行时间最长的方法。...转储: 性能分析工具从内存中获得当前状态数据并存储到文件用于静态的性能分析。Java 程序是通过在启动 Java 程序时添加适当的条件参数来触发转储操作的。...它包括以下三种: 系统转储:JVM 生成的本地系统的转储,又称作核心转储。一般的,系统转储数据量大,需要平台相关的工具去分析,如 Windows 上的 windbg 和 Linux 上的 gdb。

    1.3K10

    【Linux】进程信号(中)

    容我慢慢来说 ---- Linux在系统级别提供了一种能力,可以将一个进程异常的时候, 操作系统可以将该进程在异常的时候,核心代码部分进行核心转储 (将内存中进程的相关数据,全部dump到磁盘中) 一般会在当前进程的运行目录下...,形成core.pid的二进制文件,如core.pid就被叫做核心转储文件 在云服务器上看不到核心转储文件,因为在云服务器上默认关闭这个功能 ---- 输入 ulimit -a 指令 查看当前系统中特定资源对应的上限...当干掉进程后,并没有发现以pid结尾的文件 说明使用Term类型的信号,干掉进程后,不发生核心转储 ---- 8号信号 Core,浮点数异常 在终端1中运行可执行程序,在终端2中发送8号信号干掉进程...,并出现core dump即核心转储 ---- 再次使用 ls -l 指令,发现多出来一个 core.2257的文件 即核心转储文件 ---- Term:终止就是终止,没有多余动作 Core:终止,...会先进行核心转储,在终止进程 核心转储的作用 方便异常后,进行调试 为了让代码从release变为debug,所以在makefile中 加入 -g 如果不懂请看 : gdb调试器的使用 ----

    21430

    Windows渗透测试工具:RedSnarf

    RedSnarf的主要任务包括以下两项: 不在入侵/渗透的主机上留下任何证据 – 包括文件,进程和服务; 不对主机造成不适当的损害,即强制主机重启 YouTube演示:https://youtu.be/...将接收由空格分隔的pwdump,fgdump和纯文本用户名和密码的混合; Lsass转储以用于Mimikatz的离线分析; 使用NTDSUtil转储域控制器散列,并检索NTDS.dit进行本地解析; 使用...drsuapi方法转储域控制器散列; 从域控制器检索脚本和策略文件夹,解析’密码’和’管理员’; 能够解密cpassword哈希; 能够在远程机器上启动shell; 清除事件日志(应用程序,安全性,设置或系统...在远程机器上启用/禁用RDP。 将RDP端口从3389更改为远程计算机上的443。 在远程机器上启用/禁用NLA。 查找用户在远程计算机上登录的位置。...解析域哈希 能够确定哪些帐户被启用/禁用 抓取远程登录的活动用户桌面屏幕截图 记录远程登录活动用户桌面 解密Windows密码 解密WinSCP密码 获取用户的SPN 从远程机器检索WIFI密码 开发与依赖

    1.4K70

    Windows渗透测试工具:RedSnarf

    RedSnarf的主要任务包括以下两项: 不在入侵/渗透的主机上留下任何证据 - 包括文件,进程和服务; 不对主机造成不适当的损害,即强制主机重启 YouTube演示:https://youtu.be...将接收由空格分隔的pwdump,fgdump和纯文本用户名和密码的混合; Lsass转储以用于Mimikatz的离线分析; 使用NTDSUtil转储域控制器散列,并检索NTDS.dit进行本地解析; 使用...drsuapi方法转储域控制器散列; 从域控制器检索脚本和策略文件夹,解析'密码'和'管理员'; 能够解密cpassword哈希; 能够在远程机器上启动shell; 清除事件日志(应用程序,安全性,设置或系统...在远程机器上启用/禁用RDP。 将RDP端口从3389更改为远程计算机上的443。 在远程机器上启用/禁用NLA。 查找用户在远程计算机上登录的位置。...解析域哈希 能够确定哪些帐户被启用/禁用 抓取远程登录的活动用户桌面屏幕截图 记录远程登录活动用户桌面 解密Windows密码 解密WinSCP密码 获取用户的SPN 从远程机器检索WIFI密码 开发与依赖

    1.1K71

    Java HeapDump 生成解析

    如果传递了此选项,则仅将内存中的活动对象写入堆转储文件。如果未通过此选项,则所有对象,即使是准备进行垃圾回收的对象,都将打印在堆转储文件中。它将大大增加堆转储文件的大小。这也将使分析变得乏味。...6、程序处理 除了使用工具之外,还可以以代码嵌入方式从应用程序中捕获堆转储。在某些情况下,我们可能希望基于应用程序中的某些事件来捕获堆转储。...dumpHeap(fileName, live); } } 通过调用com.sun.management:type=HotSpotDiagnostic MBean JMX Bean,提供从应用程序捕获堆转储的源代码...7、IBM管理控制台 如果应用程序在IBM Websphere Application Server上运行,则可以使用管理控制台来生成堆。...具体步骤如下: 1、启动管理控制台 2、在导航窗格中,单击故障排除> Java转储和核心 3、选择要为其生成堆转储的server_name

    1.2K30

    使用ProcDump工具解决Windows应用程序崩溃

    而且也同ADPlus以及DebugDiag一样,它可以对一个挂起的应用程序强制进行进程转储。但和之前的任何工具不同的是,ProcDump可以在CPU的活动峰值达到一个指定的级别时,对一个进程进行转储。...当不带任何参数时,ProcDump工具会在保持应用程序执行的情况下,强制进行一个内存转储。 通过使用-h参数,ProcDump会检测一个挂起的Windows应用程序,并强制进行内存转储。...这与ADPlus和DebugDiag中的功能很相似。使用-e参数可以使得ProcDump去检测应用程序的一个未处理的异常,并获取进程转储。...通过接下来对进程转储的分析,您可以弄清哪些程序、DLL以及错误情况在中断时发生了。...有三个参数可以实现这一功能: -c 在产生一个进程转储前,指定CPU达到的阈值。

    2.9K50

    如何在Linux上获得错误段的核心转储

    如何获得一个核心转储 核心转储(core dump)是您的程序内存的一个副本,并且当您试图调试您的有问题的程序哪里出错的时候它非常有用。...当您的程序出现段错误,Linux 的内核有时会把一个核心转储写到磁盘。 当我最初试图获得一个核心转储时,我很长一段时间非常沮丧,因为 – Linux 没有生成核心转储!我的核心转储在哪里?...好的,现在我们了解了 ulimit 和 kernel.core_pattern ,并且实际上在磁盘的 /tmp 目录中有了一个核心转储文件。太好了!接下来干什么?...从 gdb 中得到堆栈调用序列 你可以像这样用 gdb 打开一个核心转储文件: 1. $ gdb -c my_core_file 接下来,我们想知道程序崩溃时的堆栈是什么样的。...;☉ 正确的设置 ulimit 和 kernel.core_pattern;☉ 运行程序;☉ 一旦你用 gdb 调试核心转储了,加载符号并运行 bt;☉ 尝试找出发生了什么!

    4.1K20

    数据库系统:第十章 数据库恢复技术

    10.4.1 数据转储 1.数据转储定义 转储是指数据库管理员定期地将整个数据库复制到磁带、磁盘或其他存储介质上保存起来的过程。...2.转储方法 静态转储:在系统中无运行事务时进行的转储操作,转储开始时数据库处于一致性状态,转储期间不允许对数据库的任何存取、修改活动,得到的一定是一个数据一致性的副本 。...缺点:不能保证副本中的数据正确有效 例:在转储期间的某时刻 Tc,系统把数据A=100转储到磁带上,而在下一时刻Td,某一事务将A改为200。后备副本上的A过时了。...利用动态转储得到的副本进行故障恢复: 把动态转储期间各事务对数据库的修改活动登记下来,建立日志文件。 后备副本加上日志文件就能把数据库恢复到某一时刻的正确状态。...海量转储与增量转储比较: 从恢复角度看,使用海量转储得到的后备副本进行恢复往往更方便 如果数据库很大,事务处理又十分频繁,则增量转储方式更实用更有效 10.4.2 登记日志文件 1.日志文件的格式和内容

    93310

    Java性能优化工具和技术

    对于IBM JVM,生成多个Java核心快照并跟踪活动类加载器和加载的类。 调查类元数据内存泄漏的可疑来源。 分析您的应用程序并识别可能的罪魁祸首。...它将其收集和压缩活动集中在可能充满可回收对象(垃圾优先)的堆的区域,或者换句话说,在最少量的“活动”对象的区域上。...故障排除和监控 目标 推荐 测量和监控您的应用程序YoungGen和OldGen内存占用,包括GC活动。 为您的应用程序确定正确的GC策略和Java堆大小。 微调应用程序内存占用,如活动对象。...重要的是要意识到,由于GC活动降低,减少应用程序内存占用将会改善性能。使用诸如内存分析器之类的工具生成和分析JVM堆转储快照。...查看应用程序代码和Java线程(CPU刻录)的CPU消耗也至关重要。高CPU利用率(> 75%)不应该被认为是“正常”(良好的物理资源利用率)。通常是执行效率低和/或容量问题的症状。

    1.9K60

    【译】创建和分析 Java 堆转储(Heap Dumps)

    代码示例 本文附有 GitHub 上的工作代码示例。 什么是堆转储(Heap Dumps)? 每当我们通过创建类的实例来创建 Java 对象时,它总是放置在称为堆的区域中。...要使用 jmap 生成堆转储,我们首先使用 jps 工具找到我们正在运行的 Java 程序的进程 ID,以列出我们机器上所有正在运行的 Java 进程: ?...选项 -dump:live 用于仅收集在运行代码中仍有引用的活动对象。使用 live 选项时,会触发完整的 GC 以清除无法访问的对象,然后仅转储有引用的活动对象。...JVisualVM:通常,分析堆转储需要比实际堆转储大小更多的内存。如果我们试图在开发机器上分析来自大型服务器的堆转储,这可能会出现问题。...为了说明这一点,我们从一个在运行时抛出 OutOfMemoryError 的程序中捕获了堆转储。

    1.5K40

    G1 GC简单优化技巧

    如果在Java 8 update 20及更高版本上运行,则可以考虑将此参数传递给应用程序。它有可能提高整体应用程序的性能。...范围从1MB到32MB -XX:GCTimeRatio = 12 设置应花费在GC上的总目标时间与花费在处理客户交易上的总时间。...这些工具能够结合应用服务运行状态以及当前的环境详细展示出触发GC活动的原因。以下是G1 GC日志文件时借助其他工具生成的GC原因表。...6.5、堆转储启动的GC “堆转储启动的GC”表示使用诸如Jcmd,Jmap,Profiler等工具从应用程序捕获了堆转储。...在捕获堆转储之前,这些工具通常会触发全局的GC,此项操作将导致应用程序长时间的暂停。除非必要时,否则建议大家在程序运行的过程中能够自动触发以捕获堆转储文件。

    3.4K30

    使用 VisualVM 和 JProfiler 进行性能分析及调优

    随着应用程序的持续运行,可能会造成整个系统运行效率下降,严重的则会造成系统崩溃。为了找出程序中隐藏的这些问题,在项目开发后期往往会使用性能分析工具来对应用程序的性能进行分析和优化。...转储:性能分析工具从内存中获得当前状态数据并存储到文件用于静态的性能分析。Java 程序是通过在启动 Java 程序时添加适当的条件参数来触发转储操作的。...它包括以下三种: 系统转储:JVM 生成的本地系统的转储,又称作核心转储。一般的,系统转储数据量大,需要平台相关的工具去分析,如 Windows 上的windbg和 Linux 上的gdb等。...它通过 jvmstat、JMX、SA(Serviceability Agent)以及 Attach API 等多种方式从程序运行时获得实时数据,从而进行动态的性能分析。...其中: Thread Dump,获取线程转储; Head Dump,获取堆转储; Application Snapshot,获取应用运行状态快照。

    3.3K50
    领券