samba設定方法


最新バージョンはftp://ftp.samba.gr.jp/pub/samba/からダウンロードができます。<14.6MB>

設定で困った時はhttp://www.samba.gr.jp/sambaの日本語マニアルを参照してください。

最終更新日:2009年12月1日

◆SAMBAの設定は以下の手順で行ないます。
  1. sambaのインストール

  2. sambaの設定

  3. sambaの接続テスト

  4. sambaの起動


◆sambaのインストール

  1. sambaの終了と前準備

    sambaはマシンを起動しますと自動的にsambaも起動されますので、sambaを終了させます。

    # killall smbd

    # killall nmbd

    #cd /usr/local/

    /uer/local# mv samba samba-old で現行のsambaをコピーしておく。


  2. sambaのインストール

    インストールについては、6枚目のCD-ROMに入っているsamba-3.2.13のインストール方法を説明します。

    # cd /usr/local/src
    # /mount/mnt/cdrom                ←CD-ROMを使用する場合(6枚目のCD-ROMをセットする)
    
    # /cd/mnt/cdrom/source/n/samba
    
    /cd/mnt/cdrom/source/n/samba# cp samba-3.2.13.tar.xz /usr/local/src
    
    /usr/local/src# tar Jxvf samba-3.2.13.tar.xz← SLackware CD-ROMをコピーした場合は、samba-3.2.13.tar.xzの解凍
    
    /usr/local/src# tar zxvf samba-3.2.13.tar.gz← samba-3.2.13.tar.gzの解凍
    
    /usr/local/src# cd samba-3.2.13/source
    
    /usr/local/src/samba-3.2.13/source# ./configure
    
    /usr/local/src/samba-3.2.13/source# make
    
    /usr/local/src/samba-3.2.13/source# su
    
    /usr/local/src/samba-3.2.13/source# make install
    
    /usr/local/src/samba-3.2.13/source# cp /usr/local/src/samba-3.2.13/examples/smb.conf.default /etc/samba/smb.conf   
    
    


    トップへ戻る

    ◆sambaの設定

      sambaの設定は以下のとおりに行ないました。
    1. smb.confの修正
      /etc/samba/# vi smb.conf                で以下の赤字部分を修正しました。
      # This is the main Samba configuration file. You should read the
      # smb.conf(5) manual page in order to understand the options listed
      # here. Samba has a huge number of configurable options (perhaps too
      # many!) most of which are not shown in this example
      #
      # For a step to step guide on installing, configuring and using samba, 
      # read the Samba HOWTO Collection.
      #
      # Any line which starts with a ; (semi-colon) or a # (hash) 
      # is a comment and is ignored. In this example we will use a #
      # for commentry and a ; for parts of the config file that you
      # may wish to enable
      #
      # NOTE: Whenever you modify this file you should run the command "testparm"
      # to check that you have not made any basic syntactic errors. 
      #
      #======================= Global Settings =====================================
      [global]
      
      # workgroup = NT-Domain-Name or Workgroup-Name, eg: LINUX2
         workgroup = WORKGROUP
      
      # server string is the equivalent of the NT Description field
         server string = Samba Server
      
      # Security mode. Defines in which mode Samba will operate. Possible 
      # values are share, user, server, domain and ads. Most people will want 
      # user level security. See the HOWTO Collection for details.
         security = user
      
      # This option is important for security. It allows you to restrict
      # connections to machines which are on your local network. The
      # following example restricts access to two C class networks and
      # the "loopback" interface. For more examples of the syntax see
      # the smb.conf man page
        hosts allow = 192.168.0. 127.
      
      # If you want to automatically load your printer list rather
      # than setting them up individually then you'll need this
         load printers = yes
      
      # you may wish to override the location of the printcap file
      ;   printcap name = /etc/printcap
      
      # on SystemV system setting printcap name to lpstat should allow
      # you to automatically obtain a printer list from the SystemV spool
      # system
      ;   printcap name = lpstat
      
      # It should not be necessary to specify the print system type unless
      # it is non-standard. Currently supported print systems include:
      # bsd, cups, sysv, plp, lprng, aix, hpux, qnx
      ;   printing = cups
      
      # Uncomment this if you want a guest account, you must add this to /etc/passwd
      # otherwise the user "nobody" is used
      ;  guest account = pcguest
      
      # this tells Samba to use a separate log file for each machine
      # that connects
         log file = /var/log/samba.%m
      
      # Put a capping on the size of the log files (in Kb).
         max log size = 50
      
      # Use password server option only with security = server
      # The argument list may include:
      #   password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name]
      # or to auto-locate the domain controller/s
      #   password server = *
      ;   password server = 
      
      # Use the realm option only with security = ads
      # Specifies the Active Directory realm the host is part of
      ;   realm = MY_REALM
      
      # Backend to store user information in. New installations should 
      # use either tdbsam or ldapsam. smbpasswd is available for backwards 
      # compatibility. tdbsam requires no further configuration.
      ;   passdb backend = tdbsam
      
      # Using the following line enables you to customise your configuration
      # on a per machine basis. The %m gets replaced with the netbios name
      # of the machine that is connecting.
      # Note: Consider carefully the location in the configuration file of
      #       this line.  The included file is read at that point.
      ;   include = /usr/local/samba/lib/smb.conf.%m
      
      # Most people will find that this option gives better performance.
      # See the chapter 'Samba performance issues' in the Samba HOWTO Collection
      # and the manual pages for details.
      # You may want to add the following on a Linux system:
      #         SO_RCVBUF=8192 SO_SNDBUF=8192
         socket options = TCP_NODELAY 
      
      # Configure Samba to use multiple interfaces
      # If you have multiple network interfaces then you must list them
      # here. See the man page for details.
        interfaces = 192.168.0.1/24 127.0.0.1/8 
      
      # Browser Control Options:
      # set local master to no if you don't want Samba to become a master
      # browser on your network. Otherwise the normal election rules apply
      ;   local master = no
      
      # OS Level determines the precedence of this server in master browser
      # elections. The default value should be reasonable
         os level = 65
      
      # Domain Master specifies Samba to be the Domain Master Browser. This
      # allows Samba to collate browse lists between subnets. Don't use this
      # if you already have a Windows NT domain controller doing this job
      ;   domain master = yes 
      
      # Preferred Master causes Samba to force a local browser election on startup
      # and gives it a slightly higher chance of winning the election
         preferred master = yes
      
      # Enable this if you want Samba to be a domain logon server for 
      # Windows95 workstations. 
         domain logons = yes
      
      # if you enable domain logons then you may want a per-machine or
      # per user logon script
      # run a specific logon batch file per workstation (machine)
      ;   logon script = %m.bat
      # run a specific logon batch file per username
      ;   logon script = %U.bat
      
      # Where to store roving profiles (only for Win95 and WinNT)
      #        %L substitutes for this servers netbios name, %U is username
      #        You must uncomment the [Profiles] share below
      ;   logon path = \\%L\Profiles\%U
      
      # Windows Internet Name Serving Support Section:
      # WINS Support - Tells the NMBD component of Samba to enable it's WINS Server
         wins support = yes
      
      # WINS Server - Tells the NMBD components of Samba to be a WINS Client
      #	Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
      ;   wins server = w.x.y.z
      
      # WINS Proxy - Tells Samba to answer name resolution queries on
      # behalf of a non WINS capable client, for this to work there must be
      # at least one	WINS Server on the network. The default is NO.
      ;   wins proxy = yes
      
      # DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names
      # via DNS nslookups. The default is NO.
         dns proxy = no 
      
      # These scripts are used on a domain controller or stand-alone 
      # machine to add or delete corresponding unix accounts
      ;  add user script = /usr/sbin/useradd %u
      ;  add group script = /usr/sbin/groupadd %g
      ;  add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
      ;  delete user script = /usr/sbin/userdel %u
      ;  delete user from group script = /usr/sbin/deluser %u %g
      ;  delete group script = /usr/sbin/groupdel %g
      
      
      #============================ Share Definitions ==============================
      [works] ← ここから追加
        comment = hero-island
        path = /home/works
        browseable = yes
        writable = yes
      
      [common]
        comment = Common file
        path = /var/samba/common
        public = yes
        browseable = yes
        writable = yes
        create mask = 744
      
      [homes]
         comment = Home Directories
         browseable = no
         writable = yes  ←追加行はここまで、
      
      # Un-comment the following and create the netlogon directory for Domain Logons
      ; [netlogon]
      ;   comment = Network Logon Service
      ;   path = /usr/local/samba/lib/netlogon
      ;   guest ok = yes
      ;   writable = no
      ;   share modes = no
      
      
      # Un-comment the following to provide a specific roving profile share
      # the default is to use the user's home directory
      ;[Profiles]
      ;    path = /usr/local/samba/profiles
      ;    browseable = no
      ;    guest ok = yes
      
      
      # NOTE: If you have a BSD-style print system there is no need to 
      # specifically define each individual printer
      [printers]
         comment = All Printers
         path = /var/spool/samba
         browseable = no
      # Set public = yes to allow user 'guest account' to print
         guest ok = no
         writable = no
         printable = yes
      
      # This one is useful for people to share files
      ;[tmp]
      ;   comment = Temporary file space
      ;   path = /tmp
      ;   read only = no
      ;   public = yes
      
      # A publicly accessible directory, but read only, except for people in
      # the "staff" group
      ;[public]
      ;   comment = Public Stuff
      ;   path = /home/samba
      ;   public = yes
      ;   writable = yes
      ;   printable = no
      ;   write list = @staff
      
      # Other examples. 
      #
      # A private printer, usable only by fred. Spool data will be placed in fred's
      # home directory. Note that fred must have write access to the spool directory,
      # wherever it is.
      ;[fredsprn]
      ;   comment = Fred's Printer
      ;   valid users = fred
      ;   path = /homes/fred
      ;   printer = freds_printer
      ;   public = no
      ;   writable = no
      ;   printable = yes
      
      # A private directory, usable only by fred. Note that fred requires write
      # access to the directory.
      ;[fredsdir]
      ;   comment = Fred's Service
      ;   path = /usr/somewhere/private
      ;   valid users = fred
      ;   public = no
      ;   writable = yes
      ;   printable = no
      
      # a service which has a different directory for each machine that connects
      # this allows you to tailor configurations to incoming machines. You could
      # also use the %U option to tailor it by user name.
      # The %m gets replaced with the machine name that is connecting.
      ;[pchome]
      ;  comment = PC Directories
      ;  path = /usr/pc/%m
      ;  public = no
      ;  writable = yes
      
      # A publicly accessible directory, read/write to all users. Note that all files
      # created in the directory by users will be owned by the default user, so
      # any user with access can delete any other user's files. Obviously this
      # directory must be writable by the default user. Another user could of course
      # be specified, in which case all files would be owned by that user instead.
      ;[public]
      ;   path = /usr/somewhere/else/public
      ;   public = yes
      ;   only guest = yes
      ;   writable = yes
      ;   printable = no
      
      # The following two entries demonstrate how to share a directory so that two
      # users can place files there that will be owned by the specific users. In this
      # setup, the directory should be writable by both users and should have the
      # sticky bit set on it to prevent abuse. Obviously this could be extended to
      # as many users as required.
      ;[myshare]
      ;   comment = Mary's and Fred's stuff
      ;   path = /usr/somewhere/shared
      ;   valid users = mary fred
      ;   public = no
      ;   writable = yes
      ;   printable = no
      ;   create mask = 0765
      
      wqコマンドでsaveします。
      
      cp /etc/samba/smb.conf /usr/local/samba/lib/smb.conf ←smb.confをコピーします。
      
      CATION!! プリンタを共有しない場合でも、「printing」および「printcap name」は設定しておいてください。


      ========================================================================================================


    2. SAMBAで使用するSPOOL関係のディレクトリーを作成します。
      # mkdir /usr/local/samba/logon         logonのディレクトリーを作成します。
      
      # mkdir /usr/spool/samba              
      
      
      # chmod 777 /usr/spool/samba
      
      


    3. SAMBAパスワードファイルの作成

      暗号化パスワードを使用する場合は、以下の要領でSAMBA専用パスワードファイルを作成します。
      # cd /usr/local/src/samba-3.2.13/source/script 
      
      /usr/local/src/samba-3.2.13/source/script# chmod 700 mksmbpasswd.sh 
      
      /usr/local/src/samba-3.2.13/source/script# cat /etc/passwd | ./mksmbpasswd.sh > /usr/local/samba/private/smbpasswd 
      
      /usr/local/src/samba-3.2.13/source/script# chmod 500 /usr/local/samba/private 
      
      /usr/local/src/samba-3.2.13/source/script# chmod 600 /usr/local/samba/private/smbpasswd 
      
      


    4. sambaパスワードの変更。
      # /usr/local/samba/bin/smbpasswd hirosima      hirosimaの部分を変更してください。         
      # /usr/local/samba/bin/smbpasswd -a hoge       hogeさんを追加します。         
      
      New SMB password:                 新しいパスワードを入力します。              
      
      Retry new SMB password:      もう一度、新しいパスワードを入力します。                    
      
      


    トップへ戻る

    ◆sambaの接続テスト

    smbclientでのテスト
    #cd /etc/rc.d
    #etc/rc.d#touch rc.samba
    #etc/rc.d#chmod  775 rc.samba
    #etc/rc.d#vi rc.samba
    /usr/sbin/smbd -D    を /usr/local/samba/sbin/smbd -D に変更する。
    /usr/sbin/nmbd -D    を /usr/local/samba/sbin/nmbd -D に変更する。
    :wqで終わって
    #etc/rc.d#chmod 755 rc.samba
    一度、マシンを再起動します
    再起動の時に Starting Samba...を確認してください。
    
    # /usr/local/samba/bin/smbclient -L //you     youの部分は、自分のホスト名をいれます。      
    
    Added interface ip=192.168.0.1 bcast=192.168.0.255 nmask=255.255.255.0
    Server time is mon Mar 15 21:12:48 1999
    password:                  Enterを押してください、 
    Domain=[WORKGROUP] OS=[Unix] Server=[samba 2.0.6]
    connected as guest security=user
                      :
                      : 
                      : 
    
    


  3. Windowsに繋ぐ。
    WINDOWSに繋ぐ場合は、繋ぐPC毎に以下の設定を行ってください。
    「コントロールパネル」→「ネットワーク」
    
      ◆TCP−IP         IPアドレス・・・・・・192.168.2.34(PCのアドレスを設定)
                             サブネットマスク・・・・255.255.255.0(Cクラスの場合は)確認してください、
    
      ◆microsoftネットワーク クライアント
                            クイックログオンを指定する
    
      ◆ユーザ情報           コンピュータ名・・・・・win1(自分のコンピュータ名)     
                            ワークグループ・・・・・WORKGROUP(定義したワークグループ名)
    
      ◆アクセス権の管理     共通レベルのアクセス管理を選択
    
    これでPCを再起動したら、ユーザID、とパスワードを聞きにきますので、正しく入れるとOKです。
    


トップへ戻る

◆sambaの起動

# /usr/local/samba/sbin/nmbd -D 

# /usr/local/samba/sbin/smbd -D 

# /etcr/rc.d/rc.samba     でsambaが即起動します。


トップへ戻る

前ページへ戻る


ご質問・お問い合わせ - 免責事項
Copyright (C) 2007 hero-island. All Rights Reserved.
ヒーローアイランド株式会社