?? smb-howto.txt
字號:
SMB HOWTO 作者: David Wood, [1]dwood@plugged.net.au譯者: J.S. Lin, [2]r6921068@ms.cc.ntu.edu.tw v1.0, 10 August 1996 _________________________________________________________________ 這是 SMB HOWTO {如何使用 SMB}. 這文件描述在 Linux 上如何使用 Session Message Block (SMB) protocol{協定}, 也叫做 NetBIOS 或 LanManager protocol. _________________________________________________________________ 1. 介紹2. 進一步資訊3. 安裝4. 執行這兩個 daemon5. 一般組態設定 (/etc/smb.conf)6. 分享 Linux 磁碟給 Windows 機器7. 分享 Windows 磁碟給 Linux 機器8. 分享 Linux 印表機給 Windows 機器9. 分享 Windows 印表機給 Linux 機器10. 版權11. 感激 _________________________________________________________________ 1. 介紹 這是 SMB HOWTO {如何使用 SMB} . 這文件描述在 Linux 上如何使用 Session Message Block (SMB) protocol, 也叫做 NetBIOS 或 LanManager protocol. 本文件的維護者是 David Wood ( [3]dwood@plugged.net.au). 再者,修改或修正 可以寄到那,以便下一版包涵進去. SMB protocol 被使用在 Microsoft Windows 3.11, NT 和 95 用來分享磁碟及印 機. 使用 Andrew Tridgell 所做的 Samba 工具套件, UNIX (包含 Linux) 機器 能分享磁碟與印表機給 Windows 主機. 吾人使用 Samba 有四樣東西可以做: 1. 分享 linux 磁碟給 Windows 機器. 2. 分享 Windows 磁碟給 linux 機器. 3. 分享 linux 印表機給 Windows 機器. 4. 分享 Windows 印表機給 linux 機器. 這些東西都已包含在本文件中. Disclaimer: procedures 和 script 要嘛對作者是可以正常運作的,或要嘛由那 些(procedures和script)的提供者報告可以正常運作. 以在這□的資訊做不同的 設定可能會不能正常運作.如果你遭遇類似的困境,你可以 e-mail 給作者,提出建 議來改進本文件, 但作者并不作任何保證.你預期什麼呢? 作者畢竟只是個顧 問..... 2. 進一步資訊 這個 HOWTO 設法去解釋如何設定基本的 SMB檔以及列印服務在 linux 機器上. Samba 是個非常復雜且完整的包裝. 在這個地方沒有要設法去復制所有的 Samba 文件. 進一步資訊,請看以下文件: * Samba 文件, 可取得於 Samba 發行套件{distribution}的部分. 此發行套件 可取得在: [4]ftp://nimbus.anu.edu.au/pub/tridge/samba/ * The linux Printing HOWTO. * The Print2Win Mini-HOWTO. 3. 安裝 最新 Samba 的原始程式可以取得自: [5]ftp://nimbus.anu.edu.au/pub/tridge/samba/ 然而,如果已安裝 linux 的 Redhat 版本,你可以使用軟體套件{package} 來安裝 它.有些其他版本也包含 Samba 的binaries{二元檔程式}. 以下兩個 daemon{管理精靈} 對 Samba 軟體套件 是必要的. 它們一般是被安裝 在 /usr/sbin ,而可在開機時,從系統起動的 scripts或inetd來執行. script的 例子被展示在 [6]執行 Daemons. _________________________________________________________________ smbd (The SMB daemon) nmbd (提供 NetBIOS nameserver 的支援給 clients) _________________________________________________________________ 一般而言,以下的 Samba 的 binaries 被安裝在 /usr/bin, 雖然說它的位置是可 選擇性. _________________________________________________________________ smbclient (一種供給 UNIX 機器用的 SMB client{程式}) smbprint (一種 script 用在列印於 SMB 主機{host}上的列表機) smbprint.sysv (同上, 但是提供給 SVR4 UNIX 機器用的) smbstatus (列出對當地主機之目前 SMB 連結情況) smbrun (一種 'glue' script 用來簡易地執行應用程式於 SMB 主機) _________________________________________________________________ 再者,一種叫 'print' 的 script 被包函在本 HOWTO 之中, 其用來當作一種有用 的 front end{前端介面} 給 smbprint script用. Samba 軟體套件是簡易安裝的.簡單地從上述的位址取得原始碼, 且閱讀在發行套 件中的 README 檔案. 在發行套件中也有一個 docs/INSTALL.txt 檔提供一個簡 單的逐步安裝指示. 接著安裝後, 把 daemons 放到 /usr/sbin 而 binaries 放到 /usr/bin. 而 man pages{手冊頁} 擺在 /usr/local/man. 當你在做 Samba 軟體套件, 你在 Makefile 中會有記載組態檔,smb.conf,的位 置. 這一般是在 /etc下, 但可以把它擺到你喜歡擺的任意位置. 對於這些使用方 法{directions}, 我們將假設你記載組載檔位置成 /etc/smb.conf, log 檔位置 為 log file = /var/log/samba-log.%m ,而 lock 目錄為 lock directory = /var/lock/samba. 安裝組態{configuration}檔, smb.conf. 去 Samba 所在的的目錄. 看一下在其 子目錄 example/simple 而且讀一下 README 檔. 復制在那個目錄下的 smb.conf 檔到 /etc 下. 注意! 如果你有一 linux 發行套件已安裝好 Samba, 你也許已有 Samba 組態檔在 /etc 下. 或許你應該從那個檔開始. 如果你不想把組態檔放在 /etc 目錄下,可以把它擺在你想要擺的地方,然後在 /etc 下做一下 symlink{符號連結}: _________________________________________________________________ ln -s /path/to/smb.conf /etc/smb.conf _________________________________________________________________ 4. 執行這兩個 daemon 這兩個 daemon 是 /usr/sbin/smbd 和 /usr/sbin/nmbd. 你可以執行 Samba daemon 從 inetd 或當成單獨的程序. 如果你正設定一個永久 檔案伺服器,你應該從 inetd 來執行,所以如果他們死掉,那將重新開始.如果你只 是偶爾想要使用 SMB 伺服器,或者用系統管理來輔助,當你需要時,你可以藉由使 用 /etc/rc.d/init.d script,或甚至直接手動的. 要從 inetd 來執行 daemon , 請放以下幾行在 inetd 組態檔, /etc/inetd.conf: ______________________________________________________________ # SAMBA NetBIOS services (for PC file and print sharing) netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd ______________________________________________________________ 然後下指令以便重新啟動 inetd daemon : _________________________________________________________________ kill -HUP 1 _________________________________________________________________ 要從系統啟動的 script 來執行 daemon, 請把以下的 script 置於一個叫做 /etc/rc.d/init.d/smb 檔, 而且 symbolically link 到注釋{comments}所說明 的檔案: ______________________________________________________________ #!/bin/sh # # /etc/rc.d/init.d/smb - starts and stops SMB services. # # The following files should be synbolic links to this file: # symlinks: /etc/rc.d/rc1.d/K35smb (Kills SMB services on shutdown) # /etc/rc.d/rc3.d/S91smb (Starts SMB services in multiuser mode) # /etc/rc.d/rc6.d/K35smb (Kills SMB services on reboot) # # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 # See how we were called. case "$1" in start) echo -n "Starting SMB services: " daemon smbd -D daemon nmbd -D echo touch /var/lock/subsys/smb ;; stop) echo -n "Shutting down SMB services: " killproc smbd killproc nmbd rm -f /var/lock/subsys/smb echo "" ;; *) echo "Usage: smb {start|stop}" exit 1 esac ______________________________________________________________ 5. 一般組態設定 (/etc/smb.conf) 在 linux (或其他 UNIX機器)上的 Samba 組態設定是被單一檔案, /etc/smb.conf ,所控制. 這個檔決定你想要哪個系統資源分享給外面世界以及你 想對他們做什麼限制. 因為以下章節將會處理分享 linux 磁碟與印表機給 Windows 機器, 本小節所展 示的 smb.conf 檔盡量是你所能取得較簡單的, 它只是以介紹性為目的. 目前還不要擔心細節部分. 後面的章節將會介紹主要的概念. 在檔案中的每的段落{section}會有個段落標頭開始, 其標頭像是 [global], [homes], [printers] 等等. [global] 段落定義一些變數, 而 Samba 將用來定義於所有資源之分享. [homes] 段落允許遠端使用者來存取在當地(linux)機器上之他們的(且只有他們 的) home directories{家目錄}. 也就是, 如果一個 Windows 使用者從他們的 Windows 機器要設法連接到這個分享, 他們將是連接到他們自己個人的 home directiory. 要做這樣事情,所要注意的是,他們必須在linux box上有個帳號. 以下的 smb.conf 檔案樣本允許遠端使用者來用當地機器上他們的 home directories 而且寫到一個暫存的目錄. 對一個 Windows 使用者,要想看到這些 分享, linux box 必須是在區域網路{local network}內. 然後,使用者簡單地從 Windows File Manager 或 Windows Explorer 連接到網路磁碟. 在以下段落要注意的是, 對這個檔之額外項目將會用來允許更多資源被分享. ______________________________________________________________ ; /etc/smb.conf;; Make sure and restart the server after making changes to this file, ex:; /etc/rc.d/init.d/smb stop; /etc/rc.d/init.d/smb start[global]; Uncomment this if you want a guest account; guest account = nobody log file = /var/log/samba-log.%m lock directory = /var/lock/samba share modes = yes[homes] comment = Home Directories browseable = no read only = no create mode = 0750[tmp] comment = Temporary file space path = /tmp read only = no public = yes ______________________________________________________________ 6. 分享 Linux 磁碟給 Windows 機器 以上所展示的 smb.conf 樣本檔, 分享 linux 磁碟給 Windows 使用者是很容易 的. 然而, 像 Samba 其他的東西, 你可以控制到很大的程度. 以下有些例子 : 為了分享目錄給大家使用, 就建立個類似上述 [tmp] 段落, 亦即加入像這個的東 西到 smb.conf: ______________________________________________________________ [public] comment = Public Stuff path = /home/public public = yes writable = yes printable = yes ______________________________________________________________ 為了使以上目錄供大眾可讀取,但只有群組成員{group staff}可寫入,請修改其項 目像這樣: ______________________________________________________________ [public] comment = Public Stuff path = /home/public public = yes writable = yes printable = no
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -