前言

django在linux上运行,一般在xshell远程连接后,是通过python manage.py runserver 0.0.0.0:8000启动服务。但是这样有个弊端,窗口关闭服务就停止了。

nohup可以启动的时候挂后台运行

nohup后台运行

cd到django的manage.py目录,启动之前先杀掉进程

[root@yoyo ~]# cd /usr/local/django2/
[root@yoyo django2]# ps -aux | grep python|xargs kill -9
kill: cannot find process "root"
kill: sending signal to 21029 failed: No such process
kill: cannot find process "0.0"
kill: cannot find process "0.0"
kill: sending signal to 112660 failed: No such process
kill: sending signal to 968 failed: No such process
kill: cannot find process "pts/2"
kill: cannot find process "S+"
kill: cannot find process "14:32"
kill: cannot find process "0:00"
kill: cannot find process "grep"
kill: cannot find process "--color=auto"
kill: cannot find process "python"
[root@yoyo django2]#

接着使用nohup启动进程,可以指定日志输出到djo.out,如果不指定默认是在nohup.out。指定日志路径后面加上2>&1 &

[root@yoyo django2]# nohup python manage.py runserver 0.0.0.0:8000 >djo.out 2>&1 &
[1] 21616
[root@yoyo django2]# tail -f djo.out
nohup: ignoring input
[25/Mar/2019 14:36:31] "GET / HTTP/1.1" 200 24
[25/Mar/2019 14:36:37] "GET / HTTP/1.1" 200 24
[25/Mar/2019 14:36:38] "GET / HTTP/1.1" 200 24
[25/Mar/2019 14:36:39] "GET / HTTP/1.1" 200 24

查看实时日志可以用tail -f djo.out

start.sh和stop.sh

接着可以在manage.py目录下一个start.sh文件启动django,再写个stop.sh停掉django服务。

使用vim start.sh编辑以下2行,编辑完成后Esc退出,输入:wq保存退出

[root@yoyo django2]# vim start.sh

ps -aux | grep python|xargs kill -9
nohup python manage.py runserver 0.0.0.0:8000 >djo.out 2>&1 &

继续使用vim start.sh编辑,编辑完成后Esc退出,输入:wq保存退出

ps -aux | grep python|xargs kill -9

编辑完成之后,授权这2个文件

[root@yoyo django2]# chmod +777 start.sh

[root@yoyo django2]# chmod +777 stop.sh

启动django

启动服务执行./start.sh,关闭服务执行./stop.sh

启动完成后,在浏览器输入地址,然后执行tail -f djo.out可以看到实时日志

Linux学习20-nohup挂后台启动django的更多相关文章

  1. 【Linux学习】nohup后台运行程序以及输出重定向

    Linux有两种命令使程序后台运行 第一种:支持后台运行,但是关闭终端的话,程序也会停止 command & 第二种:支持后台运行,关闭终端后,程序也会继续运行 nohup command & ...

  2. 【Linux.Python】Python进程后台启动

    嗯,比较忧伤. 前几天写了个tornado,启动了,很开心,后来每天要用时都发现it是kill掉的.好吧,是我太蠢啦.百度了下资料 python的启动方式: 1 python yourfile.py ...

  3. Linux学习8-CentOS部署自己本地的django项目

    前言 自己本地写好的django项目,如何部署到linux服务器上,让其他的小伙伴也能访问呢?本篇以centos系统为例,把本地写好的django项目部署到linux服务器上 环境准备: 环境准备: ...

  4. Linux学习django-CentOS部署自己本地的django项目

    前言 自己本地写好的django项目,如何部署到linux服务器上,让其他的小伙伴也能访问呢?本篇以centos系统为例,把本地写好的django项目部署到linux服务器上环境准备: 环境准备:1. ...

  5. 在linux下利用nohup来后台运行java程序

    nohup java -jar /etc/deny/denyHttp_fat.jar & http://limaoyuan.iteye.com/blog/900928 http://zshou ...

  6. Linux学习-CentOS 7.x 预设启动的服务简易说明

    这里 仅介绍几个很常见的 daemons 而已,更多的信息呢,就得要麻烦你自己使用 systemctl list-unit-files --type=service 去查询.底下的建议主要是针对 Li ...

  7. linux学习笔记-conky配置开机启动方法

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一.常用桌面的配置方法 创建启动文件并加入以下配置 ~/.config/autostart/conky.desktop [Des ...

  8. Linux(centos)使用shell脚本停止启动jar包

    在jar包目录下创建一个文件,后缀为 .sh #!/bin/bash # stop service pid=`ps -ef | grep "jar包名字" | grep -v &q ...

  9. Linux下java nohup 后台运行关闭后进程停止的原因,不挂断后台运行命令

    Linux下java nohup 后台运行关闭后进程停止的原因,不挂断后台运行命令 今天写sh脚本发现一终止命令程序就停止运行了,检查了很久才发现后面少了个&字符导致的!错误写法:nohup ...

随机推荐

  1. Ubuntu下mysql使用

    1. 从网上安装 sudo apt-get install mysql-server.装完已经自动配置好环境变量,可以直接使用mysql的命令. 注:建议将/etc/apt/source.list中的 ...

  2. Linux系统产生随机数/dev/random 和 /dev/urandom

    1.  基本介绍 /dev/random和/dev/urandom是Linux系统中提供的随机伪设备,这两个设备的任务,是提供永不为空的随机字节数据流.很多解密程序与安全应用程序(如SSH Keys, ...

  3. Linux挂载qcow2格式的镜像

    qcow2格式的镜像一般用于KVM/QEMU的hypervisor,当我们需要修改guest host内的一些配置而又不想启动VM时则可以通过挂载guest host进行修改. 需要安装的工具包: l ...

  4. js中的prototype原型解析

    在典型的面向对象的语言中,如java,都存在类(class)的概念,类就是对象的模板,对象就是类的实例.但是在Javascript语言体系中,是不存在类(Class)的概念的,javascript中不 ...

  5. 【noip模拟赛1】古韵之刺绣

    描述 日暮堂前花蕊娇, 争拈小笔上床描, 绣成安向春园里, 引得黄莺下柳条. ——胡令能<咏绣障> 古时女子四德中有一项——女红.女红的精巧程度对于女子来说是十分重要的.韵哲君十分爱好女红 ...

  6. Stable Match

    稳定婚姻问题 主要就是处理两个数组 boy[i][j]    存放第i个男的第j喜欢的女的   存的是女的编号!! girl[i][j]   存放 第i个女的对第j个男的的好感度  存的是值 然后只要 ...

  7. spring过滤器

    什么是过滤器 Spring 中不能处理用户请求,但可以用来提供过滤作用的一种Servlet规范.在请求进入容器之后,还未进入Servlet之前进行预处理,并且在请求结束返回给前端这之间进行后期处理.具 ...

  8. 005.基于docker部署etcd集群部署

    一 环境准备 ntp配置:略 #建议配置ntp服务,保证时间一致性 etcd版本:v3.3.9 防火墙及SELinux:关闭防火墙和SELinux 名称 地址 主机名 备注 etcd1 172.24. ...

  9. Android - Base64

    Android 将图片转换为Base64 public void convertToBase64(View view) throws IOException { //获取ImageView的图片 Bi ...

  10. 工程化框架之feather

    feather是一个工程化框架,他的主要任务是框架规范.性能优化.代码部署.自动化.本地调试.多人协同.静态资源管理. 一.安装 因为feather 为npm包,要安装node.js: 如果需要本地调 ...