linux中 kill USR1和USR2 的区别

USR1亦通常被用来告知应用程序重载配置文件;例如,向Apache HTTP服务器发送一个

USR1信号将导致以下步骤的发生:
停止接受新的连接,等待当前连接停止,重新载入配置文件,重新打开日志文件,重启服务器,从而实现相对平滑的不关机的更改。

以上摘自wiki:

http://zh.wikipedia.org/wiki/SIGUSR1%E5%92%8CSIGUSR2

呃,近日发现还有USR2,貌似这个USR1和2都可以用户自定义的,同样摘自上面的wiki:

在POSIX兼容的平台上,SIGUSR1SIGUSR2是发送给一个进程的信号,它表示了用户定义的情况。它们的符号常量在头文件signal.h中定义。在不同的平台上,信号的编号可能发生变化,因此需要使用符号名称。

kill -HUP pid 或者 killall -HUP pName
其中pid是进程标识,pName是进程的名称
如果想要更改配置而不需停止并重新启动服务,可以使用上面两个命令。在对配置文件作必要的更改后,发出该命令以动态更新服务配置。
根据约定,当你发送一个挂起信号(信号1或HUP)时,大多数服务器进程(所有常用的进程)都会进行复位操作并重新加载它们的配置文件。