Chinaunix

标题: Shell中有可能使用md5sum校验自身吗? [打印本页]

作者: dgww    时间: 2010-05-19 14:21
标题: Shell中有可能使用md5sum校验自身吗?
一个脚本里面使用md5sum校验自身,这是不是不可能?有什么办法保证脚本的完整性吗?
作者: iori809    时间: 2010-05-19 14:24
怎么个完整性?没看明白
作者: rdcwayx    时间: 2010-05-19 15:35
有什么问题吗?

你写个脚本验证一下不就可以了。
  1. $ cat dgww.sh
  2. # test md5sum
  3. md5sum $0

  4. $ ./dgww.sh
  5. 25e7cef90ace44c132fc91da48e7ac5a *./dgww.sh

  6. $ md5sum dgww.sh
  7. 25e7cef90ace44c132fc91da48e7ac5a *dgww.sh

复制代码
两次结果是一样的
作者: waker    时间: 2010-05-20 08:55

  1. cat >urscript <<\EOF
  2. #! /bin/bash
  3. echo test stage 1
  4. [ $(sed '/^#md5sum/d' "$0"|md5sum|cut -f1 -d' ') = $(sed -n '/^#md5sum */s///p' "$0" ) ] &>/dev/null|| { echo "$0" is incorrect&&exit 2;}
  5. echo test stage 2
  6. EOF
  7. chmod +x urscript
  8. ./urscript
  9. echo -n '#md5sum ' >>urscript
  10. sed '/^#md5sum/d' urscript |md5sum|cut -f1 -d' ' >>urscript
  11. ./urscript
  12. cp urscript{,2}
  13. ./urscript2
  14. echo >>urscript2
  15. ./urscript2
复制代码

作者: meeslo    时间: 2010-05-20 09:13
知道具体值的话 应该没有差别吧
作者: dgww    时间: 2010-05-20 09:56
请问,这个是什么意思

sed -n '/^#md5sum */s///p'




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2