相关疑难解决方法(0)

如何保持redis服务器运行

我在nodejs应用程序中使用redis进行会话支持.我已经安装了redis服务器,它在我运行redis-server时工作,但是当我关闭终端时redis停止并且不起作用.如何让redis服务器永远运行?

redis

70
推荐指数
4
解决办法
6万
查看次数

如何让我的Golang Web服务器在后台运行?

我最近完成了Wiki Web开发教程(http://golang.org/doc/articles/wiki/).我有很多乐趣,我想尝试更多的net/http包.

但是,我注意到当我从控制台运行wiki时,wiki会接管控制台.如果我关闭控制台终端或停止进程,CTRL+Z则服务器停止.

如何让服务器在后台运行?我认为这个术语是在一个守护进程中运行的.

我在Ubuntu 12.04上运行它.谢谢你的帮助.

linux daemon go

41
推荐指数
4
解决办法
3万
查看次数

注销时bash如何处理作业?

据我所知,从书籍和bash手册中可以看出.当用户从bash注销时,如果用户未使用nohup或disown,则用户启动的所有后台作业将自动终止.但今天我测试了它:

  1. 登录到我的gnome桌面并访问gnome-terminal.
  2. 终端中有两个选项卡,其中一个我创建了一个名为test的新用户并以test身份登录

    su - test
    
    Run Code Online (Sandbox Code Playgroud)
  3. 开始写一个剧本.

    cat test.sh
    #!/bin/bash
    sleep 60
    printf "hello world!!"
    exit 0
    
    
    ./test.sh &
    
    Run Code Online (Sandbox Code Playgroud)
  4. 之后我退出测试并关闭了标签

  5. 在下一个选项卡中,我以root身份执行了ps aux,发现该作业仍在运行.

这是怎么回事?

linux bash nohup

17
推荐指数
2
解决办法
7972
查看次数

nohup 无法正常工作

我有一个非常简单的 bash 脚本。我希望这个 bash 脚本在我从终端注销后继续运行,因为它正在监视一些服务。但是,我遇到的问题是,一旦我退出终端,进程就会终止。

我运行这个过程:

nohup ./test.sh > test.log & 
Run Code Online (Sandbox Code Playgroud)

我使用以下方法检查过程:

 ps -aux | grep test.sh
Run Code Online (Sandbox Code Playgroud)

当我运行该进程时,我会检查脚本是否正在运行。但是,当我重新连接时,脚本不再运行。

test.sh文件内容如下:

#!/bin/bash
while :
do
        echo `date`": ****** Scheduled Test *****"
        result1=$(wget "127.0.0.1" -q -O -)
        result2=$(wget "127.0.0.1" -q -O -)
        echo ": $result1"
        echo ": $result2"
        if [[ $result1 == *"Running OK"* ]] && [[ $result2 == *"Running OK"* ]];
        then
                echo "***** Running OK ***** :)"
                sleep 60
                continue
        fi
        echo "@@@@@ Not Running @@@@@"
        echo "-----> Killing JARS"
        kill …
Run Code Online (Sandbox Code Playgroud)

unix linux bash nohup

5
推荐指数
1
解决办法
1万
查看次数

当我关闭 bash 终端时,gunicorn 和 python 不起作用

我有一个在 centos 机器上运行的 python 程序。我使用 virtualenv (source activate) 来激活特定的 python,然后使用以下命令:

gunicorn -t 10000 -b 0.0.0.0:1234 start:app &
Run Code Online (Sandbox Code Playgroud)

效果很好。但是当我关闭 bash 时,我的程序就不再工作了。当我打开一个新的bash(通过PUTTY)并输入

 ps -C gunicorn
Run Code Online (Sandbox Code Playgroud)

我看到gunicorn进程正在运行。如果我将所有这些放在 local.rc 上(与服务器一起初始化),一切都会正常工作。

我有两个问题。第一个是:

我可以在gunicorn上放置一个“永远”(就像我们在node.js上放置的那样),或者从bash中分离gunicorn和virtualenv,以便始终独立于关闭bash运行吗?

我怎么解决这个问题?

centos virtualenv python-2.7 gunicorn

3
推荐指数
1
解决办法
1236
查看次数

当应用程序可以作为系统服务运行时,为什么要使用nohup?

我将这个问题放在stackoverflow上,因为我已经在这里找到了很多有关该主题的问题。

简短介绍

简单地说,nohup可用于在后台运行应用程序,并在用户注销或关闭终端或ssh会话后保持其运行,例如

这里有很多关于stackoverflow的示例问题,例如thisthat

我的问题很简单。

为什么选择了nohup,当有类似的选项upstartsystemd......其管理的应用作为服务于更方便的方式(运行级别,...)?

阅读有关相似主题的许多问题,唯一的选择似乎是nohup。几乎从来没有答案是这样的:“ ...使用暴发户脚本,因此一切都由您完成...”


我主要使用eg upstart,除了可能用于快速而肮脏的测试场景。

我缺少重要的东西吗?

linux bash upstart nohup systemd

0
推荐指数
1
解决办法
4268
查看次数

标签 统计

linux ×4

bash ×3

nohup ×3

centos ×1

daemon ×1

go ×1

gunicorn ×1

python-2.7 ×1

redis ×1

systemd ×1

unix ×1

upstart ×1

virtualenv ×1