Linux - Sambaのインストールと設定
Sambaとは何ですか?
Samba(www.samba.org)は、Microsoft Windowsネットワークと互換性のあるLinux(GNU / GPLライセンス)用の無料ファイルサーバーです。 つまり、Linuxサーバーを介して、Microsoft Windowsネットワーク上のコンピューター間でファイルやプリンターをシームレスに共有することができます。 Linuxサーバーは、WindowsクライアントからはWindows NTサーバーと見なされます。
Sambaのしくみ
WindowsとLinuxマシン間の通信を可能にするプロトコルはSMB(Server Message Block)と呼ばれます。 1985年にIBMが開発した概念(NetBIOS)に基づいて1987年にMicrosoftが開発したこのプロトコルは、NetBEUI(およびTCP / IP)に依存しています。 TCP / IPの利点は、広く採用されていることです。 TCP / IPは、ほとんどのオペレーティングシステム(Unix、Linux、AmigaOS、MacOS、OS / 2など)に実装されています。 次のスキームに従って。
アプリケーション | |||
SMB | |||
| IPX / SPX | ||
ネットワークドライバ |
建築学、建築物、建築様式
Sambaはサーバーとクライアントで構成されています。 また、設定をテストするためのツールもいくつか用意されています。
- サーバーは2つのアプリケーション(デーモンと呼ばれる)で構成されています
- smbd 、コアサーバ、認証とリソースへのアクセスを提供
- Sambaが提供するサービスを表示するためのnmbd
- client :smbclientは、ファイルを転送したり、プリンタを表示したりするためのインタフェースを提供するLinuxクライアントです。
- smbtar :linuxでTARファイルとの間で転送を行う
- testparm :smb.confファイル(Samba設定ファイル)の文法をチェックする
Sambaのインストール
Sambaをインストールする前に、RPMファイルまたはソースを回復し、クライアントマシンにTCP / IPとNetBIOSプロトコルを追加する必要があります。
インストールは(設定とは異なり)実装が非常に簡単です。 RPMを入手してインストールするための最初のステップと同じです。
rpm -ivh samba-common-2.0.6-x.i386.rpm rpm -ivh samba-2.0.6-x.i386.rpm rpm -ivh samba-client-2.0.6-x.i386.rpm
またはあなたが使用することができます:
rpm -ivh samba - *。rpm
Samba - 最初の打ち上げ
インストール後、次のコマンドを実行してSambaサーバーを起動することができます(ファイル共有やプリンターなし)。
/etc/rc.d/init.d/smb start
サーバーは次の行を返すはずです。
SMBサービスの開始:NMBサービスの開始
次のコマンドは、2つのデーモンが正しく起動されたことを確認します。
/etc/rc.d/init.d/smb status smbd(pid 1054)は実行中です... nmbd(pid 1056)は実行中です...
このコマンドによりSambaを再起動することができます。
/etc/rc.d/init.d/smb restart
ただし、次の2つのコマンドを使用することをお勧めします。
/etc/rc.d/init.d/smb stop /etc/rc.d/init.d/smb start
Sambaの設定
Sambaの設定は単一の設定ファイルsmb.confを通して行われる。 このファイルは/ usr / local / samba / libディレクトリにあります。
このファイルには、共有したいリソースとそれに関連する許可/制限が記述されています。 smb.confファイルにはいくつかのセクションがあり(各セクションは角括弧で囲まれたセクションの名前を含む行(見出し)で参照されます)、それぞれが次のタイプのパラメータのセットで構成されています:attribute = value。
注:コメントは#で始まります。
主に3つのセクションがあります。
- [global]セクションは、サーバーの一般設定を定義します。
- [homes]セクションはディレクトリの共有設定を定義します。
- [printers]セクションは、サーバーの共有プリンタ設定を定義します。
[Global]セクション
これは[global]セクションの例です。
[global]#Windowsの場合と同じグループ名workgroup = UNDERTAKER#ゲストアカウントなしguestアカウント= nobody; #マルチユーザーアクセス共有モード=はい。 #サーバーのネットワークカードのIPアドレス#サブネットマスクのインターフェース= 10.194.2.100/255.255.255.0#printcapファイルの場所printcap = / etc / printcap#printcapで定義されているすべてのプリンターを共有するprinter = yes#Sambaログファイルログlevel = 1ログファイル= /var/log/samba/log.%m#セキュリティモード:(ユーザー/共有/サーバー)security = user#特定のサブネットへのアクセスを制限するホストは許可= 15.144です。 #特定のマシンへのアクセスを禁止hosts = 15.144。 例外155.144.179.2
ホームディレクトリを共有する
[homes]セクションは、各ユーザーのホームディレクトリへのアクセスを定義するために使用されます。 これがサンプルのセクションです。
[ホーム]#コメント欄に表示された内容についてのコメント=レパートリー担当者#効果的なブラウズ可能な閲覧可能=不可#可能性のある書き込み可能=はい作成マスク= 0750
カスタムディレクトリを共有する
ディレクトリの名前を持つセクションを作成することによって、マシン上の任意のディレクトリへのカスタムアクセスを定義することができます。
例:
[CCM]#コメントを表示することができます説明を表示するには、コメントを作成してください=レパートリーカマルシェ#リソースパス= / home / ccm#有効なリソースを参照することができます。 #実用主義者がアクセントを自動化するリソースを作成するユーザー= jeff、meandus、tittom#入力可能=書き込み可能=はいcreate mask = 0750
CD-ROMドライブを共有する
たとえば次のように[cd-rom]セクションを作成することによって、CD-ROMドライブを共有することができます(事前に組み立てられているはずです)。
[CD-ROM]#コメントを表示することができますコメントを追加する= CD-ROMを作成するパス= / mnt / cdrom#アクセス可能なパブリック=はい#セキュリティ上の理由書き込み不可=いいえマスク作成= 0750
設定をテストする
testparmプログラムを使用すると、構成ファイル(smb.conf)の構文を確認できます。 smb.confファイルを手動で編集するたびにこのユーティリティを実行することをお勧めします。 testparmの構文は次のとおりです。
testparm smb.conf
エラーメッセージが返されない場合は、smb.confファイルの構文は正しいです(構文はチェックされるだけで、操作はチェックされません)。
結果を正しく視覚化するために、次のコマンドを使用して出力をファイルにリダイレクトできます。
testparm smb.conf> / directory / file
LinuxでSambaリソースにアクセスする
Sambaクライアント(smbclient)は、UnixマシンからSambaリソースにアクセスするためのコマンドラインインターフェースを提供します。
smbclientはまずネットワーク上のSambaサーバの存在を確認し、それが共有するリソースを以下のコマンドでリストアップする。
smbclient server_name_smb
リソースが識別されたら、次のコマンドでそれらのそれぞれにアクセスすることが可能です。
smbclient \\\ server_name_smb \\ ressource -U username
ユーザーは入力を求められます。 それから、単純にFTPコマンドを送信してファイルを送受信するか、リソースのディレクトリを参照します。
プリンタへのアクセスは次のコマンドを使って行われます。
smbclient \\\ server_name_smb \\ ressource -P
/usr/local/samba/lib/etc.confファイルの印刷は、次のコマンドを使用して行われます。
/usr/local/samba/lib/etc.confを印刷します。
プリントキューを表示するには
尾
smbclientを停止するには
出口
メッセージを送る
Sambaクライアントでは、LanManagerクライアント経由でメッセージを送信することもできます(リモートマシンがWinPopUpのようにこのタイプのメッセージを処理できる限り)。 メッセージ(1600バイト未満)を送信するための構文は次のとおりです。
smbclient -M machine_name
メッセージの書き込みが終わったら、Ctrl + Dを押します。
共有リソースをマウントする
smbmountおよびsmbumountユーティリティを使用すると、(カーネルがSMBファイルシステムをサポートしている限り)リモートのファイルシステムとしてSMBリソースをマウント/アンマウントできます。
リソースをマウントするには
smbmount // servername_smb / mount_point
リソースをマウント解除するには
smbumount / mount_point
CommentcaMarche.netに公開されたオリジナル文書