首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调试立即失败/从未出现的子进程

调试立即失败/从未出现的子进程
EN

Unix & Linux用户
提问于 2021-12-30 21:20:17
回答 1查看 180关注 0票数 0

我有一个可执行的二进制文件(它是一个设备驱动程序)。它以成功的0返回代码运行并立即退出。在一台计算机上,它创建了我可以在pgrep中看到的所有重要子进程,但遗憾的是,在我的另一台计算机上却没有。使用strace运行它的输出结束:

代码语言:javascript
复制
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f2851597310) = 32167
exit_group(0)                           = ?
+++ exited with 0 +++

但在这台计算机上没有任何进程(本例中为32167)。

我不知道怎么找出哪里出了问题。对于运行sudo execsnoop -x的孩子来说,什么都不会弹出。源代码不可用。(这并不是主要目标,但如果它不是克隆的,而是只运行前景中的一切,那就太棒了。)如果有用的话就是这个文件:https://github.com/elmadjian/tobii_4C_为_linux/blob/main/tobii_usb_服务/usr/local/sbin/tobiiusbserviced

编辑:strace -f command输出结束:

代码语言:javascript
复制
23747 clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f789577f310) = 23748
23747 exit_group(0)                     = ?
23748 umask(000)                        = 022
23748 setsid( <unfinished ...>
23747 +++ exited with 0 +++
23748 <... setsid resumed>)             = 23748
23748 brk(NULL)                         = 0x21bd000
23748 brk(0x21de000)                    = 0x21de000
23748 openat(AT_FDCWD, "/var/run/tobiiusb/tobiiusbservice.pid", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 ENOENT (No such file or directory)
23748 openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 3
23748 fstat(3, {st_mode=S_IFREG|0644, st_size=3648, ...}) = 0
23748 fstat(3, {st_mode=S_IFREG|0644, st_size=3648, ...}) = 0
23748 read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0\7\0\0\0\0"..., 4096) = 3648
23748 lseek(3, -2321, SEEK_CUR)         = 1327
23748 read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0\7\0\0\0\0"..., 4096) = 2321
23748 close(3)                          = 0
23748 socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 3
23748 connect(3, {sa_family=AF_UNIX, sun_path="/dev/log"}, 110) = -1 ENOENT (No such file or directory)
23748 close(3)                          = 0
23748 exit_group(1)                     = ?
23748 +++ exited with 1 +++
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2021-12-30 21:37:35

代码语言:javascript
复制
connect(3, {sa_family=AF_UNIX, sun_path="/dev/log"}, 110) = -1 ENOENT (No such file or directory)

它想要写到系统日志,它不见了。您的系统有问题,这个文件/dev/log通常应该存在。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/684479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档