Nix가 캐시에서 파일을 복사하는 데 오랜 시간이 걸립니다.

Nix가 캐시에서 파일을 복사하는 데 오랜 시간이 걸립니다.

어젯밤에 nixos 구성을 수정하려고 오랜 시간을 보냈으나 실패했습니다. 그래서 오늘 저는 기존 세대와 함께 일하기 위해 다시 돌아왔지만, 제 두려움을 깨뜨릴 것 같은 일을 하고 있습니다.

이제 일부 Haskell을 컴파일하면 다음 stack build과 같은 결과를 얻습니다.

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-데몬이 트리에 나타나는 것을 확인하고 결정적으로 종료하기 위해 프로세스에 서명 용어를 보내면 터미널에서 종료되는 것처럼 보이고 오류가 표시됩니다. 걸다.

그래서 이 모든 과정은 디버깅 작업을 통해 축적된 것 같습니다.

그래서 나는 이 모든 프로세스를 죽이려고 노력합니다. 목록을 아래로 내려가서 하나씩 종료시켰고, 해당 프로세스가 19486종료된 후 나머지 프로세스는 모두 정상적으로 종료되었습니다.

해당 프로세스가 사라지면 stack build이제 제대로 작동합니다.

아직도 무슨 일이 일어났는지, 왜 이 수정 사항이 효과가 있었는지는 알 수 없지만 앞으로 누군가에게 도움이 되기를 바랍니다.

관련 정보