Akhirnya saya berhasil membuatnya bekerja. Dan ini benar-benar menjengkelkan.
macOS 26.4 diam-diam merusak Time Machine lewat SMB — dan semua solusi online hanya membahas SETENGAH bugs-nya
TL;DR: Ada dua bug. Setiap thread online hanya membahas bug pertama. Itulah sebabnya tidak ada yang berhasil.
Gejala
- Backup gagal seketika dengan
BACKUP_FAILED_AUTHENTICATION_ERROR (29)/ error 80 - Anda bisa memasang share yang sama persis lewat Finder dengan kredensial yang sama, tanpa masalah
smbutil view //USER@nas.localberjalan normal- Destinasi Synology/NAS lama yang ditambahkan sebelum Tahoe tetap berfungsi. Hanya destinasi yang baru ditambahkan setelahnya yang gagal.
Kedua bug tersebut
Bug A — “isKnownServer 0”: Tahoe membatasi kredensial SMB yang tersimpan melalui whitelist di plist. Semua solusi online membahas ini:
sudo /usr/libexec/PlistBuddy -c 'Add :nas.local bool true' \
'/private/var/root/Library/Group Containers/group.com.apple.NetworkAuthorization.ServerMarkers/serverMarkers.plist'
Tambahkan semua bentuk hostname yang muncul di URL TM Anda, termasuk FQDN Bonjour mentah dengan tanda titik di akhir seperti NAS(TimeMachine)._smb._tcp.local..
Bug B — regresi ACL keychain (yang tidak pernah dibahas):
NetAuthSysAgentdi 26.4 berjalan sebagai uid user Anda (501), bukan root.- Jadi ACL per-item di
/Library/Keychains/System.keychainmenjadi penting. - GUI TM-Settings yang baru menulis item dengan entri ACL
partition_id=apple:yang tidak bisa dilewati olehNetAuthSysAgent→Unable to find matching items -25300→OpenSession failed 80. - Naluri intuitif gagal:
security add-internet-password -A(mengizinkan aplikasi apa pun) menulisapplications: <null>yang dibaca oleh agen sebagai “tidak ada aplikasi yang diizinkan”, bukan “semua aplikasi diizinkan”. Tetap tidak bekerja.
Solusi lengkap
Log signature yang menandakan Anda terkena Bug B:
isKnownServer 1
Unable to find matching items -25300 (x8-10)
OpenSession failed 80
Buat ulang entri keychain dengan grant -T eksplisit, BUKAN -A:
read -r -s "TMPW?SMB password: " && echo
for S in 'NAS(TimeMachine)._smb._tcp.local.' 'nas.local'; do
sudo security delete-internet-password -a USER -s "$S" /Library/Keychains/System.keychain 2>/dev/null
sudo security add-internet-password \
-a USER -s "$S" -p /YourShare -r 'smb ' \
-D 'Time Machine Network Password' \
-T /System/Library/CoreServices/NetAuthAgent.app \
-T /System/Library/CoreServices/NetAuthAgent.app/Contents/MacOS/NetAuthSysAgent \
-T /System/Library/PrivateFrameworks/SystemAdministration.framework/XPCServices/writeconfig.xpc \
-T /System/Library/CoreServices/TimeMachine/backupd \
-T /System/Library/CoreServices/TimeMachine/backupd-helper \
-w "$TMPW" \
/Library/Keychains/System.keychain
done
unset TMPW
Ganti USER, hostname, /YourShare (awali dengan slash, JANGAN URL-encoded).
Verifikasi
sudo security dump-keychain -a /Library/Keychains/System.keychain | less
Cari entri Anda. ACL yang berfungsi punya 3 entri, dekripsi menampilkan Apple helpers, TANPA partition_id. Jika Anda menemukan 4 entri dengan partition_id → apple:, atau 3 entri dengan applications: <null> saat dekripsi — Anda perlu menjalankan perintah di atas.
Hal penting
- Jangan pernah pakai
-A. Gunakan-T. - Selalu tambahkan
-w "$PASSWORD". Jika Anda melewatkan-w,securitydiam-diam membaca stdin; di skrip/non-TTY itu kosong → exit 0 → Anda malah membuat item tanpa password. - Nilai share
-padalah path literal (/Time Machine - Server), BUKAN URL-encoded. - Protokol
-r 'smb 'harus ada spasi di belakang (4-karakter OSType). - Perilaku uid-501 milik
NetAuthSysAgentadalah alasan utama DiskStation (yang ditambahkan sebelum Tahoe dengan bentuk ACL berbeda) tetap bekerja sementara destinasi baru Anda tidak. - Solusi populer Reddit
/etc/nsmb.conf signing_required=yeshanya memecahkan masalah SMB berbeda. Tidak terkait dengan Bug B.
Backup langsung berjalan di percobaan pertama setelah ini. Semoga tips ini menghemat hari Anda dari pengejaran log yang bikin puyeng.