「Windows XP でドメインログオンするとメモ帳が起動する」の版間の差分

提供:Samba-JP
ナビゲーションに移動検索に移動
編集の要約なし
編集の要約なし
 
(2人の利用者による、間の4版が非表示)
1行目: 1行目:
{{冒頭部|J0075|2009/11/19|たかはしもとのぶ|小田切耕司}}
{{冒頭部|J0075|2009/11/27|たかはしもとのぶ|小田切耕司}}
==対象==
==対象==
この文書は、以下のプロダクトに付いて説明したものです。
この文書は、以下のプロダクトに付いて説明したものです。
5行目: 5行目:
* Samba 2.2 系列
* Samba 2.2 系列
* Samba 2.0 系列
* Samba 2.0 系列
* Windows XP Professional/Vista/7/2008
* Windows 2000/XP/Vista/7/2008
* Windows 2000 VERSIONS
==概要==
==概要==
Windows XP Professional や Windows 2000 から Samba で構築したドメインにログオンすると、メモ帳が起動します。メモ帳内には以下のような文字列が表示されています。
Windows 2000/XP/Vista/7/2008などから Samba で構築したドメインにログオンすると、メモ帳が起動します。メモ帳内には以下のような文字列が表示されています。


[.ShellClassInfo]
[.ShellClassInfo]
18行目: 17行目:
上記は Desktop.ini という名称で「スタートアップ」フォルダ内に存在するファイルの内容になります。
上記は Desktop.ini という名称で「スタートアップ」フォルダ内に存在するファイルの内容になります。


通常このファイルはシステム属性と隠し属性が付与されています。しかし Samba のデフォルトでは、map hidden や map system パラメータが No となっているため、これらの属性は無視されます。
通常このファイルはシステム属性と隠し属性が付与されています。しかし Samba のデフォルトでは、map hidden や map system もしくはstore dos attributesパラメータが No となっているため、これらの属性は無視されます。


そのため、移動プロファイルが有効になっており、かつ移動プロファイルの保存先が Samba サーバ上になっている場合は、ファイルが通常のファイルとして扱われてしまい、「スタートアップ」フォルダ内に存在する場合は、自動起動の対象となってしまいます。
そのため、移動プロファイルが有効になっており、かつ移動プロファイルの保存先が Samba サーバ上になっている場合は、ファイルが通常のファイルとして扱われてしまい、「スタートアップ」フォルダ内に存在する場合は、自動起動の対象となってしまいます。
24行目: 23行目:
smb.confに以下の設定をすることにより、この問題に対処することが可能です。
smb.confに以下の設定をすることにより、この問題に対処することが可能です。


#map hidden=yes , map system=yes とする
* '''map hidden=yes , map system=yes とする'''
もしくは
#もしくはstore dos attributes = yes とする(map hidden,map systemと両方設定しないこと)
* '''store dos attributes = yes とする'''(map hidden,map systemと両方設定しないこと)
#:これによりSamba の共有上のファイルで隠し属性やシステム属性がサポートされるようになります。 なお、これらのパラメータは、各々UNIX上のファイルのパーミッションのworldの実行権、groupの実行権に対応しますので注意してください。


これにより、Samba の共有上のファイルで隠し属性やシステム属性がサポートされるようになります。
ただし、map hidden,map systemを指定した場合、すでにクライアント上でキャッシュされている Desktop.ini ファイルについては、上記属性が設定されていないため、手作業 Desktop.ini ファイルに対して
なおmap system , map hidden のパラメータは、各々UNIX上のファイルのパーミッションのgroupの実行権、otherの実行権に対応しますので注意してください。


そしてstore dos attributesパラメータはsamba3.0.3以降で使用可能で、さらに、OSとファイルシステムが拡張属性に対応している必要があります。
chmod +x Desktop.ini


上記のパラメータを指定した場合、すでにサーバー側に保存されている Desktop.ini ファイルについては、上記属性が設定されていないため、サーバー側の移動プロファイルを削除し、Windowsクライアント上でDesktop.ini ファイルに対して隠し属性やシステム属性を設定する必要があります。
などを発行して、隠し属性やシステム属性を設定した上で、


この技術情報は [samba-jp:13947] [http://cgi.samba.gr.jp/pipermail/samba-jp/2007-November/001091.html samba-jp:19829] からの一連のスレッドの議論を元に作成されています。
touch desktop.ini


'''※ 以前 この文章にあった hide files = /desktop.ini/ という設定は移動プロファイル(スタートメニューなど)が英語になってしまうという問題が発生するため使用を推奨しません。'''
などを発行して、ファイルの最終更新日を更新することにより、クライアント上のファイルが更新されるように設定する必要があります。

この技術情報は samba-jp:13947 からの一連のスレッドの議論を元に作成されています。

2009年12月1日 (火) 00:11時点における最新版

KB番号 J0075
最終更新日 2009/11/27
作成者 たかはしもとのぶ
最終更新者 小田切耕司

対象

この文書は、以下のプロダクトに付いて説明したものです。

  • Samba 3.x 系列
  • Samba 2.2 系列
  • Samba 2.0 系列
  • Windows 2000/XP/Vista/7/2008

概要

Windows 2000/XP/Vista/7/2008などから Samba で構築したドメインにログオンすると、メモ帳が起動します。メモ帳内には以下のような文字列が表示されています。

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21787

原因

これは、Samba の仕様上の制限になります。

上記は Desktop.ini という名称で「スタートアップ」フォルダ内に存在するファイルの内容になります。

通常このファイルはシステム属性と隠し属性が付与されています。しかし Samba のデフォルトでは、map hidden や map system もしくはstore dos attributesパラメータが No となっているため、これらの属性は無視されます。

そのため、移動プロファイルが有効になっており、かつ移動プロファイルの保存先が Samba サーバ上になっている場合は、ファイルが通常のファイルとして扱われてしまい、「スタートアップ」フォルダ内に存在する場合は、自動起動の対象となってしまいます。

対処策

smb.confに以下の設定をすることにより、この問題に対処することが可能です。

  • map hidden=yes , map system=yes とする

もしくは

  • store dos attributes = yes とする(map hidden,map systemと両方設定しないこと)

これにより、Samba の共有上のファイルで隠し属性やシステム属性がサポートされるようになります。 なお、map system , map hidden のパラメータは、各々UNIX上のファイルのパーミッションのgroupの実行権、otherの実行権に対応しますので注意してください。

そしてstore dos attributesパラメータはsamba3.0.3以降で使用可能で、さらに、OSとファイルシステムが拡張属性に対応している必要があります。

上記のパラメータを指定した場合、すでにサーバー側に保存されている Desktop.ini ファイルについては、上記属性が設定されていないため、サーバー側の移動プロファイルを削除し、Windowsクライアント上でDesktop.ini ファイルに対して隠し属性やシステム属性を設定する必要があります。

この技術情報は [samba-jp:13947] samba-jp:19829 からの一連のスレッドの議論を元に作成されています。

※ 以前 この文章にあった hide files = /desktop.ini/ という設定は移動プロファイル(スタートメニューなど)が英語になってしまうという問題が発生するため使用を推奨しません。