问题描述

Win10 64位专业版安装git 2.x之后出现 Git闪退,安装1.x出现bash: /dev/null: No such device or address fatal: open /dev/null or dup failed: No such file or directory 错误。

背景描述

由于换了新系统(OS是Win10 64专业版),需要重新安装Git,于是去官网下了Git的最新版本,安装完之后,发现不能用,一点开Git bash 就退出了,不知道怎么回事。我以前win10 家庭版也是官网下的最新版本,可以正常使用。于是,我初步断定是操作系统的原因,问了身边的同事,他们也都是win10,但是安装Git的时候没有出现类似的问题,很顺利的安装成功,但他们貌似都不是Win10专业版,都是什么家庭版,旗舰版。于是我去网上寻找答案,大家都知道网上的答案五花八门,很多是针对win7的,针对win10 的很少,且有的答案按照其说的做了仍然不能解决问题,下面我将分享我解决问题的 过程。

问题解决过程描述

  1. 网上有答案说是C:/Window/System32/drivers/null.sysnull.sys 这个系统文件损坏,于是我从同事那里拷贝一个过来,覆盖之,重启。没有解决问题
  2. 以管理员身份运行CMD,在CMD下输入 sfc /scannow 进行系统扫描修复。我的安装100%重启后问题依旧, 如果此过程中扫中途时候出现了如下的错误 
  3. 解决步骤二中的错误 
    第一步:在联网情况下,按按(Windows+X)+A,也就是在powershell命令提示符中输入
    DISM.exe /Online /Cleanup-image /Scanhealth 按回车键,
    DISM.exe /Online /Cleanup-image /Restorehealth 按回车键。

完成后请重启电脑。

上面的貌似也没解决我的问题。在此分享下终极解决办法,继续查找原因:

Windows 上也有 /dev/null????Google 一圈后发现确实有,是用一个系统服务模拟的:

在 windows/system32/cmd.exe 右键管理员方式运行:

C:\Users\Administrator>sc query null

手动启动该服务报错:

C:\Users\Administrator>sc start null

[SC] StartService 失败 577:

Windows 无法验证此文件的数字签名。某软件或硬件最近有所更改,可能安装了签名错误或损毁的文件,或者安装的文件可能是来路不明的恶意软件。

C:\Windows\System32\drivers\null.sys 从其他系统上拷贝一个过来覆盖,再启动 null 服务就正常了:

如何确定null.sys是否正常,很简单。实行如下命令:

C:\Users\Administrator>sc start null

SERVICE_NAME: null
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 0
FLAGS :

如果你一下子找不到可用的 null.sys,可以试试我这个(for Windows10 64位)。

如果sc start null 启动成功。OK,问题解决。

再次右键git bash here ,没有闪退了。皆大欢喜。这就是用盗版系统的悲剧。自己给自己挖的坑。

最后附上我的null的地址

链接:https://pan.baidu.com/s/1UtcZizm-iFcVk4OKrnFJVg 密码:1q4d

win10 专业版 git bash 闪退问题终极解决方案的更多相关文章

  1. 解决git bash闪退问题 报openssl错误

    问题描述:今天安装git之后发现Git Bash工具闪退. 于是试了各种办法之后,最后终于解决. 背景描述:git 下载地址:https://git-scm.com/download/win 下载成功 ...

  2. win10 git bash 闪退

    使用ghost重装了win10 专业版后.安装git,尝试重装了n个版本的git,右键git bash here 直接闪退,直接进入安装目录打开git-bash.exe依旧闪退, git右键点击Git ...

  3. Windows10中打开git bash闪退解决方案

    重装系统后打开gitbash莫名其妙闪退... 究其原因,好像是盗版系统的null.sys文件损坏 那就在这里附上null.sys文件的下载链接: https://pan.baidu.com/s/1V ...

  4. 双击startup.bat启动tomcat时闪退原因及解决方案

    在启动免安装tomcat时,很容易遇到双击startup.bat,启动窗口闪退而tomcat服务未启动的状况. 具体原因:tomcat在启动时,需要读取环境变量和配置信息,如果缺少Java环境,即缺少 ...

  5. iReport 5.6.0 启动闪退的问题 解决方案

    问题描述 本人使用的Windows版本的 iReport 5.6.0,安装成功后,双击桌面上的iReport-5.6.0图标,出现了闪退,无法正常启动的现象.现象如下: 问题原因 iReport 5. ...

  6. Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败解决方案

    即上篇通过将web项目打成war包部署到Tomcat服务器,解决mysql问题后,又出现了新问题,真是一波三折,所以将解决过程分享给大家,希望能帮助到小伙伴们~ 将打好的war包拷贝到Tomcat的w ...

  7. win10下运行cmd闪退时检查方法

    在cmd下运行 exe加空格加斜杠加问号

  8. 【已解决】极速迅雷win10闪退解决方案

    [已解决]极速迅雷win10闪退解决方案 本文作者:天析 作者邮箱:2200475850@qq.com 发布时间: Wed, 17 Jul 2019 18:01:00 +0800 在吾爱下载了个极速迅 ...

  9. 分割视图控制器(UISplitViewController) 改_masterColumnWidth 导致在 IOS 10中出现闪退

    默认UISplitViewController的Master和Detail的宽度是固定的,可以通过下面的方式来改变 [splitViewController setValue:[NSNumber nu ...

随机推荐

  1. ionic1页面间传递参数的问题

    1.  $scope.routeinfo是我要传递的参数--到scheddulcontent这个页面去: $state.go( "scheddulcontent" , { 'rou ...

  2. 浮动IP(FLOAT IP)

    主要谈一谈关于浮动IP的东西,介绍下浮动IP是什么 1.为什么要有浮动IP这个东西       现在有一个场景,在一台Linux上部署一个web应用,应用跑在tomcat里面,linux网卡上的ip是 ...

  3. nginx实现集群高可用

    大家知道NGINX作为反向代理服务器可以实现负载均衡,同时也可以作为静态文件服务器,它的特点就是并发支持大,单机可同时支持3万并发,现在很多网站都把NGINX作为网关入口来统一调度分配后端资源.但是如 ...

  4. gorm-Duplicate-entry

    gorm  insert  data to mysql tips: (Error 1062: Duplicate entry '267857' for key 'PRIMARY') reason: u ...

  5. 文件I/0缓冲

    设置stdio流缓冲模式 #include<stdio.h> int setvbuf(FILE *stream,char *buf,int mode,size_t size) int se ...

  6. Commons工具包的使用

    使用步骤: 1.Java  Project下新建Folder文件夹,命名lib 2.lib文件夹下把Commons-io-2.4jar包复制进去 3.右键Commons-io-2.4jar包,点击Bu ...

  7. 硬件访问服务学习笔记_WDS

    1.Android驱动框架App1 App2 App3 App4-------------------硬件访问服务-------------------JNI-------------------C库 ...

  8. HBase Filter

    Filter CompareFilter 是高层的抽象类,下面我们将看到他的实现类和实现类代表的各种过滤条件 RowFilter,FamliyFilter,QualifierFilter,ValueF ...

  9. Hiveserver2 OOM问题解法

    数据平台做一些计算需要通过hive jdbc方式连到hiveserver2执行job,但是hiveserver 正常运行一段时间后,总是会报如下OOM:   1 2 3 4 5 6 7 8 9 10 ...

  10. JavaScript Closures 闭包

    在一些编程语言中, 当我们执行完成function中的局部代码仅在函数执行期间可运行. 但是JS 事不一样的 闭包总结来说, 就是innerFunction 总是有使用outer function 的 ...