安裝 samba 記錄

來源:互聯網
上載者:User

Linux系統:LFS 6.1 in vmware虛擬機器
軟體版本: samba-3.0.14a.tar.bz2

安裝過程

 tar xvf samba-3.0.14a.tar.bz2
 cd samba-3.0.14a\source
 ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --with-piddir=/var/run --with-fhs --with-smbmount 
 make
 install -v -m755 -d /var/cache/samba 
 make install 
 mv -v /usr/lib/samba/libsmbclient.so /usr/lib 
 ln -v -sf ../libsmbclient.so /usr/lib/samba 
 chmod -v 644 /usr/include/libsmbclient.h 
 install -v -m755 nsswitch/libnss_win{s,bind}.so /lib 
 ln -v -sf libnss_winbind.so /lib/libnss_winbind.so.2 
 ln -v -sf libnss_wins.so /lib/libnss_wins.so.2 
 if [ -f nsswitch/pam_winbind.so ]; then
   install -v -m755 nsswitch/pam_winbind.so /lib/security
  fi
 install -v -m644 ../examples/smb.conf.default /etc/samba 
 install -v -m644 ../docs/*.pdf /usr/share/samba
 cd ../..
 rm -rf samba-3.0.14a

 好了,裝完啦,測試一下smbmount
因為我是用虛擬機器裝的Linux系統,所以可以在主機的WINDOWS中共用一個目錄出來,共用目錄許可權指定為某個WINDOWS帳戶,然後

 mkdir ~/win_share
 smbmount //host_ip/my_share_dir ~/win_share -o "username=XXXX,password=YYYYY"

失敗,提示沒有 /etc/samba/smb.conf 檔案
檢查安裝過程,原來是前面 copy smb.conf.default 檔案時,沒有去掉後面的.default副檔名
 cp /etc/samba/smb.conf.default /etc/samba/smb.conf
再smbmount則成功(此時不需要配置smb.conf檔案的具體內容,那是smb伺服器才需要的)。

好,現在已經可以很方便的與訪問其它系統的檔案了。

接下來是配置smb服務

修改/etc/samba/smb.conf裡面的內容,根據檔案中的注釋就可以修改了
這裡有個比較簡單的方法,按這樣配置
[homes]
   comment = Home Directories
   path = %H
   browseable = yes
   writable = yes
   valid users = %S
   create mode = 0600
   directory mode = 0700
   locking = no

其中的 %S 會替換為 系統使用者名稱,%H 會替換為所對應的使用者主目錄。
則用不同linux系統的使用者訪問,系統自動化佈建為其使用者主目錄,如crazywill使用者,則訪問\\lfs-linux-ip\crazywill\ 以及 \\lfs-linux-ip\homes\ 就相當於 linux下的 /home/crazywill/ 目錄,擁有對使用者自己目錄下所有的檔案許可權。

修改完後,
 smbd -D
 nmbd -D   啟動
 ps -aux | grep smb
檢查不到有smbd進程運行

懷疑是 smb.conf 配置有問題
 testparm  
檢查設定檔內容

似乎沒問題才對
再繼續檢查 smb 狀態 和 記錄檔
 smbstatus

 cat /var/log/samba/smbd.log
檢查日誌
[2006/08/10 23:12:37, 0] smbd/server.c:main(798)
  smbd version 3.0.14a started.
  Copyright Andrew Tridgell and the Samba Team 1992-2004
[2006/08/10 23:12:37, 0] printing/pcap.c:pcap_cache_reload(149)
  Unable to open printcap file /etc/printcap for read!
不能讀取/etc/printcap 檔案
檢查當前環境確實沒有該檔案,因為現在沒有安裝印表機,先建立一個空檔案給它
 echo "" > /etc/printcap

再啟動,仍失敗,檢查日誌
[2006/08/10 23:18:11, 0] smbd/server.c:main(798)
  smbd version 3.0.14a started.
  Copyright Andrew Tridgell and the Samba Team 1992-2004
[2006/08/10 23:18:11, 1] auth/auth_util.c:make_server_info_sam(840)
  User nobody in passdb, but getpwnam() fails!

是使用者nobody 有問題,
檢查/etc/passwd 沒有該使用者,添加它,再啟動還是不行。
運行
 smbpasswd -x nobody
刪除nobody使用者,刪除失敗

真是有點莫名其妙,反覆操作了幾次後就成功了,不知道問題在哪裡。

搞定 nobody後,終於非常辛苦的啟動smbd進程成功了,檢查日誌可知。
慶祝一下。

用smbclient檢查一下samba配置正常了沒

 smbclient -L localhost -U crazywill
測試連接
提示輸入密碼,輸入LINUX本地帳號crazywill的密碼,錯誤。

反覆檢查,最後發現需要先運行
 smbpasswd -a crazywill  
設定 smb 登入使用者 crazywill 的密碼

之後再 smbclient 測試正常,
用windows 串連 \\lfs-linux-ip\crazywill
輸入使用者名稱 crazywill和剛設定好的密碼
正常登入

新增和修改目錄、檔案操作成功。

yeah.....

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.