2008年10月26日星期日

linux下前后台程序的转换

为了能够将通过vnc运行的程序在服务器上一直执行, 而不是当vnc关闭时,程序自动也结束。 网上搜了下相关的文档,但很多对于菜鸟级的新手,例如偶自己,看不明白。。

1). &符号, 在运行后面添加&,可以实现程序在后台运行,比如将./Parser运行于后台,则可以执行$ ./Parser & ,如果参数中用&符号,则要添加一个转义符\
不将当前终端关闭,而只是关闭VNC。 下次进入VNC时,可以现此程序仍在执行.

2). nohup命令, 不挂断地运行运行命令
无论程序是否输出重定向到终端,nohup都将输出附加到当前目录的nohup.out文件中。如果当前目录的nohup.out文件不可写,输出到$HOME/nohup.out文件中。
例如 nohup ./Parser &
它与 ./Parser &的区别是后者中,如果当前终端关闭,则Parser进程也将结束。而添加上nohup,则即使终端关闭,Parser进程仍执行。

3). 将正在运行的程序从前台转化为后台
a.)在终端运行 ./Parser,产生一个前台进程
b.) Ctrl + Z ,将进程Pparser暂停. 并会看到Parser的状态为Stopped
c.) 通过jobs命令查看Parser的编号,比如是1
d.) 执行命令dp 1,即将进程1转化为后台进程,程序从原stop点继续执行。其效果等同于./Parser &, 如果关闭当前终端,此进程仍结束. 怎样做到不结束呢??

2008年10月23日星期四

smb

为了能够在windows下与linux互传文件, 第一想到的是ssh. 貌似只知道默认已安装了openssh, 只需要启动服务或关防火墙什么事. 结果弄了大上午还没配置成功. 太弱!

最后, 还是借助VNC(有图形化启动VNC服务界面, 怎就找不到启动SSH服务界面呢),  然后再smb://windows_ip_address 

貌似传文件还是没ssh方便.