我已经使用 apt-get install 安装了软件包。我想知道哈希 MD5,以便我可以确保它与我安装的其他笔记本电脑中的软件完全相同。什么命令会显示这个已安装软件的哈希值?
我刚刚在之前运行 Ubuntu 19.04 的笔记本电脑上安装了 Ubuntu 20.04。使用了完整的“擦除磁盘并安装 Ubuntu”选项,安装介质是 U 盘。
安装后我尝试做的第一件事当然是sudo apt-get update
bam!错误:
Err:6 http://security.ubuntu.com/ubuntu focal-security/main i386 Packages
Hash Sum mismatch
Hashes of expected file:
- Filesize:145444 [weak]
- SHA256:441dab3c8a255fd5fec066a31c406525dab6a5629029e426170033835738ef0f
- SHA1:70e9e8dec8b9f753d2ddb0d8696b2714fcdbd2b0 [weak]
- MD5Sum:04ce44602d56d586cc827d4dae28de89 [weak]
Hashes of received file:
- SHA256:925ddfd0bf7dc54656ebd729304c8826c779229eab489e39cbda3b83498c305d
- SHA1:9de08f4ffa54879375ef93899b8179785e795f9a [weak]
- MD5Sum:3782b8853b62334b19cd0db4e2c4840b [weak]
- Filesize:145444 [weak]
Last modification reported: Thu, 29 Oct 2020 19:16:50 +0000
Release file created at: Sat, 31 Oct 2020 04:53:35 +0000
Fetched 252 kB in 3s (93.9 kB/s)
Reading package lists... Done
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/focal-security/main/binary-i386/by-hash/SHA256/441dab3c8a255fd5fec066a31c406525dab6a5629029e426170033835738ef0f Hash Sum mismatch
Hashes of expected file:
- Filesize:145444 [weak]
- SHA256:441dab3c8a255fd5fec066a31c406525dab6a5629029e426170033835738ef0f
- SHA1:70e9e8dec8b9f753d2ddb0d8696b2714fcdbd2b0 [weak]
- MD5Sum:04ce44602d56d586cc827d4dae28de89 [weak]
Hashes of received file:
- SHA256:925ddfd0bf7dc54656ebd729304c8826c779229eab489e39cbda3b83498c305d
- SHA1:9de08f4ffa54879375ef93899b8179785e795f9a [weak]
- MD5Sum:3782b8853b62334b19cd0db4e2c4840b [weak]
- Filesize:145444 [weak]
Last modification reported: Thu, 29 Oct 2020 19:16:50 +0000
Release file created at: Sat, 31 Oct 2020 04:53:35 +0000
E: Some index files failed to download. They have been ignored, or old ones used instead.
另外,由于未满足依赖关系,我无法安装 gnome-tweak-tools 但我猜那是因为更新不起作用。我已经看到其他几个用户报告了同样的问题,但是那里建议的解决方案(比如删除 apt 列表目录的内容)要么对我不起作用,要么不适用于我的情况。这应该是一个 LTS 稳定版本,但最基本的功能失败了。
那么,有没有不需要我绞尽脑汁的解决方案呢?
我对这篇文章有疑问,如何在 Ubuntu 上配置 Netplan 以安全地存储 802.1x 凭据?
因为我是个菜鸟,所以我没有评论帖子的声誉,并且创建一个新问题是版主建议我的。
我password: hash:83...11
在我的配置文件中使用了 netplan 的格式,但文件/run/netplan/wpa-enp0s31f6.conf
仍然在哈希周围有引号(它不应该)。
(当我使用明文密码时,一切正常!)
我究竟做错了什么?
干杯杰戈
我在 O'reilly Bash 的书(第三版,2005 年)中读到了我的理解,如果我执行,hash
我会看到一个“哈希表”,其中包含所有可能的 Bash 命令以及大多数环境通用的所有命令的列表,包括我的系统中可用的 Bash。
然而在 WSL-Ubuntu (16.04 - xenial) 中,我执行hash
并得到了:
hits command 1 /usr/bin/mesg
这可能是 WSL 独有的(我现在没有要测试的非 WSL Ubuntu 机器)?
更新
我误解了这一章 - 哈希表不包括所有 Bash 命令,但似乎所有最近使用的非 bash 命令(以及包含其数据的文件的路径);
只是作者给出了一个列表,其中包含一些非常常见的命令,尽管它们是独立的实用程序(这是书中的列表 - 第 72 页),但我在快速查看列表时误将它们混淆为“内置”:
cat
stat
less
man
apropos
more
ln
ls
ps
vi
当然,这些不是 Bash 内置命令,如cd
, echo
, set
, shopt
, source
, bash
, if
, case
, for
, while
, kill
, trap
, exit
, 等,而是在基于 Bash 的环境中非常常见的独立实用程序。
到目前为止,我已经将这种差异内化得足够深,并且谦卑地相信我不会再以这种尴尬的方式混淆。这对我来说是重要的一课;我从来没有真正深入研究过非常常见的程序是 Bash 内置程序还是在基于 Bash 的环境中可能被理解为“内置”的“非常常见”实用程序之间的差异,但我的立场是 - “不再有!”。