Autodir 对所使用的备份程序提出了一些额外的要求:当备份程序正在处理实际目录,以及相应的已过期的虚拟目录时,并且当应用程序在备份运行时再次请求该虚拟目录时,备份进程将被终止。首先会发送一个SIGTERM被发送以使其优雅地停止。但是如果它没有及时关闭——并且它有一秒钟的时间来做到这一点——则会发送一个SIGKILL将被发送,这将保证停止备份。
![]() | 只有当备份停止后,应用程序才能被授予访问所请求的虚拟目录的权限。 |
![]() | 无论使用何种备份,它都应该能够从这个信号中优雅地恢复,而不会导致无法恢复的副作用。 |
另一个重要的问题是备份运行的环境。所有备份程序都以 root 身份运行。但与此同时,所有不必要的 root 权限都通过使用 POSIX 功能被移除。换句话说,这些备份程序可以读取系统上属于任何用户的任何文件或目录,仅此而已。除此之外,备份进程的行为就像一个普通用户级别的进程。