Cygwin安装挂起-man db

Cygwin安装挂起-man db,cygwin,Cygwin,我正在尝试在Windows 2012R2(64位)上安装Cygwin 64位。 下载和初始安装已完成,但当它到达man db(/etc/postinstall/man db)时,安装挂起 永远如此。我等了1.5个多小时,但仍然没有进展。 我检查了/var/log/setup.log中的日志文件,该文件包含以下内容 Updating index cache for path `/usr/share/man/man1'. Wait... Processing manual pages under /

我正在尝试在Windows 2012R2(64位)上安装Cygwin 64位。 下载和初始安装已完成,但当它到达man db(/etc/postinstall/man db)时,安装挂起 永远如此。我等了1.5个多小时,但仍然没有进展。 我检查了/var/log/setup.log中的日志文件,该文件包含以下内容

Updating index cache for path `/usr/share/man/man1'. Wait...
Processing manual pages under /usr/share/man...
/usr/bin/mandb: warning: /usr/share/man/man1/col.1.gz: whatis parse for col(1) failed
/usr/bin/mandb: warning: /usr/share/man/man1/imv.1 is a dangling symlink
/usr/bin/mandb: iconv_open ("UTF-8//IGNORE", "utf8"): Invalid argument
/usr/bin/mandb: warning: /usr/share/man/man1/mc.1.gz: whatis parse for mc(1) failed
我不确定是否应该取消并重新开始。这个设置是否会在这个阶段出现一些错误? 是否有人安装了64位Cygwin并出现此错误?
请帮助

等待3个多小时后,我决定取消安装。然后,我尝试重新安装,完全按照第一次安装中的步骤进行。我没有添加或删除任何包。第一次尝试中已选择的软件包被识别为已安装。这一次,安装程序在上述步骤(man db)短暂停止,然后完成安装。没有错误。因此,重新安装解决了我的问题。

经常发生在我身上。本周我安装了8台服务器,其中3台发生了这种情况。等了好几个小时,它仍然没有完成。有时重新安装可以工作,但有些不能。因此,我不得不终止mandb.exe进程,这样安装程序才能正常完成。到目前为止,我还没有发现这样做的副作用。

我今天一直在努力解决同样的问题,直到我意识到移动Cygwin主设置窗口时显示一个弹出窗口,抱怨“无法打开(null)读取:没有这样的文件”


这种情况在(重新)安装时会多次发生,但-

  • mandb.exe
    挂起时,我通过任务管理器杀死了它的父
    bash.exe
    ,安装完成
  • 然后我在任务管理器中杀死了
    mandb.exe
    ,因为它仍然在运行
  • 然后,我打开一个Cygwin shell并运行
    mandb-cds
    -c
    重新创建索引,
    -d
    打印消息(这样您就可以知道它正在做一些有建设性的事情!),
    -s
    禁止检查孤立的格式化手册页()
在我写这篇文章时,
mandb
仍在艰难前行,三四个小时后,还有很多事情要做

因此,我会记得稍后提交一份bug报告:),在mandb运行期间,我确实注意到了一个奇怪之处:

mandb: /usr/share/man/man3/jN.3 is self referencing
mandb: warning: /usr/share/man/man3/jnf.3.gz: bad symlink or ROFF `.so' request

不幸的是,这个解决方案不适合我。我和你一样取消了,重新安装了,但它仍然挂在man db步骤上。。。。这是针对32位Cygwin的,顺便说一句,您可以再次取消设置并尝试手动运行命令/usr/bin/mandb-c(请参见此和)好的,我运行了/usr/bin/mandb-c。它运行了几分钟,尽管它生成了几个看似无关的错误或警告,但最终还是得到了0个退出代码(这并不意味着什么)。很难判断它是否成功。有什么方法可以测试它吗?我搜索并发现“如果某个进程的退出状态为0,则认为该进程在Linux中已正确完成”。现在,Cygwin的成功安装通常以显示“安装完成”的标准对话框结束。现在可以做的是,启动Cygwin更新(类似于安装),不要添加任何额外的包。由于man db已经安装,因此在该阶段不会卡住。因此,您应该会收到“安装完成”消息。如果不想重新安装,可以假定安装已完成,并检查Cygwin所需的功能是否正常工作。除前面的注释外:如果不重新安装,则可能缺少启动Cygwin的桌面图标。你可以创建一个快捷方式,使用target作为'C:\cygwin\bin\mintty.exe-i/cygwin-Terminal.ico-'在过去的两个晚上,我遇到了一个Cygwin32和一个Cygwin64;我让它们在7~8小时内过夜,最后都完成了。我相信这个答案对我来说是正确的-在Windows 7中,我运行任务管理器并从“进程”选项卡中终止了mandb.exe进程,它确实正确地完成了。以管理员身份运行任务管理器,我必须终止bash.exe进程,而不是mandb.exe进程。它在mandb.exe上给了我一个拒绝访问错误(!),但当我终止父bash进程时,安装程序继续运行。然而,安装之后,发现mandb仍然在运行,我不得不用“结束任务”而不是“结束进程树”来终止它