标题:[实践OK]Mac下安装md5sum和linux下的md5sum使用和输出一样,不一样的FreeBSD 11.1下的md5和Linux下的md5sum不一样输出格式统一成md5deep以及自己编译出Linunx一样的md5sum可执行文件的瞎折腾。 出处:向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除 时间:Thu, 10 May 2018 15:10:04 +0000 作者:jackxiang 地址:http://jackxiang.com/post/9742/ 内容: Mac下安装md5sum:https://blog.csdn.net/cup_chenyubo/article/details/52982986 brew install md5sha1sum 背景:公司网不好传入rz -bye的稍微大点的文件就断开了,再运行rz -bye,还会继续重头再传(只要失败再SSH上去运行rz -bye就会继续传,和默认SSH的目录无关,这个有点意思,但要是rz -bye支持断点上传就好了。),于是这就有一个比对文件是否是真的传上去了的md5sum比对,而Linux下有md5sum filename,FreeBSD下有md5,但输出格式和Linux下的不大一样,但都是求Md5,于是找了找,发现一个叫md5deep的可以Port安装,输出还和Linux下的一样,相当友好,偶尔会用到,记录三种都能达到目录,个人认为以第二种较为精简有力,符合Linux思想,现在用FreeBSD多吗?嘿嘿。 零)系统自己默认的md5也能求出文件内容的md5值: md5 harbor-offline-installer-v1.2.0.tgz MD5 (harbor-offline-installer-v1.2.0.tgz) = 235fcfb9fe00ad61f6cbc2de4920b477 #which md5 /sbin/md5 #ln -sf /sbin/md5 /sbin/md5sum #作个软链接且名字修改成md5sum #md5sum harbor-offline-installer-v1.2.0.tgz #SecureCRT下新开SSH窗口: MD5 (harbor-offline-installer-v1.2.0.tgz) = 235fcfb9fe00ad61f6cbc2de4920b477 ==== 上面格式和Linux有点出入,找到一个和Linux一样的类似md5sum的Port安装包命令md5deep==== 一)/usr/port/security/md5deep make && make install 上面这个md5deep的输出和Linux的md5sum一样的: On FreeBSD: #md5deep /opt/harbor-offline-installer-v1.2.0.tgz 235fcfb9fe00ad61f6cbc2de4920b477 /opt/harbor-offline-installer-v1.2.0.tgz On Linux: #md5sum harbor-offline-installer-v1.2.0.tgz 235fcfb9fe00ad61f6cbc2de4920b477 harbor-offline-installer-v1.2.0.tgz 于是这样: #which md5deep /usr/local/bin/md5deep #rm -rf /sbin/md5sum #删除前面的软链接。 vi /root/.cshrc alias md5sum '/usr/local/bin/md5deep' #which md5sum md5sum: aliased to /usr/local/bin/md5deep 重新开一个FreeBSD的终端,和Linux一样运行md5sum filename获取文件内容的md5值: #md5sum harbor-offline-installer-v1.2.0.tgz 235fcfb9fe00ad61f6cbc2de4920b477 /opt/harbor-offline-installer-v1.2.0.tgz 二)/usr/ports/sysutils/coreutils make clean make deinstall make && make install 弹出一个窗体,选取消: coreutils-8.25.tar.xz 12% of 5590 kB 382 kBps 00m20s md5sum is part of GNU coreutils. The FreeBSD port to install is sysutils/coreutils. This will install all the GNU coreutils with a g prefix, so md5sum will be available as gmd5sum. 安装完后,md5sum生成在这个位置,直接拷贝到/usr/local/bin下面得了: /usr/ports/sysutils/coreutils/work/coreutils-8.25/src/md5sum /opt/harbor-offline-installer-v1.2.0.tgz 235fcfb9fe00ad61f6cbc2de4920b477 /opt/harbor-offline-installer-v1.2.0.tgz cp -rf /usr/ports/sysutils/coreutils/work/coreutils-8.25/src/md5sum /bin/md5sum #和Linux目录一样。 #which md5sum /bin/md5sum #md5sum /opt/harbor-offline-installer-v1.2.0.tgz #/bin/md5sum 235fcfb9fe00ad61f6cbc2de4920b477 /opt/harbor-offline-installer-v1.2.0.tgz #ldd /bin/md5sum /bin/md5sum: libc.so.7 => /lib/libc.so.7 (0x800836000) 我只要这一个coreutils编译出来的md5sum,于是make deinstall卸载掉没有用到的一些东西: cd /usr/ports/sysutils/coreutils make clean && make deinstall 因为它只是用到libc.so.7这个动态链接库,即使卸载掉后,依然能够运行这个md5sum的可执行文件求出输出文件的MD5值: #md5sum /opt/harbor-offline-installer-v1.2.0.tgz 235fcfb9fe00ad61f6cbc2de4920b477 /opt/harbor-offline-installer-v1.2.0.tgz 参考:https://unix.stackexchange.com/questions/439974/how-to-install-md5sum-in-freebsd 文中两Port摘自:https://forums.freebsd.org/threads/md5-compare-long-file-list-to-md5-file-contents.21795/ Generated by Jackxiang's Bo-blog 2.1.1 Release