如何修复丢失的 libcrypto.so.1.1?

Kom*_*miš 21 linux arch-linux node.js

当我尝试在我的系统上运行nodejs时,我第一次遇到这个问题。我收到此错误消息:

node: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我在尝试运行VirtualBox时也遇到过;它给了我这样的信息:“我们无法启动,因为我们没有 libcrypto.so.1.1”

我使用 Arch 作为我的操作系统,但我发现的一切都是针对 Ubuntu 的。

skw*_*man 30

我也在 arch 上遇到了这个。对我来说,解决方案是还安装openssl-1.1提供的libcrypto.so.1.1.

升级也可能pacman对您造成影响;如果是这样,您将必须从镜像下载该软件包并手动将libcrypto.so.1.1libssl.so.1.1放入/usr/lib/. 然后,你可以运行

pacman -U --overwrite '/usr/lib/*' openssl-1.1-1.1.1.s-2-x86_64.pkg.tar.zst
Run Code Online (Sandbox Code Playgroud)

安装完整的软件包。

请注意,sudo如果是的话,也可能会被破坏pacman,因此,如果您没有 root 密码来登录,su则可能需要从安装磁盘进行恢复。

  • 我刚刚遇到了同样的问题,确实“sudo”也不起作用。我记得我安装了 Docker,它在 noob 方式下总是以 root 身份运行,现在这成了我的出路。我运行了 arch docker image;`docker run --rm -it -v /usr/lib:/temp archlinux` 并在容器中运行 `pacman -Sy openssl-1.1` 并移动文件 `mv /usr/lib/libcrypto.so.1.1 /usr /lib/llibcrypto.so /usr/lib/libssl.so.1.1 /usr/lib/libssl.so /temp/` (5认同)
  • 除非安装了 openssl,否则无法使用 pacman 安装 openssl。所以我做了一个肮脏的解决方法:`mkdir openssl-1.1; tar xf openssl-1.1-1.1.1.s-2-x86_64.pkg.tar.zst -C openssl-1.1; cd openssl-1.1;sudo cp -vr usr/* /usr`。然后用更宽的模式覆盖`sudo pacman -U --overwrite \* openssl-1.1-1.1.1.s-2-x86_64.pkg.tar.zst` (4认同)