加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

Windows – 来自CMD的Cygwin命令很慢;从bash是快

发布时间:2020-12-14 01:39:45 所属栏目:Windows 来源:网络整理
导读:我已经使用Cygwin命令从我的 Windows CMD提示几个月没有问题.在过去几天中,每次调用Cygwin命令(例如ls)时,该命令在实际运行之前需要几秒钟“加载”.如果我在bash提示符下尝试相同的命令,它会立即运行(“加载”). Cygwin FAQ提到PATH中的网络驱动器可能会导致
我已经使用Cygwin命令从我的 Windows CMD提示几个月没有问题.在过去几天中,每次调用Cygwin命令(例如ls)时,该命令在实际运行之前需要几秒钟“加载”.如果我在bash提示符下尝试相同的命令,它会立即运行(“加载”).

Cygwin FAQ提到PATH中的网络驱动器可能会导致问题,所以我尝试了一些我的PATH变量和网络连接的排列.下面,“完整路径”是指我原来的路径设置; “短PATH”表示只有Cygwin bin目录的路径.时间通过时间命令报告.

时间结果为ls

连接到网络:

>在bash内运行ls:0.124 s
>在CMD中运行ls(完整路径):41.29 s
>在CMD内运行ls(短路径):38.56秒

与网路断开连线

>在bash内运行ls:0.125 s
>在CMD中运行ls(完整路径):0.17秒
>在CMD中运行ls(短路径):0.19秒

cygcheck的结果

我运行cygcheck -s并注意到:

Warning: There are multiple cygwin1.dlls on your path

虽然这可能是由于Cygwin的bin目录中运行cygcheck.我完全卸载并重新安装Cygwin,仍然看到同样的问题.

netstat的结果

在执行Cygwin的ls之前和执行后(当它停滞)时,我运行了netstat -a -n.我做了这几次,发现每一次跑步的一行在延迟中一贯出现:

UDP    127.0.0.1:55030        *:*

端口号从测试变为测试.

strace结果

我在ls命令上运行Cygwin的strace.大多数延迟花在电话中,如:

11685  886560 [main] ls 10020 pwdgrp::fetch_account_from_windows: line: <xxxx>

12684  899244 [main] ls 10020 cyg_ldap::fetch_ad_account: No entry for (objectSid=0000) in xxxx DC=xxxx,DC=xxxx,DC=xxxx
Cygwin的“常见问题解答”中的 section处理启动时间较慢. Cygwin最近更改为使用Active Directory查找进行身份验证,而不是使用平面文件.更改/etc/nsswitch.conf中的默认值
passwd:   files db
group:    files db

passwd:   files
group:    files

跳过AD查找.我的Cygwin命令现在又快了.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读