启动脚本失败,因为程序未找到,但在计算机启动时仍然有效

时间:2011-04-09 23:46:22

标签: linux md5 startup crontab

这是我的Bash脚本/etc/init.d/test:它所做的只是在/ usr / local / bin上运行md5deep,它计算每个文件的md5校验和。

#!/bin/bash
cd /usr/local/bin
md5deep * 2>&1 | tee /exe/zlog2.txt

在我的电脑上运行时,这是输出:

root@beagleboard:~# /etc/init.d/test
aed52c61934a5b6c113d535e41bd7dd1  /usr/local/bin/gfcombine
149d9c8e711d772daf7bbb6c40cf630a  /usr/local/bin/gfsplit
08ed28c2febb9e21de504b206583b75d  /usr/local/bin/hashdeep
1575f479acab5fe3bee0046cc12d86e1  /usr/local/bin/md5deep
69109d35be14662c090316e2656dd546  /usr/local/bin/sha1deep
82bd68ce9658038d80ca62e4dec74ce9  /usr/local/bin/sha256deep
ee475a6c7d2d75016d5cb5b5a1df9e1b  /usr/local/bin/stunnel
2aca377e96b82a4f944d3224656b4743  /usr/local/bin/stunnel3
1118f6115880cb106cfb8928cab89241  /usr/local/bin/tigerdeep
405becadbfff425c193c363da812443b  /usr/local/bin/whirlpooldeep

我通过1)crontab将此脚本添加到启动中,2)update-rc.d test start 60 2 3 4 5。 3)update-rc.d test start 99 2 3 4 5。

该日志文件的输出如下:

root@beagleboard:/usr/local/bin# cat /exe/zlog2.txt 
/exe/test: line 3: md5deep: command not found

在找不到命令之前我遇到了问题,因为它们没有被加载,但我尝试在其他一切之后启动它。有谁知道如何解决这个问题?

谢谢!

-Eddie

2 个答案:

答案 0 :(得分:1)

source /etc/profile放在您的脚本中,在#!/bin/bash行之后 - 这将设置您的路径,以便找到md5deep

答案 1 :(得分:0)

您可以更改脚本以调用/ usr / local / bin / md5deep而不仅仅是md5deep。然后您不必加载任何其他内容或修改路径。