azaza
pizda hohlam
Дополнительная проверка — LFS
bash
# в контейнере
ls -la /mnt/git-storage/data/lfs/
# на 10.200.200.2
ls -la /sas/git/data/lfs/
Если при пуше использовался LFS — файлы появятся в обоих местах.

Проверка inode (железная)
bash
# в контейнере
touch /mnt/git-storage/_probe
ls -i /mnt/git-storage/_probe

# на 10.200.200.2
ls -i /sas/git/_probe
rm /sas/git/_probe
Inode должны совпасть — это гарантия, что вы смотрите на один и тот же ZFS-датасет, а не на локальную копию.

Что сделать сейчас
bash
# 1. Сменить пароль admin в UI Gitea
# 2. Ограничить доступ к конфигу
chmod 640 /etc/gitea/app.ini
chown root:gitea /etc/gitea/app.ini

# 3. Проверить целостность SQLite (она локальная, но всё же)
sqlite3 /var/lib/gitea/data/gitea.db 'PRAGMA integrity_check;'
# → ok

# 4. Проверить /etc/fstab на _netdev
grep git-storage /etc/fstab
# должно быть: 10.200.200.2:/sas/git /mnt/git-storage nfs _netdev,... 0 0

# 5. Проверить, что drop-in подхватился
systemctl show gitea | grep -E 'RequiresMountsFor|After='
Напоминание про scrub для tank
Судя по самари, для пула tank cron не добавлен. Добавьте на 10.200.200.2:

bash
crontab -e
# добавить:
0 4 1 * * /sbin/zpool scrub tank
(для sas уже есть 0 3 1 * *)

Итог
Компонент	Куда пишет	Статус
Репозитории (ROOT)	/mnt/git-storage/repositories → ZFS sas/git	✅ настроено, ждём подтверждения пушем
LFS	/mnt/git-storage/data/lfs → ZFS sas/git	✅ подтверждено логом
SQLite БД	/var/lib/gitea/data/gitea.db	✅ локально (правильно)
Аватарки/индексы/сессии	/var/lib/gitea/data/*	✅ локально (правильно)
После того как создадите репозиторий и сделаете пуш, пришлите с 10.200.200.2:

bash
zfs get used sas/git
ls -la /sas/git/repositories/
Если там появятся данные — задача закрыта полностью: Gitea работает с ZFS-пулом sas через NFS, а не с локальным диском контейнера.