U-style LINUX運用日記  Since2001 メニューに戻る LINUX Menuに戻る  
タイトルsambaをインストールする(ファイルサーバーの構築)
文書管理番号 作成日 備考
LIN0008 2005-09-30
osをインストールしてさてファイルアクセスしてみるかと思い立ち上がったサーバーにアクセスしてみると・・・あれ?アクセスできない。調べてみるとファイルサーバー用のプログラムがインストールされていない。はて?どうやらOSインストールのところでオプションに付け忘れたらしいです。ということでここではファイルサーバーを構築していきます。

  1. 調査する
    まずwindows側でエクスプローラーから対象のOSにアクセスできないときは(サーバー名が表示されない)いくつか確認します。今回の場合ファイルサーバーで必要なサービス(プログラム)がインストールされていないというお恥ずかしい結果でしたが設定が間違っていたり、ファイアーウォールが聞いていたりするとやはりエクスプローラーからサーバー名が表示されなかったりします。
    1. ネットワーク設定を確認する
      Vineで左上「アプリケーション」タブから「システムツール」を選択して「ネットワーク設定」を選択します
      下記の赤丸部のタブを切り替えることにより様々な設定が可能です。

    2. 「接続」での設定
      始めに開く画面(↑の画面)で中央のイーサネットというところが上記のように選択し(色が反転している状態)右のプロパティボタンを押してください。

      するとインターフェースのプロパティ画面がひらきます。
      ここではインストール時に行った設定が表示されていると思いますがここで不足している情報や誤っている情報を確認します。あれ今気が付きましたがゲートウェイが設定されていない。( ̄○ ̄;)!自分も忘れていました。自宅ですと大抵ルータが兼用しますのでルータのアドレスと一緒になると思います。修正したらOKボタンを押して画面を閉じます。前の画面にもどったら有効にするのボタンを押しましょう。
      上記をみるとゲートウェイが設定されていません。これは絶対に設定しましょう。通常ルータのアドレスで問題ないです。そうでないとブラウザからインターネットにアクセスできないのとapt-getで情報が収集できません。これ忘れた為にapt-getの時にすごい悩んでしまいました。なんでインストール時に聞かれなかったんだろう・・・
    3. 全般での設定

      ここではホスト名、すなわちネットワーク上のこのパソコンの名前をしたりWindowsネットワークとの設定を行います。さっそくWindowsネットワークを有効にするにチェックを入れようとすると・・・

      という画面が開かれてしまいました。ここでsmbサービスが入っていなかったことに気が付きました
      SMBというのはファイルサーバーのひとつのことでWindowsネットワークとのやりとりをつかさどるサービスです。これを入れ忘れてしまったので当然Windowsからアクセスできるわけがありません。これは後ほど入れる説明をします。
    4. 「DNS」の設定

      ここもインストール時に設定した内容だと思います。ここではインターネットではなくルータ内のローカルネットの名前解決(IP番号とパソコンの名前の同期をとること)なので通常ルーターの番号を設定しておきます。先ほども述べましたがルータというちっちゃい箱がDNSからゲートウェイからDHCPなどやってくれるのでルーターの番号を指定しましょう。ちなみにゲートウェイとは異なるネットワーク(例えばローカルとインターネットなど)のやりとりをするもので、DHCPとは自動的にIPアドレスを割り振ってくれるものを指します。
    5. ホストに関しては省略します。
  2. 上記を変更してもまだおかしい場合はとりあえずインターネットにアクセスできるかどうかチェックしてみましょう。簡単な方法としてはモジラ(WindowsでいうIE)やメーラーを使ってやりとりできるか確認します。インターネットに接続できるようであればルーターまでは物理的に(つまりコードが切れていたりソケットが抜けていたりしない)は問題ないということになります。
  3. インターネットにアクセスはしているんだけどまだアクセスできないという場合はPingコマンドを利用しましょう。PINGコマンドはまずディスクトップのまんなか辺りで右クリックしてください。端末をひらく(L)を押してください。すると次の画面が開きます

    開いた画面で[ping 192.168.1.1]というように入力しエンターキーを押します。このpingというのはネットワーク通信ができているかどうかを調べるコマンドで
    ping 通信先IPアドレス又はホスト名
    と入力しすると繋がっているかどうかがわかります。
    繋がっていると
    [usiyama@serblu ~]$ ping 192.168.1.1
    PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
    64 bytes from 192.168.1.1: icmp_seq=0 ttl=150 time=1.58 ms
    64 bytes from 192.168.1.1: icmp_seq=1 ttl=150 time=0.732 ms
    64 bytes from 192.168.1.1: icmp_seq=2 ttl=150 time=0.724 ms
    64 bytes from 192.168.1.1: icmp_seq=3 ttl=150 time=0.734 ms
    64 bytes from 192.168.1.1: icmp_seq=4 ttl=150 time=0.732 ms

    というようにttl=150といった値を返します。
    つながっていないと
    [usiyama@serblu ~]$ ping 192.168.1.24
    PING 192.168.1.24 (192.168.1.24) 56(84) bytes of data.
    From 192.168.1.14 icmp_seq=1 Destination Host Unreachable
    From 192.168.1.14 icmp_seq=2 Destination Host Unreachable
    From 192.168.1.14 icmp_seq=3 Destination Host Unreachable
    From 192.168.1.14 icmp_seq=5 Destination Host Unreachable
    From 192.168.1.14 icmp_seq=6 Destination Host Unreachable

    といった形でホストまで到着しませんという内容が流れます。
    今回の場合WindowsのクライアントのIPアドレスをしらべてそこに向けてpingを発信します。そしてネットワークが繋がっているかどうかをチェックします。pingが通っていていれば物理的にもつながっていると判断できるのであとはファイルサーバーやファイヤーウォールもしくはユーザーの接続できるかどうかの権限の問題等ひとつひとつ調べてゆけばよいのでひとまず安心できます。pingが通っていないということは非常にやっかいな問題が潜んでいる場合があります。
  4. 他にも調査方法いろいろあるのですが長くなってしまうので本題の「ファイルサーバー構築」へ進みます。
    1. まず、サービス(プログラム)をインストールします。
      先ほどからちらほら出てきているsmbがこれに相当します。インストール方法はいろいろあるのですがせっかく端末の説明を上で記述したのでここでは端末を使って説明します。
      端末を使ったインストールもこれまたいろいろあるのですがここではいちばん簡単なaptというコマンドを使ったインストールを行いたいと思います。aptはパッケージ管理ソフトで通常OSに入っていると思います。入っていないとapt自体をインストールしなくてはならないのですがここでは省略します。まずaptが入っているかどうかを調べます
      [usiyama@serredli usiyama]$ rpm -qa apt
      apt-0.5.15.cnc.7-0vl6.1
      [usiyama@serredli usiyama]$
      上記のようにrpm -qa aptと入力しエンターキーを押します。本来LinuxだろうがWindowsだろうがプログラムというものはソースコードをコンパイル(機械がわかりやすい言葉に変換する行為)して実行形式のファイルが作成されますがそれではすぐに実行できなかったり、設定がうまく行かなかったりします。rpmというのはコンパイルされた実行形式プログラムと実行時の設定をセットしたいわばedHat系(FedoraやVine等)に使いやすいようにセットされたパッケージといった感じのものです。そしてaptはそれらrpmを管理するものです。次に上記の入力でrpmの後の[-qa]はオプションでインストールされているかどうかを問い合わせるものです。その後に調べたい[apt]を入力します。上記のようにapt-・・・と表示されれば組み込まれていますがなにも表示されないときはインストールされていないことになります。
      早速smbをインストールしましょう。(ちなみにVineではaptですがfedoraではyumが該当します。
      [root@serredli root]# apt-get install samba
      パッケージリストを読みこんでいます... 完了
      依存情報ツリーを作成しています... 完了
      以下の追加パッケージがインストールされます:
      samba-common
      以下のパッケージが新たにインストールされます:
      samba samba-common
      アップグレード: 0 個, 新規インストール: 2 個, 削除: 0 個, 保留: 0 個
      18.9MB のアーカイブを取得する必要があります。
      展開後に 36.9MB のディスク容量が追加消費されます。
      続行しますか? [Y/n]y
      取得:1 http://updates.vinelinux.org 3.2/i386/plus samba-common 3.0.10-0vl2 [3472kB]
      取得:2 http://updates.vinelinux.org 3.2/i386/plus samba 3.0.10-0vl2 [15.4MB]
      18.9MB を 29s 秒で取得しました (632kB/s)
      変更を適用しています...
      準備中... ########################################### [100%]
      1:samba-common ########################################### [ 50%]
      2:samba ########################################### [100%]
      完了
      [root@serredli root]#
      無事にインストールができました。エラー等が発生している場合は「掲示板」に解決策があるかもしれませんので確認してください。(結構ここまでくるのに自分自身も苦労してしまいました。たった一つのエラーの為に・・・)
    2. さて次に先ほど利用したネットワークの設定をもう一度開きます。

      今度はWindowsネットワークを有効にするにチェックを入れれるようになりました。中ぐらいに「ドメイン/ワークグループ」という項目がありますがこれはもしWindows側でなにかグループが構築されていた場合指定しましょう。初めてのファイルサーバー構築であればこの際せっかくですから自分の環境にグループ名をつけましょう。ここではサーバ側での設定ですから当然Windows側でも設定が必要になります。
    3. Windowsでの設定(W2000での設定)
      左下のスタートから設定に進みコントロールパネルを開きます。その中にシステムというアイコンがあるのでダブルクリックします。開いた画面でネットワークIDを押します。

      開いた画面で

      ワークグループのラジオボタンを押し、自分で決めたネットワーク名を入力しOKを押します。ドメインというのはちょっと管理が難しいのとドメインコントローラーというサーバーが必要になるので今回は設定しませんし昔チャレンジしましたが難しすぎて挫折しました。
    4. もう一度エクスプローラーでサーバーが確認できるか見てみましょう

      やりました!ついにサーバーが表示されるようになりました。早速アクセスしてみると

      名前を聞かれました。これはインストールの時に設定した名前かな?と思いがちなのですが実はLINUX側のユーザー管理とWindows側(smbサービス)によるユーザー管理は別々で新にユーザー登録しなくてはなりません。
    5. ユーザーの登録
      smbユーザーはLINUXがわで登録したユーザーを指定できます。ですから始めにユーザー登録しておかなくてはいけません。先ほど開いた端末をもう一度開いてください。そこで下記のように入力します。
      [root@serredli root]# adduser ustyle
      [root@serredli root]# smbpasswd -a ustyle
      New SMB password:
      Retype new SMB password:
      Added user ustyle.
      [root@serredli root]#
      まず一行目でLINUX側でユーザー登録をします。コマンドは adduserです。その後に名前を入力します。
      次にsmbpasswd -a 名前というコマンドでsmbユーザーのパスワードを登録します。smbでのパスワード登録もかねているようです。ここでのパスワードは上記ネットワークパスワードの入力のところで使用するパスワードです。LINUXでログインするパスワードとは異なりますので注意してください。(きちんと理解しないと「あれ?パスワード入力したのにサーバーに入れない勘違いし設定まちがっているのかな?と思ってしまう場合があります・・・自分でやっちゃいました。そのときはsmb最初からいれなおしました。T_T)
      単純にsmbpasswd ユーザー名とした場合はパスワードの変更となります。
    6. もう一度エクスプローラーから開きネットワークパスワードを入力してみましょう。

      今度は無事サーバーにはいることができました。やりました!