首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法创建目录'/home/username/.ssh'

无法创建目录'/home/username/.ssh'
EN

Stack Overflow用户
提问于 2018-09-07 01:11:59
回答 2查看 0关注 0票数 0

Git突然停止为我工作。(我在Windows 7下使用Git Bash。我没有使用Cygwin。)|

每次我试图拉或推它说:

代码语言:javascript
复制
无法创建目录'/home/sigod/.ssh'

我的SSH密钥位于C:\Users\sigod\.sshHOME设置为/c/Users/sigod。哪个应该根据各种 SO 问题工作

如果我将SSH密钥放入,C:\Program Files\Git\home\sigod\.ssh那么Git将再次开始工作。但是,如何在没有肮脏解决方案的情

EN

回答 2

Stack Overflow用户

发布于 2018-09-07 09:12:28

GitBash类似于使用传统Linux权限的Cygwin。

我建议你确保你的ssh目录存在于正确的位置,并通过从git bash运行以下命令来拥有正确的权限:

代码语言:javascript
复制
mkdir ~/.ssh
chown $USER:$USER -R ~/.ssh

然后运行stat ~/.ssh以查看权限是否已正确更改

代码语言:javascript
复制
ls ~/.ssh

看到您的密钥已正确安装在正确的位置。

您可以通过运行echo ~或查看哪个目录实际注册为您的主目录echo $HOME

您可以通过修改~/.bashrc和添加行来更改您的Linux HOMEexport HOME=/some/directory

您可以通过键入命令来查看GitBash文件系统与Windows文件系统的对应关系 mount

代码语言:javascript
复制
MINGW64 /c $ mount
C:/Program Files/Git on / type ntfs (binary,noacl,auto)
C:/Program Files/Git/usr/bin on /bin type ntfs (binary,noacl,auto)
C:/Users/MyUser/AppData/Local/Temp on /tmp type ntfs (binary,noacl,posix=0,usertemp)
C: on /c type ntfs (binary,noacl,posix=0,user,noumount,auto)
D: on /d type ntfs (binary,noacl,posix=0,user,noumount,auto)

如果没有其他工作,您还可以尝试%HOME%在Windows中修改环境变量,以确保它指向正确的路径。但是任何windows env var都会被你添加到你的linux变量所覆盖~/.bashrc

票数 0
EN

Stack Overflow用户

发布于 2018-09-07 10:36:39

Git Bash是使用MSYS2构建的,它与CygWin非常接近。以下可能只适用于您的情况,请按照下列步骤操作:

  1. 以管理员身份打开cmd.exe,并将HOME环境变量设置为指向您的用户目录。 setx HOME ^%UserProfile^% 以上命令将为您的用户帐户设置HOME =%UserProfile%
  2. 打开git bash,确保/etc/nsswitch.conf文件包含未注释的db_home行条目。确保它符合以下配置之一: 选项a: db_home: env windows cygwin desc 选项b: db_home: windows
  3. 在第2步中尝试选项时完全关闭git-bash(为了确保没有后台进程保持git-bash存活,从Windows注销并重新登录)。

我基于上面的答案解释了相同问题CygWin版本

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档