Nix 需要很长时间才能从缓存中复制文件

Nix 需要很长时间才能从缓存中复制文件

昨晚我花了很长时间尝试修复我的 nixos 配置但失败了。所以今天我重新开始与现有一代人一起工作,但我所做的事情似乎打破了我的恐惧。

现在,当我运行stack build编译一些 Haskell 时,我得到:

these paths will be fetched (0.05 MiB download, 0.28 MiB unpacked):
  /nix/store/wv1mbc34jaws00lyhgqr6aix5ql0c1r6-bash-interactive-4.4-p23-dev
copying path '/nix/store/wv1mbc34jaws00lyhgqr6aix5ql0c1r6-bash-interactive-4.4-p23-dev' from 'https://cache.nixos.org'...

然后它就挂了。它永远不会产生错误或警告,它只是挂起。我不知道这里出了什么问题。我已连接到互联网,但如果我断开连接并运行它,我会得到完全相同的行为。我尝试了频道更新,但这也没有什么区别。

我尝试四处寻找这个,但是如果没有错误,就很难获得有关我的错误的任何信息。

有什么问题吗?

答案1

我不知道到底是什么问题,但我打开 pstree 查看进程:

 |--= 04059 root /nix/store/657mlp757yfixz785sdv9acsak37f5qy-upower-0.99.11/libexec/upowerd
 |-+= 01858 root nix-daemon --daemon
 | |--= 25318 root nix-daemon 25308
 | |--= 24986 root nix-daemon 24976
 | |--= 24302 root nix-daemon 24289
 | |--= 23922 root nix-daemon 23909
 | |--= 23241 root nix-daemon 23231
 | |--= 22224 root nix-daemon 22214
 | |--= 21139 root nix-daemon 21129
 | |--= 19486 root nix-daemon 19467
 | |--= 16433 root nix-daemon 16406
 | |--= 15640 root nix-daemon 15629
 | |--= 15587 root nix-daemon 15575
 | |--= 15445 root nix-daemon 15435
 | |--= 14495 root nix-daemon 14484
 | |--= 14262 root nix-daemon 14252
 | |--= 13035 root nix-daemon 13025
 | |--= 11311 root nix-daemon 11301
 | |--= 09962 root nix-daemon 9951
 | \--= 07739 root nix-daemon 7721

这是相当多的 nix 守护进程,这可能不应该是。每次我stack build再次运行时,我都会注意到树上会出现一个新的 nix-daemon,并且至关重要的是,当我向进程发送一个 sig 术语以退出时,而它似乎在我的终端中退出并显示错误,则进程会挂起。

因此,所有这些过程似乎都是通过调试工作积累起来的。

所以我尝试杀死所有这些进程。我沿着列表逐个杀死了它们,在进程19486被杀死后,所有剩余的进程都正常退出。

随着这些进程的消失,stack build现在可以正常工作了。

仍然不知道发生了什么或为什么此修复有效,但希望这可以对将来的某人有所帮助。

相关内容