Time Machine yedek sürücüsünü her yedeklemeden sonra otomatik olarak nasıl çıkarırım?


25

Time Machine'i harici Time Machine yedek sürücümü her yedeklemeden sonra otomatik olarak çıkarması için nasıl ayarlarım?


4
İlginç bir gözlem: Bir ağ sürücüsüne bir TimeMachine yedeklemesi yaparken, TimeMachine otomatik olarak ağ sürücüsüne bağlanır, yedeklenir ve ardından ağ sürücüsündeki uzak TimeMachine paylaşımını kaldırır. Acaba istediğini elde etmek için bundan faydalanabilir misin?
Ian C.

Yanıtlar:


19

~ / Bin / timemachine:

#!/bin/bash

d="Time Machine"  # (change this to match the name of your backup drive)
diskutil mount "$d" && tmutil startbackup -b && diskutil eject "$d"

~ / Library / LaunchAgents / timemachine_eject.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd>
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>timemachine_eject</string>
    <key>Program</key>
    <string>/Users/username/bin/timemachine</string> <!-- Replace "username" with your username. "~/bin/timemachine" doesn't work -->
    <key>StartInterval</key>
    <integer>120</integer> <!-- run every two minutes for testing. -->
        <!-- Change this to a higher number like 43200 (run every 12 hours) once you've confirmed it works. -->
</dict>
</plist>

Komut dosyasını çalıştırılabilir yapın, varsayılan boşluğu kaldırın ve yenisini yükleyin:

chmod +x ~/bin/timemachine
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.backupd-auto.plist
launchctl load ~/Library/LaunchAgents/timemachine_eject.plist

Plist dosyasında herhangi bir değişiklik yapmak istediğinizde, onu kaldırmanız ve yüklemeniz gerekir:

launchctl unload ~/Library/LaunchAgents/timemachine_eject.plist
launchctl load ~/Library/LaunchAgents/timemachine_eject.plist

1
Bu çözümü çok seviyorum, sürücümü taktığımda ve bir programa bağladığımda işleri monte etmek ve sökmek için bu işlemi daha da otomatikleştirdim. Buradaki gönderimi ziyaret edin: somethinginteractive.com/blog/2013/07/24/…
Mike Kormendy

Maveriks'de bu benim için işe yaramadı, garip bir şekilde senaryo döngüye girdi ve yedekleme sürekli yapıldı. Şu değişiklik olsa da çalışır: <key> ProgramArjuments </key> <array> <string> / Kullanıcılar / martin / bin / timemachine </string> </array>
Martin

somethinginteractive.com çöktü, arşivde sürüm: web.archive.org/web/20160409130936/http://…
Pro Backup

6

Daha iyi bir yol olabilir, ancak bir çözüm bunu Applescript yapmak olabilir. Yedeklemeden sonra bir el yazması yayınlamak için hiçbir yol bulamadım, ancak şunları yapabilirsiniz:

  1. Otomatik TM yedeklemesini kapat
  2. TM'yi çalıştırmak için bir el yazısı düzenleyin
    • Bazı googling, hızlı bir TM yapısını zorlamak için bu hattı açtı: do shell script "/System/Library/CoreServices/backupd.bundle/Contents/Resources/backupd-helper >/dev/null 2>&1 &"
  3. Daha sonra diski çıkarmak için bir satır ekleyin.
    • eject disk somedrivename

Bunun düzenli olarak yapılmasını istiyorsanız, bir cron işine ekleyebilirsiniz.


1
Umut verici görünüyor, ancak # 2 sona erdikten sonra # 3 ile başlamanın bir yolu olmalı.
Adam A

Hatırlarsam, bu gece bir araya gelip test etmeye çalışacağım ve eve döndüğümde test edeceğim (ve çıkarmadan önce yedeklemenin bitmesini beklemeye zorlamayı deneyeceğim).
Fishtoaster


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.