计算化学公社

标题: xshell断开与服务器的连接后,计算停止 [打印本页]

作者
Author:
lastzealot    时间: 2015-4-11 15:30
标题: xshell断开与服务器的连接后,计算停止
用xshell输入命令,用winscp看里面的文件。关掉xshell直接导致计算停止,winscp里面的那个.out文件大小不再变化,打开看里面最下行也不再变化。
求问大神这是为啥?如何处理?

作者
Author:
lastzealot    时间: 2015-4-11 16:05
补充一下,我是用一个批处理文件提交的任务,不是利用命令行提交的,下面是批处理文件内容:
#!/bin/bash
for inf in *.gjf
do
outf=`echo ${inf}|tr "gjf" "out"`
/db/home/haha/g09/g09 < ${inf} > ${outf}
done
我在网上查看到说的是加上g09 test.com&,有的说加上nohup g09 *.com &
我不知道这是什么意思,也不知道怎么加进去,麻烦高手帮忙。
(由于我想每次提交任务提交多个,所以才用批处理;再说我不懂linux系统,命令行提交我也不会。所以,做了一个批处理文件,每次都用这个,方便一些。这种方法在我自己的电脑上屡试不爽,但是用在服务器上总是遇到各种问题,呵呵。
作者
Author:
diaolanxinyu    时间: 2015-4-11 16:57
我是这样的使用的,建一个**.in文件,里面输入需要计算的文件,g09 01.gjf 01.out 然后回车输入下一个回车下一个,注意空格,
然后传到服务器上,然后输入setsid sh **.in &  就OK了!

方法比较笨一点,但是没有出过错,呵呵


作者
Author:
lastzealot    时间: 2015-4-11 17:30
diaolanxinyu 发表于 2015-4-11 16:57
我是这样的使用的,建一个**.in文件,里面输入需要计算的文件,g09 01.gjf 01.out 然后回车输入下一个回车 ...

谢谢你的帮忙
请问这种方法可用在批处理文件上吗?我的文件比较多,一个一个输入如果输错了就运行不了了。
作者
Author:
lastzealot    时间: 2015-4-11 17:39
本帖最后由 lastzealot 于 2015-4-11 17:40 编辑
diaolanxinyu 发表于 2015-4-11 16:57
我是这样的使用的,建一个**.in文件,里面输入需要计算的文件,g09 01.gjf 01.out 然后回车输入下一个回车 ...

我试了一下,你这个方法的确好用。但是我需要输入/db/home/haha/g09/g09,而不是直接输入g09,也就是需要把g09的所在位置写上,请问这是为啥?
作者
Author:
卡开发发    时间: 2015-4-11 18:53
要么试试nohup g09 xxx.gjf &
作者
Author:
diaolanxinyu    时间: 2015-4-11 22:05
lastzealot 发表于 2015-4-11 17:39
我试了一下,你这个方法的确好用。但是我需要输入/db/home/haha/g09/g09,而不是直接输入g09,也就是需要 ...

1.是不是你的用户权限没有设置好,例如4. chown -R root:users  /opt/gaussian/g09d01/g09/
  是修改g09目录及里面内容的所有用户权限为root:users
2.改用户权限,你可以用vi /etc/passwd命令该
例如cf:x:503:100::/home/cf:/bin/bash
注意:503是编号,改成100就好了

你试试吧,我也不确定
作者
Author:
diaolanxinyu    时间: 2015-4-11 22:07
diaolanxinyu 发表于 2015-4-11 22:05
1.是不是你的用户权限没有设置好,例如4. chown -R root:users  /opt/gaussian/g09d01/g09/
  是修改g09 ...

只把503后面的数字改成100就好了
作者
Author:
diaolanxinyu    时间: 2015-4-11 22:10
lastzealot 发表于 2015-4-11 17:30
谢谢你的帮忙
请问这种方法可用在批处理文件上吗?我的文件比较多,一个一个输入如果输错了就运行不了了 ...


我计算的不是很多,所以都是一个个输入的,要不你还是试试用脚本吧
不知道你看了sobereva老师的这个帖子没?
http://sobereva.com/258
作者
Author:
lastzealot    时间: 2015-4-11 22:52
diaolanxinyu 发表于 2015-4-11 22:10
我计算的不是很多,所以都是一个个输入的,要不你还是试试用脚本吧
不知道你看了sobereva老师的这个帖子 ...

非常感谢
我一般是把若干个.gjf算上然后就上班,呵呵。我的工作不是理论计算,只是兴趣而已,所以上班做不了只能回家做,但目前依然是个小菜鸟。有些科研想法想通过计算来实现,所以才学高斯。
谢谢指教,你可以在小木虫上加我 lastzealot。
作者
Author:
helpme    时间: 2015-4-12 14:43
比如你的脚本是 run.sh
那就写: nohup run.sh & 即可。
上面要求脚本run.sh在PATH路径里面,如果是当前目录下的脚本,可以 nohup ./run.sh & 。




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3