コンピュータネットワークのためのSambaの紹介

Sambaは、オペレーティングシステム間でネットワークリソースを共有するクライアント/サーバーテクノロジです。 Sambaでは、Windows、Mac、Linux / UNIXクライアント間でファイルとプリンタを共有できます。

Sambaのコア機能は、SMB(Server Message Block)プロトコルの実装から得られます。 SMBのクライアント側およびサーバー側のサポートには、Microsoft Windows、Linuxディストリビューション、およびApple Mac OSXの現代版がすべてバンドルされています。 無料のオープンソフトウェアは、samba.orgからも入手できます。 これらのオペレーティングシステムの技術的な違いにより、この技術はかなり洗練されています。

Sambaがあなたのためにできること

Sambaはいくつかの異なる方法で利用できます。 たとえば、 イントラネットや他のプライベートネットワーク上では、SambaアプリケーションはLinuxサーバーとWindowsクライアントまたはMacクライアント(またはその逆)間でファイルを転送できます。 ApacheとLinuxを実行しているWebサーバーを使用している人は、Webサイトのコンテンツをリモートで管理するためにFTPではなくSambaを使用することを検討するかもしれません。 単純な転送の他に、SMBクライアントはリモートファイルの更新も実行できます。

WindowsおよびLinuxクライアントからSambaを使用する方法

Windowsユーザーは、ドライブをマップしてコンピュータ間でファイルを共有することがよくあります。 SambaサービスがLinuxまたはUnixサーバー上で実行されているため、Windowsユーザーは同じファシリティを利用してこれらのファイルやプリンタにアクセスすることができます。 Unixの共有には、 Windowsエクスプローラネットワークコンピュータ、 Internet Explorerなどのオペレーティングシステムブラウザを介して、Windowsクライアントからアクセスできます。

反対方向のデータの共有も同様です。 UnixプログラムsmbclientはブラウジングとWindows共有への接続をサポートしています。 たとえば、louiswuという名前のWindowsコンピュータでC $に接続するには、Unixコマンドプロンプトで次のように入力します

smbclient \\\\ louiswu \\ c $ -U username

usernameは有効なWindows NTアカウント名です。 (Sambaは必要に応じてアカウントのパスワードを要求します)。

SambaはUNC(Universal Naming Convention)パスを使用してネットワークホストを参照します。 Unixのコマンドシェルは通常、特殊な方法でバックスラッシュ文字を解釈するので、Sambaを扱うときは、上記のようにバックスラッシュを重複して入力してください。

Apple MacクライアントからSambaを使用する方法

共有上のファイル共有オプション Macシステム環境設定のウィンドウでは、Windowsや他のSambaクライアントを見つけることができます。 Mac OSXはSMB経由でこれらのクライアントに自動的に到達しようと自動的に試み、Sambaが機能していない場合は代替プロトコルにフォールバックします。 詳細については、「Macでのファイル共有との接続方法」を参照してください。

Sambaを設定するための要件

Microsoft Windowsでは、SMBサービスはオペレーティングシステムサービスに組み込まれています。 ワークステーションネットワークサービスがSMBクライアントサポートを提供している間は、 サーバーネットワークサービス(コントロールパネル/ネットワーク、サービスタブから利用可能)はSMBサーバーのサポートを提供します.SMBは機能するためにTCP / IPも必要とします。

Unixサーバでは、2つのデーモンプロセスsmbdとnmbdがすべてのSamba機能を提供します。 Sambaが現在実行中であるかどうかを判断するには、Unixのコマンドプロンプトで次のように入力します。

ps ax | grep mbd | もっと

smbdとnmbdの両方がプロセスリストに表示されていることを確認します。

通常のUnixの方法でSambaデーモンを起動および停止します:

/etc/rc.d/init.d/smb start /etc/rc.d/init.d/smb stop

Sambaは設定ファイルsmb.confをサポートしています。 共有名、ディレクトリパス、アクセス制御、ロギングなどの詳細をカスタマイズするためのSambaモデルでは、このテキストファイルを編集してデーモンを再起動します。 最小限のsmd.conf(ネットワーク上でUnixサーバを見るには十分です)は次のようになります

; 最小/etc/smd.conf [グローバル] guestアカウント= netguestワークグループ= NETGROUP

考慮すべき一部

Sambaはパスワードを暗号化するオプションをサポートしていますが、この機能はいくつかのケースでは無効にすることができます。 安全でないネットワークに接続されたコンピュータで作業する場合、smbclientを使用するときに提供されるプレーンテキストパスワードは、 ネットワークスニファによって簡単に検出できることに気付きます。

UnixとWindowsコンピュータ間でファイルを転送するときに、 名前の変更に関する問題が発生する可能性があります。 特に、Windowsファイルシステム上で大文字と小文字が混在しているファイル名は、Unixシステムにコピーするとすべて小文字になります。 非常に長いファイル名は、使用されているファイルシステム(古いWindows FATなど)によっては短い名前に切り捨てられることもあります。

UnixおよびWindowsシステムでは、 EOL(End-Of-Line) ASCIIテキストファイルの場合と異なります。 Windowsは2文字のキャリッジリターン/ラインフィード(CRLF)シーケンスを使用しますが、Unixでは1文字(LF)のみを使用します。 Unixのmtoolsパッケージとは異なり、Sambaはファイル転送中にEOL変換を実行しません。 Sambaを使用してWindowsコンピュータに転送すると、Unixテキストファイル(HTMLページなど)は非常に長い1行のテキストとして表示されます。

結論

Sambaの技術は20年以上にわたって存在しており、定期的にリリースされた新しいバージョンで開発され続けています。 このような長い寿命を享受してきたソフトウェアアプリケーションはごくわずかです。 Sambaの回復力は、LinuxやUnixサーバを含む異機種間ネットワークで作業する際の必須技術としての役割を証明しています。 Sambaは平均的な消費者が理解する必要がある主流技術ではありませんが、SMBとSambaの知識はITおよびビジネスネットワークの専門家に役立ちます。