252 lines
9.6 KiB
Markdown
252 lines
9.6 KiB
Markdown
# Рекомендации по очистке дискового пространства на сервере
|
||
|
||
**Дата анализа:** $(date)
|
||
**Текущее использование диска:** 36GB из 40GB (90%)
|
||
**Доступно:** 4.2GB
|
||
|
||
## Критичные находки (можно освободить ~18-20GB)
|
||
|
||
### 1. Docker неиспользуемые ресурсы ⚠️ **~12.2GB**
|
||
|
||
**Неиспользуемые Docker образы:** 6.24GB (81% от всех образов)
|
||
- `code.mnemo-cards.online/cinnabarflower/cards/agent:latest` - 4.29GB (не используется)
|
||
- `moby/buildkit:buildx-stable-1` - 227MB (не используется)
|
||
- `dart:stable` - 787MB (не используется)
|
||
- `ghcr.io/cirruslabs/flutter:3.35.5` - 3.56GB (используется как базовый, но можно очистить старые версии)
|
||
- `node:16-bullseye` - 940MB (не используется)
|
||
|
||
**Неиспользуемые Docker volumes:** 5.948GB (91% от всех volumes)
|
||
- `GITEA-ACTIONS-TASK-278_WORKFLOW-Build-Agent-Image_JOB-build-and-push` - 1.103GB (старые CI/CD задачи)
|
||
- `GITEA-ACTIONS-TASK-278_WORKFLOW-Build-Agent-Image_JOB-build-and-push-env` - 15.88MB
|
||
- `GITEA-ACTIONS-TASK-284_WORKFLOW-Build-Agent-Image_JOB-build-and-push` - 1.103GB (старые CI/CD задачи)
|
||
- `GITEA-ACTIONS-TASK-284_WORKFLOW-Build-Agent-Image_JOB-build-and-push-env` - 16.92MB
|
||
- `act-toolcache` - 3.708GB (кэш инструментов для act)
|
||
|
||
**Команды для очистки:**
|
||
```bash
|
||
# Просмотр неиспользуемых ресурсов
|
||
docker system df
|
||
|
||
# Удаление неиспользуемых образов, контейнеров, сетей и volumes
|
||
docker system prune -a --volumes
|
||
|
||
# Или более безопасно - только неиспользуемые volumes
|
||
docker volume prune
|
||
|
||
# Удаление только неиспользуемых образов
|
||
docker image prune -a
|
||
```
|
||
|
||
**⚠️ Внимание:** Команда `docker system prune -a --volumes` удалит ВСЕ неиспользуемые ресурсы. Убедитесь, что не нужны старые образы для rollback.
|
||
|
||
---
|
||
|
||
### 2. Telegram Bot Backups ⚠️ **5.2GB**
|
||
|
||
**Расположение:** `/root/mnemo_cards_telegram_bot/backups`
|
||
|
||
**Рекомендация:** Проверить содержимое и удалить старые backups, оставив только последние несколько.
|
||
|
||
**Команда для проверки:**
|
||
```bash
|
||
ls -lh /root/mnemo_cards_telegram_bot/backups
|
||
du -h /root/mnemo_cards_telegram_bot/backups/* | sort -hr
|
||
```
|
||
|
||
**Команда для удаления (после проверки):**
|
||
```bash
|
||
# Удалить backups старше 30 дней (пример)
|
||
find /root/mnemo_cards_telegram_bot/backups -type f -mtime +30 -delete
|
||
```
|
||
|
||
---
|
||
|
||
### 3. Docker Overlay2 ⚠️ **9.1GB**
|
||
|
||
**Расположение:** `/var/lib/docker/overlay2`
|
||
|
||
Это хранилище Docker для слоев образов. После очистки неиспользуемых образов (пункт 1) размер должен уменьшиться.
|
||
|
||
**Команда для очистки:**
|
||
```bash
|
||
# Очистка произойдет автоматически после docker system prune
|
||
# Или вручную (осторожно!):
|
||
docker system prune -a --volumes
|
||
```
|
||
|
||
---
|
||
|
||
## Средние находки (можно освободить ~1-2GB)
|
||
|
||
### 4. Кэш директории **~1GB**
|
||
|
||
**Root cache:** `/root/.cache` - 751MB
|
||
- `act` - 635MB (кэш для GitHub Actions локального запуска)
|
||
- `code-server` - 117MB (кэш VSCode Server)
|
||
|
||
**Pub cache:** `/root/.pub-cache` - 663MB (кэш Dart пакетов)
|
||
|
||
**System cache:** `/var/cache` - 275MB
|
||
- `apt` - 257MB (кэш пакетов apt)
|
||
|
||
**Команды для очистки:**
|
||
```bash
|
||
# Очистка apt кэша
|
||
apt-get clean
|
||
apt-get autoclean
|
||
|
||
# Очистка pub cache (можно пересобрать при необходимости)
|
||
rm -rf ~/.pub-cache/hosted/*
|
||
|
||
# Очистка act cache (если не используется)
|
||
rm -rf ~/.cache/act
|
||
|
||
# Очистка code-server cache (можно пересобрать)
|
||
rm -rf ~/.cache/code-server
|
||
```
|
||
|
||
**⚠️ Внимание:** После очистки кэша, при следующем использовании пакеты/инструменты будут загружены заново.
|
||
|
||
---
|
||
|
||
### 5. Старые Backup директории **~248MB**
|
||
|
||
**Расположение:** `/var/www/mnemo_cards.backup.*`
|
||
|
||
**Найдено:** 8 backup директорий по ~31MB каждая (все от 25-26 октября 2025)
|
||
|
||
**Список:**
|
||
- `mnemo_cards.backup.20251025_141822` - 31MB
|
||
- `mnemo_cards.backup.20251025_141931` - 31MB
|
||
- `mnemo_cards.backup.20251025_154819` - 31MB
|
||
- `mnemo_cards.backup.20251025_211926` - 31MB
|
||
- `mnemo_cards.backup.20251025_234756` - 31MB
|
||
- `mnemo_cards.backup.20251026_000205` - 31MB
|
||
- `mnemo_cards.backup.20251026_003152` - 31MB
|
||
- `mnemo_cards.backup.20251026_014752` - 31MB
|
||
|
||
**Рекомендация:** Оставить только последний backup, остальные удалить.
|
||
|
||
**Команда для удаления:**
|
||
```bash
|
||
# Просмотр всех backups
|
||
ls -lh /var/www/mnemo_cards.backup.*
|
||
|
||
# Удалить все кроме последнего (самого нового)
|
||
cd /var/www
|
||
ls -t mnemo_cards.backup.* | tail -n +2 | xargs rm -rf
|
||
```
|
||
|
||
---
|
||
|
||
### 6. Логи **~760MB**
|
||
|
||
**Общий размер:** `/var/log` - 760MB
|
||
|
||
**Nginx логи:** 39MB
|
||
- `access.log.1` - 23MB
|
||
- `access.log` - 11MB (текущий)
|
||
- `error.log.1` - 2.3MB
|
||
- `error.log` - 2.0MB (текущий)
|
||
|
||
**Старые логи (30+ дней):** 34 файла
|
||
|
||
**Команды для очистки:**
|
||
```bash
|
||
# Ротация nginx логов (оставить только последние 7 дней)
|
||
find /var/log/nginx -type f -name "*.log.*" -mtime +7 -delete
|
||
|
||
# Очистка старых логов (30+ дней)
|
||
find /var/log -type f -mtime +30 -delete
|
||
|
||
# Очистка старых сжатых логов
|
||
find /var/log -type f -name "*.gz" -mtime +30 -delete
|
||
|
||
# Настройка logrotate для автоматической ротации
|
||
# (проверить /etc/logrotate.d/nginx)
|
||
```
|
||
|
||
---
|
||
|
||
## Малые находки (можно освободить ~50-100MB)
|
||
|
||
### 7. Старые системные логи
|
||
|
||
**Команда для просмотра:**
|
||
```bash
|
||
find /var/log -type f -mtime +30 -ls
|
||
```
|
||
|
||
**Команда для удаления:**
|
||
```bash
|
||
find /var/log -type f -mtime +30 -delete
|
||
```
|
||
|
||
---
|
||
|
||
## Итоговая таблица рекомендаций
|
||
|
||
| Категория | Размер | Приоритет | Безопасность | Команда |
|
||
|-----------|--------|-----------|--------------|---------|
|
||
| Docker неиспользуемые ресурсы | ~12.2GB | 🔴 Высокий | ✅ Безопасно | `docker system prune -a --volumes` |
|
||
| Telegram Bot Backups | 5.2GB | 🔴 Высокий | ⚠️ Проверить | `find /root/mnemo_cards_telegram_bot/backups -mtime +30 -delete` |
|
||
| Docker Overlay2 | 9.1GB | 🟡 Средний | ✅ После очистки Docker | Автоматически после prune |
|
||
| Кэш (pub, apt, act) | ~1GB | 🟡 Средний | ✅ Безопасно | `apt-get clean && rm -rf ~/.pub-cache/hosted/*` |
|
||
| Старые backups | ~248MB | 🟡 Средний | ✅ Безопасно | Удалить все кроме последнего |
|
||
| Логи | ~760MB | 🟢 Низкий | ✅ Безопасно | `find /var/log -mtime +30 -delete` |
|
||
|
||
## Общий потенциал освобождения: ~18-20GB
|
||
|
||
## Рекомендуемый порядок действий
|
||
|
||
1. **Сначала Docker** (самый большой эффект):
|
||
```bash
|
||
docker system df # Проверить
|
||
docker system prune -a --volumes # Очистить
|
||
```
|
||
|
||
2. **Проверить Telegram Bot backups**:
|
||
```bash
|
||
ls -lh /root/mnemo_cards_telegram_bot/backups
|
||
# Решить, какие удалить
|
||
```
|
||
|
||
3. **Очистить кэш**:
|
||
```bash
|
||
apt-get clean
|
||
apt-get autoclean
|
||
```
|
||
|
||
4. **Удалить старые backups веб-приложения**:
|
||
```bash
|
||
cd /var/www
|
||
ls -t mnemo_cards.backup.* | tail -n +2 | xargs rm -rf
|
||
```
|
||
|
||
5. **Очистить старые логи**:
|
||
```bash
|
||
find /var/log -type f -mtime +30 -delete
|
||
```
|
||
|
||
## ⚠️ ВАЖНЫЕ ПРЕДУПРЕЖДЕНИЯ
|
||
|
||
1. **НЕ удаляйте** директории проекта:
|
||
- `/root/mnemo_cards_backend` (464MB) - рабочий проект
|
||
- `/root/mnemo_cards_common` (672KB) - рабочий проект
|
||
- `/root/mnemo_cards_common_backend` (1.5MB) - рабочий проект
|
||
- `/var/www/mnemo_cards` - текущее веб-приложение
|
||
|
||
2. **НЕ удаляйте** данные проекта:
|
||
- `/root/mnemo_cards_backend/isar` (236MB) - база данных
|
||
- `/root/mnemo_cards_backend/data` (213MB) - данные приложения
|
||
|
||
3. **Перед удалением Docker ресурсов** убедитесь, что не нужны старые образы для rollback.
|
||
|
||
4. **Перед удалением backups** проверьте их содержимое и убедитесь, что текущая версия работает.
|
||
|
||
## После очистки
|
||
|
||
После выполнения рекомендаций ожидаемое использование диска: **~16-18GB из 40GB (40-45%)**
|
||
|
||
Это освободит **~18-20GB** дискового пространства.
|
||
|