| ||||||||||
| 前のページ 1 2 3 次のページ | ||||||||||
| UNIX上のログファイルをイベントログ形式で参照する(続き) | ||||||||||
ここまでの設定でメッセージの表示自体は行えるようになりました。しかし図2のように「イベント ID (1000) (ソース Syslog 内) に関する説明が見つかりませんでした。...」という記載が続いたあと、一番最後に「smbd[1583]...」からはじまる実際のログの内容が記載されています。 ![]() 図2:UNIXのログファイルをイベントログのインターフェースで参照する これはメッセージテーブルDLLが存在しない場合に発生するものでSamba特有の問題ではありません。このエラーメッセージを抑止するには、Windows側でメッセージテーブルDLLを作成のうえ、配置する必要があります。メッセージテーブルDLLの作成方法についてはWindowsの技術情報を参照してください。 例えばメッセージDLLを「messages.dll」という名称で作成した場合、先ほど作成したC$共有の下Windows/system32というディレクトリを作成し、そこにmessages.dllを配置したうえで下記のようにします。 # eventlogadm -o addsource Messages Syslog %SystemRoot%/System32/messages.dllしかし、筆者の方ではこの機能の動作を確認できていませんが(注2)、ここではカスタムログ名(上記ではMessages)、ソース名(上記ではSyslog)、登録するメッセージテーブルDLL名を指定することで適切な表示が可能となるといいます。 ※注2:AUXSOURCEフラグも試しており、Samba側に配置したメッセージテーブルDLLへのアクセスも確認していますが、うまく動作していません。 取りあえずということであれば、すでにWindows側で配置済のメッセージDLLが登録しているカスタムログ名やソース、イベントIDを借用してしまうのがよいでしょう。例えばeventlogadmフォーマットで下記のように指定することで、WSHのLogEventメソッドが利用するソースやイベントIDを用いて出力が行われますので、図3のように表示ができます。 ETP: SUCCESS EID: 0 SRC: WSH | ||||||||||
| デーモンの起動、停止をWindowsから実施する:Samba 3.0.21〜 | ||||||||||
Samba 3.0.21以降では、図4のようにUNIX上のデーモンをWindowsのサービスインターフェースを経由して制御する機能が追加されました。 これは以下の手順で設定可能です。
表3:NIX上のデーモンをWindowsのサービスインターフェースを経由して制御する手順 例えば、inetdとexim4をこの制御下に置きたい場合は下記のようにシンボリックリンクを作成します。 # cd /usr/local/samba/lib/svcctl ← Sambaのインストール箇所に依存そのあと上smb.confで下記のように設定します。 [global] ただし起動スクリプトは、以下のような条件を満たす必要があります。
表:起動スクリプトが満たす条件 Debian GNU/Linuxの起動スクリプトでは、statusという引数がサポートされていないので、下記のようにしてstatus引数の処理を追加する必要があります。 status引数のサポート例(inetdの場合) status) | ||||||||||
| 前のページ 1 2 3 次のページ | ||||||||||
| ||||||||||
| ||||||||||
| ||||||||||




