Bisakah saya menjadwalkan perbaikan izin file berkala?

4

Bisakah saya menjadwalkan perbaikan izin file berkala? Dengan Automator, mungkin?

Petruza
sumber
1
Mengapa izin di OS X sering rusak? Saya selalu ingin tahu.
boehj
2
@ Boehj Kedengarannya seperti pertanyaan bagus untuk situs kecil yang saya tahu;).
Nathan Greenstein
@Nathan: Hah! Poin yang sangat bagus. Saya akan sarapan dan mempostingnya. :)
boehj
1
Sepertinya kita sudah punya satu . Jawabannya tidak mendapatkan banyak cinta.
boehj

Jawaban:

6

Pergi ke terminal dan jalankan "crontab -e" untuk menambahkan entri crontab baru. Sekarang ada banyak cara sintaksis yang dapat Anda lakukan untuk mencapai apa yang Anda inginkan (baca tentangnya di sini wikipedia ). Namun, yang paling mudah adalah menempatkan

@monthly diskutil repairPermissions /

di dalamnya.

Catatan : Anda akan menggunakan vi untuk mengedit. Tekan "i" untuk mengetik, lalu setelah Anda selesai tekan ESC dan ketik ": wq" untuk menyimpan dan keluar.

XQYZ
sumber
Selesai, terima kasih! Saya tidak punya cara untuk mengkonfirmasi diskutil sedang berjalan, tetapi a @hourly touch ~/crontest adalah, jadi saya akan menganggap itu berfungsi.
Petruza
Tapi sekarang saya melihat, itu @hourly touch ~/crontest hanya bekerja ketika OS berjalan pada ** yang tepat: 00 jam, jadi apakah @bulan akan melewatkan jika OS tidak berjalan pada waktu yang tepat? seperti hari pertama di jam 00:00?
Petruza
Yah satu-satunya cara untuk memperbaikinya adalah dengan mendapatkan perangkat lunak yang disebut "anacron". Tampaknya tersedia dari fink. Versi mandiri dikompilasi untuk Tiger, jadi saya tidak tahu apakah itu bekerja pada sesuatu yang lebih baru. Juga saya belum pernah mengaturnya di OS X, tapi mungkin ada satu ton panduan Linux untuk itu yang harus ditransfer.
XQYZ
2

Anda dapat melakukan ini dengan kombinasi iCal, AppleScript, dan Shell Scripting.

Pertama, buka AppleScript Editor (/ Aplikasi / Utilitas). Rekatkan ini di:

tell application "Terminal"
    do script "diskutil repairPermissions /"
end tell

Buka File- & gt; Simpan Sebagai. Pilih lokasi yang aman tetapi tidak terhubung. Atur menu Format File ke Aplikasi.

Lalu, buka iCal. Tambahkan acara baru (sebut saja itu seperti "Izin Perbaikan Otomatis"). Klik kanan genap dan pilih Dapatkan Info.
Atur menu Ulangi ke sesuatu seperti Setiap Bulan (tergantung pada seberapa sering Anda ingin memperbaiki izin).
Di bawah Lampiran, klik Tambah File ... Navigasikan ke file yang Anda simpan dari AppleScript Editor.

Sekarang, iCal akan secara otomatis (pada interval yang Anda pilih pada Repeat) membuka aplikasi yang Anda buat. Aplikasi itu membuka Terminal dan menjalankan perintah yang memverifikasi dan memperbaiki izin Anda. Jendela Terminal memiliki meteran kemajuan dan daftar perubahan yang dibuatnya (beserta kesalahannya).

Nathan Greenstein
sumber
Anda juga dapat menjalankan skrip cron atau launchd atau solusi GUI seperti Pencatat Waktu Script
daviesgeek