【问题标题】:Change admin password in Gitea在 Gitea 中更改管理员密码
【发布时间】:2018-08-09 23:39:14
【问题描述】:

我使用包含特殊字符的密码创建了一个管理员用户。 Gitea 安装成功,但我无法登录。我无法获得新密码,因为它说:

抱歉,注册邮件确认已被禁用。

我尝试了命令gitea admin change-password,但命令无法识别。

【问题讨论】:

  • 例如,您能否尝试运行gitea admin change-password --username myusername --password asecurenewpassword,将myusername 替换为您的user name 值。
  • 我收到错误:gitea admin change-password
  • 你是从终端运行的吗?您能指定您使用的是哪个操作系统吗?
  • 是的,我从终端发出命令。我使用Ubuntu 17.10 x64
  • 如果这是您遇到的全部错误,那么您的安装已损坏...我强烈建议您清除当前安装并进行干净的安装。

标签: git gitea


【解决方案1】:

your issue 开始,任何 gitea 命令(如gitea admin change-password --username myusername --password asecurenewpassword)都会以:

gitea: command not found

如果你installed from binary,你会注意到 $PATH 没有被修改,gitea 是直接从它的安装文件夹中调用的。

./gitea web

所以你可以做同样的事情来更改密码:

cd /path/to/gitea
./gitea admin change-password --username myusername --password asecurenewpassword

请注意 Robert Ranjan 在 cmets 中添加:

/path/to/gitea 是 gitea 的主路径,您可以在其中找到文件夹 custom
就我而言,gitea 的家是/var/lib/gitea。在此路径中,您应该会看到文件:custom/conf/app.ini,这是默认情况下预期的。

【讨论】:

  • cd /path/to/gitea 是 gitea 的主路径,您可以在其中找到文件夹 custom。就我而言,gitea 的家是/var/lib/gitea。在此路径中,您应该会看到文件:custom/conf/app.ini,这是默认情况下预期的。
  • @RobertRanjan 好的,我已将您的评论包含在答案中以提高知名度。
  • @VonC:我收到错误消息:models.SetEngine: Failed to connect to database: Unknown database type: 2019/07/17 10:57:10 [I] XORM Log Mode: Console(Info)
  • @plaidshirt 也许 Rendy 下面的回答可以提供帮助?如果没有,最好打开一个新问题。
  • @VonC :我打开了新的,因为它仍然存在。
【解决方案2】:

对于当前的 GITEA 有时它不起作用

cd /path/to/gitea
./gitea admin change-password --username myusername --password asecurenewpassword

您还需要指定配置,例如:

cd /path/to/gitea
./gitea admin change-password --username myusername --password asecurenewpassword -c "/etc/gitea/app.ini"

【讨论】:

    【解决方案3】:

    现在是未来,其他答案将不再有效。我找到了这个答案,因为我遇到了同样的问题。我知道我会再次搞砸,因为这已经是我第二次了,所以你好未来的我!

    非码头工人回答:

    gitea admin user change-password -u <username> -p <password>
    

    Docker 答案:

    docker exec -it <container ID> su git bash -c "gitea admin user change-password -u <username> -p <password>"
    

    &lt;container ID&gt;&lt;username&gt;&lt;password&gt; 替换为适当的值。

    Relevant Gitea Documentation

    【讨论】:

    • 很好地了解当前的执行方式。赞成。
    • @Magnetron 不,这是不正确的。这是来自Gitea Docs 的示例:gitea admin user change-password --username myname --password asecurepassword
    • @TrevorVance 对不起,你是对的,我使用的是旧版本
    【解决方案4】:

    使用 dockerized gitea 服务时,您必须以git 用户而不是root 用户身份在容器内执行gitea admin ... 命令:

    docker exec -it <container ID> su git bash -c "gitea admin change-password --username <username> --password <password>"
    

    &lt;container ID&gt;&lt;username&gt;&lt;password&gt; 替换为适当的值。

    【讨论】:

      【解决方案5】:

      (码头工人群)

      • docker exec ( 或者 ssh 或者你可以进入 shell
      • 内部命令复位gitea -c /etc/gitea/app.ini admin admin change-password --username &lt;username&gt; --password &lt;password&gt;
      • 列表gitea -c /etc/gitea/app.ini admin user list的内部命令

      【讨论】:

        【解决方案6】:

        对于 NixOS 用户来说,这有点复杂:

        su
        su gitea
        nix-shell -p gitea
        gitea admin user change-password -c /var/lib/gitea/custom/conf/app.ini -u user-name -p new-pwd
        

        (在 Gitea 版本 1.15.6 上测试)

        【讨论】: