freebsd安装软件验证错误(SHA256 Checksum mismatch)解决方法

时间:2022-06-23 12:59:09
freebsd通过port或者pkg_add安装软件时,从软件源下载下来的tar.gz、tar.tb等结尾的软件包先要进行MD5完整性验证,可能由于网络或者其他原因(port软件本身有问题等,可能性很小),导致下载的软件安装包有问题(下载不完整等错误)导致验证通不过,导致安装时出现类似 SHA256 Checksum mismatch 的错误。
 
=>  SHA256 Checksum mismatch for subversion17/subversion-1.7.8.tar.bz2.

===>  Giving up on fetching files: subversion17/subversion-1.7.8.tar.bz2 
Make sure the Makefile and distinfo file (/usr/ports/devel/subversion/distinfo)
are up to date.  If you are absolutely sure you want to override this
check, type "make NO_CHECKSUM=yes [other args]".
*** Error code 1
Stop in /usr/ports/devel/subversion.

*** Error code 1
 
说明:/usr/ports/devel/subversion/distinfo 文件保存的是文件的正确的 SHA256 验证结果。安装过程安装包的验证结果会与distinfo文件中的正确结果比较,相同则通过,不同就会出错(SHA256 Checksum mismatch
 
解决办法:
1、#cd /usr/ports/distfiles/
2、移除出错软件安装包
3、重新安装 make install 
 
本例:
hsb@hsb %cd /usr/ports/distfiles/
hsb@hsb %ll subver*
total 5920
-rw-r--r--  1 root  wheel  6023912 Dec 19 23:53 subversion-1.7.8.tar.bz2
hsb@hsb %pwd
/usr/ports/distfiles
hsb@hsb %mv subversion17/subversion-1.7.8.tar.bz2 /usr/home/hsb/tmp/
hsb@hsb  %cd /usr/ports/devel/subversion
hsb@hsb  %make install clean