AWS-Ubuntu-Git 设置错误致命:未设置 $HOME

use*_*107 10 git ubuntu amazon-ec2 amazon-web-services cloud-init

当我的AWS EC2 Ubuntu实例启动时,我有一些cloudinit脚本要执行。

我想使用下面的代码设置GIT配置变量。

#cloud-config
runcmd:
- [ sh, -c, "git config --global user.name 'myname'"]
Run Code Online (Sandbox Code Playgroud)

登录终端时。我可以毫无问题地执行git config --global user.name 'myname'

但是,当我尝试使用cloudinit代码启动我的实例时。我收到一条错误消息

致命:$HOME 未设置

我的理解是,这是因为实例启动时未设置HOME

寻找解决方案,以在启动时设置 git 变量或替代解决方案。

moh*_*eur 12

我遇到了同样的问题...

git config --system http.sslVerify false
git config --system user.email "email@email.com"
Run Code Online (Sandbox Code Playgroud)

这解决了错误消息。在阅读CodeCommit with EC2 Role Credentials后,我得到了这个解决方案。原因在博客中说明......“但是当我以 root 身份运行它时,我遇到了致命错误:$HOME not set,因为 git config --global 正在尝试读取/写入当前用户的 $HOME/。 gitconfig 文件,在这种情况下,root 似乎没有 $HOME。

在彻底学习 git 设置管理之后,我可以告诉你还有另一种选择——使用 git config --system 设置系统范围的 git 首选项,这会导致对 /etc/gitconfig 的修改,没有错误。”

PS 我意识到我在将近 3 年后才回答这个问题,但我希望这可以帮助面临同样问题的其他人。

  • 已确认,在我的用户数据脚本中将“git config --global ____”更改为“git config --system ____”解决了我的问题 (2认同)