作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个服务器应用程序,可以使用 inetd 为客户端调用。但是,如果我尝试附加到使用 inetd 启动的服务器进程,我会收到以下响应:ptrace:不允许操作。
gdb --annotate=3 /my/app/here <processId>
Current directory is /usr/local/bin/
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
Reading symbols from /usr/local/bin/flumed...done.
Using host libthread_db library "/lib/tls/libthread_db.so.1".
Attaching to program: /my/app/here, process <processId>
ptrace: Operation not permitted.
/usr/local/bin/<processId>: No such file or directory.
(gdb)
最佳答案
我的解决方案是这样的:
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
关于c++ - 为什么 gdb 不能附加到由 inetd 调用的服务器应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1586812/
当我向 inetd 发送 HUP 信号以便它重新读取新的 inetd.conf 文件时,我想要的是进程由 inetd 进程控制的进程也应该重新启动,以便它可以读取作为更改的一部分添加到 inetd.c
我正在尝试用独立的服务替换 inetd/xinetd 服务。我能做到的最简单的是什么?有一些标准代码可以开始吗? 最佳答案 How does inetd know which process to s
我有一个服务器应用程序,可以使用 inetd 为客户端调用。但是,如果我尝试附加到使用 inetd 启动的服务器进程,我会收到以下响应:ptrace:不允许操作。 gdb --annotate=3 /
我的应用程序是一个服务器应用程序,它接受来自用户的一些预定义命令并显示从服务器端存在的 XML 文件中获取的相应输出。 为了解析 XML 文件,我使用了 apache 的 xerces-c 库版本 3
我在使用 mac 端口安装 vsftpd 时遇到问题,当我想启动 vsftp 服务时 sudo /opt/local/sbin/vsftpd 我有这样的错误 500 OOPS: vsftpd: not
我是一名优秀的程序员,十分优秀!