« ダート・フィールド・市原 DFI | トップページ | 熱海海上花火大会 »

ByHost内にある設定ファイルにdefaults writeする方法

Macには初期設定フォルダがあります。
/Users/ユーザー名/Library/Preferences
ですね。
このフォルダには色々な初期設定ファイルがあります。

その中に『ByHost』フォルダがあります。
MacOSXはServer版を利用すると
同じ環境で色々な端末にログインする事が出来るようになります。
その場合に
『端末に依存する設定』
についてはこのByHost内に格納されるようになっています。

例えば『スクリーンセーバー』の設定です。
スクリーンセーバーは『個人設定』と『マシンの』設定に
別れています。
そんな場合には設定内容に不整合がでてしまい
ログインする度に設定しなくてはなりません。
そんな事が想定される『設定項目』については
ByHost内に格納するようになっています。
(アプリケーションに依存しますけど)
 

例えば↓以下のように
AとBのMacがあって両方に同じアカウントを使って
ログインするようなサーバー設定されているとします。
それぞれのMacにログインする時には
それぞれのUUID(実際には40桁の英数文字)が付加されます。

600x420_byhost_01

Aの端末にはCCCCCなるスクリーンセーバーがインストールされていますが

Bの端末にはインストールされていません。

こんな場合
初期設定ファイルが『1つ』だと不整合が発生しますね

そこで
端末別に初期設定ファイルを作るような仕組みになっているのです。

623x487_byhost_02

A端末にログインした時に読み込む設定

B端末にログインした時に読み込む設定

別にしてあるのです。

これは
ホームディレクトリを共有している
サーバー環境でのみ発生しますので
通常のスタンドアロン環境の場合は
普通の初期設定ファイルと同じと思っていても
間違いではありません。

 

複数のマシンにログインすると
初期設定ファイルがマシン毎に出来るようになっています。

com.microsoft.Powerpoint.0A992BF5-XXXXXX-XXXXX-XXXXX-6FF476D08BBB.plist
com.microsoft.Powerpoint.0A992BF5-XXXXXX-XXXXX-YYYYY-6FF476D08BBB.plist
このようにマシンの『UUID』を付加した
長い初期設定ファイル名がマシン毎に出来るようになっています。


defaults -currentHost write com.apple.screensaver askForPassword -int 1



スクリーンセイバーの解除時にパスワードを要求する設定

ポイントは
-currentHost
です。

この方法で
ByHost
内にある設定ファイルに書き込み出来ます。

ログイン中のアカウントに対して設定を書き込みますので
リモートデスクトップ3向きですね


追記
パスワード設定関連10.6から変更
currentHost(Byhost)

ユーザー(Preferences直下)
で一部わかれた

多分こんな感じ

defaults -currentHost write com.apple.screensaver askForPassword -int 1
defaults -currentHost write com.apple.screensaver idleTime -int 900
defaults -currentHost write com.apple.screensaver askForPassword -int 1
defaults -currentHost write com.apple.screensaver showClock -boolean Yes
defaults write com.apple.screensaver askForPassword -int 1
defaults write com.apple.screensaver askForPasswordDelay -int 900
defaults write com.apple.screensaver tokenRemovalAction -int 0

|

« ダート・フィールド・市原 DFI | トップページ | 熱海海上花火大会 »

Library」カテゴリの記事

コメント

この記事へのコメントは終了しました。