关于格式化行的 md5sum 警告

pka*_*mol 0 hashsum files checksum integrity

我正在尝试使用以下命令验证文件:

$ md5sum myfile_v2.1.ova -c myfile_v2.1.md5 
md5sum: myfile_v2.1.ova: no properly formatted MD5 checksum lines found
myfile_v2.1.ova: OK
Run Code Online (Sandbox Code Playgroud)

退出状态代码似乎是 1

$ echo $?
1
Run Code Online (Sandbox Code Playgroud)

然而读出时helpmd5sum命令,strict模式(其将失败时格式化issues`)应当明确启用;

$ md5sum --help | grep -- --strict
      --strict         exit non-zero for improperly formatted checksum lines
Run Code Online (Sandbox Code Playgroud)

为什么最重要的是我得到了一个OK关于文件的信息?

Kus*_*nda 5

在 MD5 校验和文件中验证校验和的正确方法是

$ md5sum -c file.md5
Run Code Online (Sandbox Code Playgroud)

在你的情况下:

$ md5sum -c myfile_v2.1.md5
Run Code Online (Sandbox Code Playgroud)

这将读取 MD5 文件中的路径名和校验和,并根据磁盘上的相应文件进行检查。


你的命令行:

md5sum myfile_v2.1.ova -c myfile_v2.1.md5 
Run Code Online (Sandbox Code Playgroud)

这相当于

md5sum -c myfile_v2.1.ova myfile_v2.1.md5
Run Code Online (Sandbox Code Playgroud)

(由于某些 GNU 实用程序将命令行选项移动到参数列表的开头的方式)。这意味着“检查在这两个 MD5 校验和文件中找到的签名”。由于第一个文件不是 MD5 校验和文件,因此它会抱怨。

另请注意,它正确地验证了 MD5 文件中的一个校验和。