Questions tagged «process»

进程是正在执行的计算机程序的实例。


1
重新启动服务时,“未知实例”是什么意思?
我试图使vsftpd文件服务器在Ubuntu 13.10上运行,但无法从另一个网络连接到服务器,尽管该另一个网络已连接到服务器的网络并且ping正在工作。vsftpd重新启动时有些可疑,配置时vsftpd要求我使用以下方法重新启动: service vsftpd restart 输出显示:“停止:未知实例”。我不知道那是什么意思?

1
为什么我的子进程的PGID不是父进程的PID?
因此,我到处都读到该命令应终止父进程的所有子进程: kill -- -$$ 在kill命令中使用负ID引用了一个PGID,从示例中我已经看到,子进程的PGID似乎应该是父进程的PID,但在我的系统上不是这样。 在我的系统上,子代的PGID与父脚本的PGID相同,后者实际上是bash。 这里发生了什么?示例是错误的还是我的系统设置不同? 我需要实现的是在不终止父进程的情况下终止子进程,因此我不想向父进程所在的PGID发送终止信号。

2
什么是“自动堆栈扩展”?
getrlimit(2)在手册页中具有以下定义: RLIMIT_AS 进程的虚拟内存的最大大小(地址空间),以字节为单位。此限制影响对brk(2),mmap(2)和mremap(2)的调用,这些调用在超出此限制时会失败,并显示错误ENOMEM。同样,自动堆栈扩展将失败(如果没有通过sigaltstack(2)提供备用堆栈,则会生成SIGSEGV来终止该进程)。由于该值很长,因此在32位长的机器上,此限制最多为2 GiB,或者此资源是无限的。 这里的“自动堆栈扩展”是什么意思?Linux / UNIX环境中的堆栈是否根据需要增长?如果是,确切的机制是什么?
13 linux  process  memory  limit 


2
pidof和pgrep有什么区别?
当我将这两个命令中的任何一个与参数一起用作进程名称时,它们都返回完全相同的数字。它们是相同的命令吗?他们是两个不同的命令来做同一件事吗?其中一个是另一个的别名吗? pidof firefox pgrep firefox
13 process 

4
Bash脚本等待进程并获取返回码
我正在尝试创建一个脚本,它将启动许多后台命令。对于每个后台命令,我需要获取返回码。 我一直在尝试以下脚本: #!/bin/bash set -x pid=() return=() for i in 1 2 do echo start $i ssh mysql "/root/test$i.sh" & pid[$i]=$! done for i in ${#pid[@]} do echo ${pid[$i]} wait ${pid[$i]} return[$i]=$? if [ ${return[$i]} -ne 0 ] then echo mail error fi done echo ${return[1]} echo ${return[2]} 我的问题是在等待循环中,如果第二个pid在第一个pid之前完成,我将无法获得返回代码。 我知道我可以运行wait …
13 linux  bash  process  array 

3
终止在特定端口上运行的所有服务
我正在尝试编写一个脚本,该脚本杀死在特定端口上运行的服务。这是我的脚本: a=$(ps ax | grep 4990 | grep java | awk '{print $1}') kill -9 $a 这是一个Java程序。该脚本有时可以工作,但大多数情况下会神秘地失败。 还有其他方法可以杀死端口上运行的服务吗?我的港口是4990。
13 process  kill  tcp 

2
如何获取子外壳的PID?
如何获取子外壳的PID? 例如: $ echo $$ 16808 这不起作用,因为原始外壳扩展了$$: $ ( echo $$ ) 16808 为什么单引号不起作用?在原始外壳删除单引号之后,子外壳$$本身不会扩展吗? $ ( echo '$$' ) $$ 为什么也eval不起作用?是eval由subshel​​l运行的吗?为什么给我原始外壳的PID? $ ( eval echo '$$' ) 16808 谢谢。
13 bash  process  subshell 

1
Unix中的进程,内核线程,轻量级进程和用户线程之间是什么关系?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 2年前关闭。 Vahalia的Unix Internal拥有显示进程,内核线程,轻量级进程和用户线程之间关系的数字。本书最关注SVR4.2,还详细探讨了4.4BSD,Solaris 2.x,Mach和Digital UNIX。请注意,我并不是在问Linux。 对于每个流程,该流程始终存在一个或多个轻量级流程吗?图3.4似乎是肯定的。 为什么图3.5(a)在CPU上直接显示进程,而在两者之间却没有轻量级进程? 对于每个轻量级进程,轻量级进程始终始终存在一个内核线程吗?图3.4似乎是肯定的。 为什么图3.5(b)在进程顶部直接显示轻量级进程,而在它们之间却没有任何内核线程? 内核线程是唯一能够调度的实体吗? 轻量级进程是否仅通过调度底层内核线程间接进行调度? 是否仅通过调度底层轻量级进程来间接调度进程? 更新: 我问了一个类似的Linux问题,Linux 的内核线程是否有轻量级进程? 我猜可能是因为《操作系统概念》一书隐含地介绍了使用Unix的概念,而Unix和Linux可能有所不同,所以我了解了Unix内核。 感谢当前的回复,但我希望重新打开该帖子,以便我可以接受其他回复。

4
lsof -p PID与lsof | grep PID
我不了解lsof命令的输出。 当我写 lsof -p PID 我得到4行,当我写 lsof | grep PID 我得到数百行。 它不应该返回相同的结果吗? 谢谢你的回复。这是输出。看起来是子流程,还是这个任务是什么意思? lsof -p 29076 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 29076 pr cwd unknown /proc/29076/cwd (readlink: Permission denied) java 29076 pr rtd unknown /proc/29076/root (readlink: Permission denied) java 29076 pr txt unknown /proc/29076/exe (readlink: …
12 process  lsof 

4
如何找到产卵过程的来源?
我有一个在RedHat Linux实例上运行的Java进程。 问题是我杀死它后它会重新出现。我不确定要看哪里。我已经去过crontab,但是没有运气。 我看过PPID,但它指向init(1)。 知道如何找到来源吗?
12 process  kill 

1
pmap输出的含义
我main.c在Linux中写道: int main() { while (1){} } 当我编译并启动它时,我可以pmap: # pmap 28578 28578: ./a.out 0000000000400000 4K r-x-- /root/a.out 0000000000600000 4K r---- /root/a.out 0000000000601000 4K rw--- /root/a.out 00007f87c16c2000 1524K r-x-- /lib/libc-2.11.1.so 00007f87c183f000 2044K ----- /lib/libc-2.11.1.so 00007f87c1a3e000 16K r---- /lib/libc-2.11.1.so 00007f87c1a42000 4K rw--- /lib/libc-2.11.1.so 00007f87c1a43000 20K rw--- [ anon ] 00007f87c1a48000 128K r-x-- …


5
优雅的方式杀死进程
用硒服务器完成我的bash脚本后,该脚本将其杀死,如下所示: kill `ps -ef | grep selenium | awk '{ print $2 }'` 尽管此方法有效并且确实杀死了Selenium脚本,但它也尝试杀死进程。grep selenium因此,当进程号回到kill命令时,进程消失了,因此最终生成了一条错误消息。(换句话说:它最终杀死了两个进程,其中一个是真正的硒服务器,另一个是短暂的进程,这是我执行此命令的副作用。) 有没有更优雅的方式来杀死进程,而没有这种意想不到的副作用? (我有一个想法:这个脚本在脚本中更早地启动selenium,所以也许如果有一种方法可以在我启动selenium时捕获PID,我可以保留它并直接杀死它,而不是grepping问题是,我不知道如何获取该PID,不知道如何使用变量来保存它,以及如何稍后在脚本中引用它。但这是更好的方法吗?)
12 process  search  kill 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.