小さな親切 余計なお世話
osxには、普通に使う上では便利でも、場合によっては余計なお世話な機能が結構沢山備わっています。なのでそれらを停止させて、マシンに余計なことをさせたくない場合に重宝するコマンド群をこの記事では紹介していきます。
環境はosx 10.11 あたりを想定しています。
設定を閉じる
まずコマンドで設定をあれこれ変更する前には設定アプリを落としたほうが良いです。
killall System\ Preferences
スクリーンセーバーを開始しないように
defaults -currentHost write com.apple.screensaver idleTime -int 0
通知センターを停止
launchctl unload -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist
アプリクラッシュ時にレポートダイアログを出さないように
defaults write com.apple.CrashReporter DialogType none
アプリクラッシュ後に、ウィンドウを復元しないように
sudo defaults write NSGlobalDomain NSQuitAlwaysKeepsWindows -boolean false
sudo rm -rf ~/Library/Saved\ Application\ State
ソフトウェアアップデートを無効化
sudo softwareupdate --schedule off
スリープを無効化
sudo pmset -a displaysleep 0
sudo pmset -a disksleep 0
sudo pmset -a sleep 0
セキュリティとプライバシー > 一般 > ダウンロードしたアプリケーションの実行許可 で起動を妨げないように
sudo spctl --master-disable
パワーナップを無効化
sudo pmset -a powernap 0
タイムマシーンバックアップを無効化
sudo defaults write /Library/Preferences/com.apple.TimeMachine AutoBackup 0
sudo defaults write /Library/Preferences/com.apple.TimeMachine DoNotOfferNewDisksForBackup -bool YES
Bluetoothでマウスとキーボードを自動で探しにいくのを無効化
マウス、キーボードが繋がっていないとダイアログが出てきたりする奴です
sudo defaults write /Library/Preferences/com.apple.Bluetooth.plist BluetoothAutoSeekKeyboard 0
sudo defaults write /Library/Preferences/com.apple.Bluetooth.plist BluetoothAutoSeekPointingDevice 0
App Nap を無効化
sudo defaults write NSGlobalDomain NSAppSleepDisabled -bool YES
位置情報にもとづいてのタイムゾーン設定 を無効化
sudo defaults write /Library/Preferences/com.apple.timezone.auto Active -bool false
タイムゾーンの設定
sudo systemsetup -settimezone Asia/Tokyo
停電後に自動的に再起動を有効化
ずーっと同じシステムを稼働させたい場合に便利です
sudo pmset autorestart 1
スリープ解除/スクリーンセーバ解除にパスワードを要求 しないようにする
defaults write com.apple.screensaver askForPassword -bool false
隠しファイルを表示する
defaults write com.apple.finder AppleShowAllFiles -boolean true
killall Finder
音量を0にする
osascript -e \"set Volume 0\"
plistによる設定を更新する
上のもろもろ変更した後にはやっておいたほうが良いでしょう
killall cfprefsd
まとめ
こういう設定類はスクリプトなどで自動化して、重要な仕事に集中しましょう。
PythonのFabricで上記のコマンドを運用したりするのもおすすめです。