管理linux的后台运行
在我们通过SSH登陆服务器后,一般来说,所做的操作或者命令的输入都是属sshd下的shell的子进程,例如打开个SSH终端,输入ping www.163.com >>output.txt &,然后查看进程情况:
$ ps -ef|grep ping
sszheng 27491 27467 0 10:20 pts/0 00:00:00 ping www.163.com
sszheng 27535 27467 0 11:40 pts/0 00:00:00 grep ping
很显然它是shell的子进程,命令由一个子shell在后台执行,当前shell(
27467)立即取得控制等候用户输入,所以我的grep就可以使用了。后台命令和当前shell的执行是并行的,他们没有互相的依赖、等待关系,所以是异步的并行。 现在问题来了,如果ssh退出了,bash结束了,那么这个工作过程如何呢?后台执行的能否继续下去?
这里涉及到两个问题,就是退出ssh后,在我们exit执行的shell时候,会不会向我们后台的jobs发送SIGHUP信号呢?
如果发送了
SIGHUP信号,那么所有该shell下运行的进程都会被终止,也就是所希望的后台执行没有实现。在shell的options中,有
huponexit这个选项,意思就是退出shell时候,是否发送这个SIGHUP
信号?
$ shopt
cdable_vars off
cdspell off
checkhash off
checkwinsize off
cmdhist on
dotglob off
execfail off
expand_aliases on
extdebug off
extglob off
extquote on
failglob off
force_fignore on
gnu_errfmt off
histappend off
histreedit off
histverify off
hostcomplete on
huponexit off
interactive_comments on
lithist &n
相关文档:
linux中,通过
ls -al
显示的属性中,第一个就标志文件类型。通常有一下几种情况:
[ - ]----普通文件
[ d]----目录
[ l ]----连接文件
[ b]----块设备
[ c ]----字符设备
[ s ]----套结字
[ p ]----管道 ......
64位 linux 编译链接错库的问题
在64位机器下面编译软件的时候,经常会遇到编译的时候需要链接64位的库,但是编译时找的却是32位的库,可以通过如下的办法强制编译程序去找64位的库
LDFLAGS="-L/usr/lib64 -L/lib64" \
在配置时加上这么一个选项即可。
......
原文地址:http://blog.csdn.net/Javadino/archive/2008/09/06/2891413.aspx
引子:
1.在Linux系统中,进程状态除了我们所熟知的TASK_RUNNING,TASK_INTERRUPTIBLE,TASK_STOPPED等,还有一个TASK_TRACED。这表明这个进程处于什么状态?
2.strace可以方便的帮助我们记录进程所执行的系统调用,它是如何跟踪到进程执行的 ......
今天编译BlueZ的时候,突然间发生了一个创建 硬链接失败 ,脑海里跳出了了一个什么是硬链接的概念,一时间还真回答不上来,google了下,发现这篇博文描述的很清晰,转载之,以备忘...
链接——是一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法。
Linux中包括两种链接:硬链接(Hard Link)和软 ......
inux系统的启动过程是由很多步骤组成的,但是,无论你是启
动一个标准的x86桌面计算机,还是一个嵌入式PowerPC的目标板,大多数的流程是惊人得相似的。这篇文章,探索了linux从最初的启动准备到用户
空间中某个程序被开启之间的启动过程,跟随这个流程,你还能学到其他许多与启动有关的知识,例如,boot
loaders,内核解 ......