Files
play-life/check-repo-fs.sh
2026-02-08 17:01:36 +03:00

76 lines
2.4 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# Скрипт для проверки файловой системы репозитория Gitea
# Выполните на сервере с административным доступом
REPO_PATH="/poignatov/play-life.git"
GITEA_USER="git" # или пользователь, под которым работает Gitea
echo "=== Проверка существования репозитория ==="
if [ -d "$REPO_PATH" ]; then
echo "✓ Репозиторий существует"
else
echo "✗ Репозиторий НЕ найден: $REPO_PATH"
exit 1
fi
echo ""
echo "=== Проверка прав доступа ==="
ls -ld "$REPO_PATH"
echo ""
echo "=== Проверка владельца ==="
OWNER=$(stat -c '%U:%G' "$REPO_PATH" 2>/dev/null || stat -f '%Su:%Sg' "$REPO_PATH" 2>/dev/null)
echo "Владелец: $OWNER"
echo ""
echo "=== Проверка размера репозитория ==="
du -sh "$REPO_PATH"
echo ""
echo "=== Проверка свободного места ==="
df -h "$REPO_PATH" | tail -1
echo ""
echo "=== Проверка ключевых файлов Git ==="
if [ -f "$REPO_PATH/config" ]; then
echo "✓ config существует"
else
echo "✗ config НЕ найден"
fi
if [ -d "$REPO_PATH/objects" ]; then
echo "✓ objects/ существует"
echo " Количество объектов: $(find "$REPO_PATH/objects" -type f | wc -l)"
else
echo "✗ objects/ НЕ найден"
fi
if [ -f "$REPO_PATH/HEAD" ]; then
echo "✓ HEAD существует"
echo " Текущая ветка: $(cat "$REPO_PATH/HEAD")"
else
echo "✗ HEAD НЕ найден"
fi
if [ -f "$REPO_PATH/refs/heads/main" ]; then
echo "✓ refs/heads/main существует"
echo " Последний коммит: $(cat "$REPO_PATH/refs/heads/main")"
else
echo "✗ refs/heads/main НЕ найден"
fi
echo ""
echo "=== Проверка целостности репозитория ==="
cd "$REPO_PATH"
if git fsck --no-progress 2>&1 | head -20; then
echo "✓ Репозиторий цел"
else
echo "✗ Обнаружены проблемы с целостностью"
fi
echo ""
echo "=== Проверка логов Gitea ==="
echo "Проверьте логи Gitea на наличие ошибок:"
echo " - /var/log/gitea/gitea.log"
echo " - или в директории, указанной в конфиге Gitea"