8.0 KiB
Time Machine Backup — Kraken (RPi5)
Топология
Бэкап идёт по SMB на Кракен (RPi5). Samba управляется OMV (не Docker-контейнер).
Destination: smb://timemachine@kraken/TimeMachine
Бандл: mbp-black.sparsebundle
Пользователь: timemachine (uid=1001), создан через omv-rpc
Пароль: smbpasswd -a timemachine
passdb.tdb персистентен на хосте — пароль не слетает при рестарте
Бандл лежит на локальном HDD Кракена: /srv/dev-disk-by-uuid-49e8f586-3839-4c5d-a1e1-58bfc3579ade/timemachine/
Конфигурация OMV Samba
Шара добавлена через extraoptions в conf.service.smb:
[TimeMachine]
path = /srv/dev-disk-by-uuid-49e8f586-3839-4c5d-a1e1-58bfc3579ade/timemachine
browseable = yes
read only = no
valid users = timemachine
vfs objects = fruit streams_xattr
fruit:time machine = yes
fruit:time machine max size = 3000000000000
Применить конфиг:
omv-salt deploy run samba
Проверка доступа
mkdir -p /tmp/tm-test
mount_smbfs //timemachine:'timemachine'@kraken/TimeMachine /tmp/tm-test
ls /tmp/tm-test # должен показать mbp-black.sparsebundle
umount /tmp/tm-test
Диагностика: почему бэкап не завершается
Просмотр логов backupd
backupd пишет логи в subsystem com.apple.TimeMachine. Ключевые команды:
# Все ошибки за последние N часов
log show --predicate 'subsystem == "com.apple.TimeMachine"' --info --last 24h | grep -iE '(error|fail|cannot|could not|timeout|disconnect|BACKUP|thinning)'
# Прогресс копирования
log show --predicate 'subsystem == "com.apple.TimeMachine"' --info --last 24h | grep "CopyProgress"
# Когда бэкап завершился/упал
log show --predicate 'subsystem == "com.apple.TimeMachine"' --info --last 24h | grep -E "backup completed|backup failed|BACKUP_FAILED|BackupFinishing|Finished backup|BackupCancelled"
Текущий статус
tmutil status
# BackupPhase может быть:
# - MountingDiskImage — монтирует sparsebundle (может висеть, если бандл повреждён)
# - PreparingSourceVolumes — собирает список изменений (файлы eventDB)
# - Copying — копирует файлы
# - ThinningPostCopy — удаляет старые бэкапы
Известные причины сбоев
-
BACKUP_FAILED_DISCONNECTED_NETWORK (26) / BACKUP_FAILED_DISCONNECTED_DISK_IMAGE (70)
- SMB-шара отвалилась во время бэкапа. Причины: WG туннель перезагрузился, таймаут на SMB, проблемы с сетью.
- Симптом:
Failed to set checkpoint marker — No such file or directory, потом ошибка DISCONNECTED - Косвенно: внутри sparsebundle остаются
.interruptedпапки. На 2026-07-01 их было 43 штуки.
-
BACKUP_FAILED_NO_SPACE_FOR_LOCAL_SNAPSHOT (50)
- Не хватает места на локальном диске Mac (
/System/Volumes/Data) для локального снапшота. - Лечится: освободить место на локальном SSD, или удалить старые локальные снапшоты:
tmutil deletelocalsnapshots /
- Не хватает места на локальном диске Mac (
-
macOS Tahoe 26 (26.5.1) — SMB signing/encryption
- Начиная с macOS 26 (Tahoe), Apple ужесточила требования к SMB signing.
- OMV Samba может не справляться, особенно через WireGuard.
- Если бэкап постоянно срывается с DISCONNECTED, попробовать:
sudo tee /etc/nsmb.conf << 'EOF' [default] signing_required=yes streams=yes soft=yes dir_cache_max_cnt=0 protocol_vers_map=6 mc_prefer_wired=yes EOF - Источник: GitHub Gist — macOS Tahoe SMB Backup Fix
~43 .interrupted папок — не причина, а следствие*
backupd выводит Expected SnapshotInProgressContainer metadata type but found APFSBackup для каждой прерванной сессии. Это не ошибка — он корректно обрабатывает interrupted-папки и пытается их "апгрейднуть". Проблема не в них, а в том что бэкап постоянно прерывается по DISCONNECTED.
Перевыбрать destination на Mac
sudo tmutil setdestination -p smb://timemachine@kraken/TimeMachine
Связанные заметки
- family/how-to/wireguard-vpn — туннель для бэкапа вне дома
- family/how-to/kraken-network — ssh, сетевые адреса
Важно: связка WireGuard + SMB
Когда mbp-black не дома (IP не 192.168.1.x), kraken резолвится через VPS dnsmasq
в 10.99.1.2 (WG адрес). SMB работает через туннель, но может быть медленнее.
Проверка доступа через WG с mbp-black:
smbutil view //timemachine@kraken
Если дома — лучше через LAN (smb://192.168.1.15/TimeMachine), быстрее.
History
- До 2026-06-02: использовался Docker-контейнер
mbentley/timemachine:smb. Контейнер снесён, Samba перенесена на хост OMV из-за проблем с persisting паролей (tdbsam не сохранялся,ntlm auth = noломал backupd при reconnect). - 2026-07-01: диагностика причин срыва бэкапов на mbp-black (26.5.1, WG туннель).
- backupd не виснет — реально копирует, но медленно через WG.
- Найдены ошибки в логах:
BACKUP_FAILED_DISCONNECTED_NETWORK (26)в 15:21 — SMB отвалился. Симптом:Failed to set checkpoint marker — No such file or directory.- После перезапуска:
BACKUP_FAILED_NO_SPACE_FOR_LOCAL_SNAPSHOT (50)— не хватило места для локального снапшота.
- Внутри бандла ~43
.interruptedпапок — следствие прерванных сессий, не причина. - Добавлен раздел "Диагностика: почему бэкап не завершается" с командами просмотра логов и известными причинами сбоев.
- Добавлен референс на GitHub Gist по macOS Tahoe SMB signing fix.
- Проблема: пароль
timemachineне проходит при подключении через WireGuard (mbp-black вне дома, IP10.120.1.143, Kraken резолвится в WG10.99.1.2).mount_smbfsиsmbutilвыдаютAuthentication error. - Проверено на Kraken: smbd слушает на
0.0.0.0:445, TCP/445 через WG открыт,smbstatusпоказывает активных сессий 0. Samba конфигурация:disable netbios = yes,log level = 0(логи в /var/log/samba/log.smbd пустые — запросы аутентификации даже не доходят до smbd, значит проблема на клиентской стороне). - Диагностика не завершена — причина Authentication error не выяснена.
- Доки обновлены: убрано упоминание TrueNAS, прописан прямой пароль
timemachineв credentials в обоих документах (time-machine.mdиopenmediavault-rpi5.md).