GITEA创建真正属于自己的代码仓库_编程_山海自留地

山海自留地

GITEA创建真正属于自己的代码仓库

编程
2025-11-08 15:59:17

sudo umount /mnt/homesmb

sudo mount -t cifs //服务器IP/共享名 /mnt/homesmb -o guest,uid=1000,gid=1000,noperm


自动安装脚本:

#!/bin/bash

echo "=== 修复 ARM64 (aarch64) 架构 Gitea 启动问题 ==="

# 停止服务
echo "停止 Gitea 服务..."
sudo systemctl stop gitea

# 删除错误的二进制文件
echo "删除错误的二进制文件..."
sudo rm -f /usr/local/bin/gitea

# 下载 ARM64 版本
echo "下载 ARM64 版本的 Gitea..."
sudo wget -O /usr/local/bin/gitea https://dl.gitea.io/gitea/1.21.0/gitea-1.21.0-linux-arm64

# 设置权限
echo "设置权限..."
sudo chmod +x /usr/local/bin/gitea
sudo chown git:git /usr/local/bin/gitea

# 验证文件
echo "验证文件类型:"
file /usr/local/bin/gitea

# 测试运行
echo "测试运行 Gitea:"
sudo -u git /usr/local/bin/gitea --version

# 修复目录权限
echo "修复目录权限..."
sudo chown -R git:git /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea

# 重新启动服务
echo "启动 Gitea 服务..."
sudo systemctl daemon-reload
sudo systemctl start gitea

# 检查状态
echo "Gitea 服务状态:"
sudo systemctl status gitea --no-pager -l

# 检查是否监听端口
echo "检查端口监听:"
sudo netstat -tlnp | grep :3000 || echo "端口 3000 未监听"

# 测试 HTTP 访问
echo "测试 HTTP 访问:"
curl -s -o /dev/null -w "HTTP 状态码: %{http_code}\n" http://localhost:3000


注意:其中的 域名  、数据库、 等 需要改成你自己的。


1. 测试直接运行

# 测试 Gitea 是否能正常运行并显示版本

sudo -u git /usr/local/bin/gitea --version


2. 检查目录权限

# 确保所有相关目录权限正确

sudo chown -R git:git /var/lib/gitea/

sudo chmod -R 750 /var/lib/gitea/

sudo chown root:git /etc/gitea

sudo chmod 770 /etc/gitea


# 检查目录结构

sudo ls -la /var/lib/gitea/

sudo ls -la /etc/gitea/


3. 检查并修复可能的配置问题

# 如果配置文件存在但有问题,先备份

sudo mv /etc/gitea/app.ini /etc/gitea/app.ini.bak 2>/dev/null || true


# 创建一个最小配置测试

sudo tee /etc/gitea/app.ini > /dev/null << EOF

APP_NAME = Gitea

RUN_USER = git

RUN_MODE = prod


[database]

DB_TYPE  = sqlite3

PATH     = /var/lib/gitea/data/gitea.db


[repository]

ROOT = /var/lib/gitea/data/gitea-repositories


[server]

DOMAIN           = localhost

HTTP_PORT        = 3000

ROOT_URL         = http://localhost:3000/

DISABLE_SSH      = false

SSH_PORT         = 22

START_SSH_SERVER = false


[log]

MODE      = file

LEVEL     = Info

ROOT_PATH = /var/lib/gitea/log


[security]

INSTALL_LOCK = false

EOF

sudo chown root:git /etc/gitea/app.ini

sudo chmod 660 /etc/gitea/app.ini


4. 手动测试运行

# 切换到 git 用户手动启动测试

sudo -u git -s

cd /var/lib/gitea

/usr/local/bin/gitea web --config /etc/gitea/app.ini


5. 重新启动服务

# 退出 git 用户(如果在上一步进入了)

exit

# 重新加载 systemd 并启动服务

sudo systemctl daemon-reload

sudo systemctl start gitea

sudo systemctl status gitea


6. 检查服务状态和日志

# 查看详细的服务状态

sudo systemctl status gitea -l


# 查看最近的日志

sudo journalctl -u gitea --since "1 minute ago"


# 或者查看 Gitea 的日志文件

sudo tail -f /var/lib/gitea/log/gitea.log



8.修改配置信息一般都在 

sudo vim /etc/gitea/app.ini