Chinaunix首页 | 论坛 | 博客
  • 博客访问: 14017
  • 博文数量: 14
  • 博客积分: 330
  • 博客等级: 一等列兵
  • 技术积分: 80
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-19 19:39
文章分类
文章存档

2011年(14)

我的朋友
最近访客

分类: LINUX

2011-04-21 16:22:02

  linux2010-10-25 16:25:05阅读27评论0 字号:大中小 订阅 使用xshell登录linux主机,需要启动一 些服务或者运行一些程序,在默认情况下,当我们关闭ssh终端连接,随之启动的程序也会关闭。原因是:SSH会话关闭时,ssh所关联的pty关闭,系统会给这个pty所关联的session中的所有进程发送SIGHUP信号,SIGHUP的默认信号处理程序是终止进程,除非进程自己处理了 SIGHUP。

  解决方法如下:

  使用命令nohup,让指定的程序在pty关闭之后继续运行,也就是在后台运行。

  运行方法:

  #nohup program &

  如以下命令

  nohup bin/nutch fetch internetweb/segments/20101020162440 >> logs/nutch.log &

  这时程序可以运行,但会有警告:忽略输入重定向错误到标准输出端。这时因为这个命令只定义了标准输出重定向,而没有定义错误输出。可以使用1>>表示标准输出,2>>表示错误输出,完整命令如下:

  nohup bin/nutch fetch internetweb/segments/20101020162440 1>> logs/nutch.log 2>> logs/nutch-err.log &

  则程序正常运行且无警告。

  有资料说较nohup更好的命令screen,暂时未试,资料参考:

  

  http://www.ibm.com/developerworks/cn/linux/l-cn-sc reen/

  

Linux是一类Unix计算机操作系统的统称。Linux操作系统的的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于计算机业余爱好者Linus Torvalds。

--------转载

阅读(477) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~