【问题标题】:daemonize java program - go background after input some data守护java程序 - 输入一些数据后进入后台
【发布时间】:2014-06-05 19:44:53
【问题描述】:

我试图为以下用例找到解决方案(在 Linux 上):

  1. 启动程序,向标准输出显示一些信息,输入用户名/密码等一些信息。
  2. 程序验证用户名/密码,然后进入后台并作为守护进程运行。

我没有找到在 Java 中执行此操作的方法。有几个 sulotions 来守护 java 程序(例如jsvc,或者这个:http://barelyenough.org/blog/2005/03/java-daemon/)。但似乎它们都不适用于这种情况,因为程序只是从一开始就进入后台,在进入后台之前没有机会输入信息。

【问题讨论】:

  • 将其作为服务启动会起作用吗?
  • 为什么需要来自标准输入的信息,而不是 /etc 中的配置文件?请注意,在标准输入中输入密码并不比单个用户可读文件更安全 - 如果您 root 机器,您可以将通行证从进程内存中取出
  • @LorenzoBoccaccia 我认为对于大多数人来说,这比把它放在一个文件中要安全得多。

标签: java linux daemon jsvc


【解决方案1】:

我不相信有一种方法可以纯粹在 java 中做到这一点。您可以通过编写一个 init 脚本来使其工作,该脚本在后台生成 java 进程之前接受命令行参数。您可以使用 -D 命令行参数将用户输入传递给 java 进程。

【讨论】:

    猜你喜欢
    • 2014-04-13
    • 1970-01-01
    • 1970-01-01
    • 2010-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    • 1970-01-01
    相关资源
    最近更新 更多