samba文件共享服務可以讓linux和linux系統、linux和windows系統之間共享文件
服務查詢
默認情況下,Linux系統在默認安裝中已經安裝了Samba服務包的一部分,為了對整個過程有一個完整的了解,在此先將這部分卸載掉。使用命令
rpm -qa | grep samba,默認情況下可以查詢到兩個已經存在的包:
samba-client-xxx-xxx
samba-common-xxx.xxx
卸載Samba
用rpm -e 將兩個包卸載掉。對於samba-common-xxx.xxx,因為與其它rpm包之間存在依賴關系,所以必須加參數-f和--nodeps,-f是指強制,--nodeps是指不檢查依賴關系,具體完整命令為:
rpm -e samba-common-xxx -f --nodeps
rpm -e samba-client-xxx -f –nodeps
掛在鏡像文件
因為安裝samba你需要下載對應的安裝包,一般系統盤就有這些軟件,所以可以直接掛載上去
mount -o loop /home/rhel-server-6.2-x86_64-dvd.iso /media/OS
這樣就將系統盤掛載到指定的OS目錄了,在OS目錄下的Packages下有很多安裝包可以使用。
安裝Samba
用以下命令安裝:
rpm -ivh samba-xxx.rpm -f --nodeps
rpm -ivh samba-client-xxx.rpm -f --nodeps
rpm -ivh samba-common-xxx.rpm -f --nodeps
安裝完成后,使用命令rpm -qa | grep samba進行查詢,發現搭建samba服務器所依賴的所有服務器都已經安裝好了即可。
安裝完成后配置/etc/samba/smb.conf配置文件,你可以備份原來的配置,把下面的配置覆蓋當前配置即可:
[global]
workgroup=takecarnetbios name=Linux-108.12server string=Linux Samba Server TestServer#security=sharesecurity=user
map to guest=Bad User[takecar]path=/opt/takecar
writable=yesbrowseable=yesguest ok=yes以上就是配置匿名用戶共享目錄/opt/takecar
其中writable是寫入權限、browseable是瀏覽權限、guest是貴賓用戶
建立相應目錄並授權
[root@localhost ~]# mkdir -p /opt/linuxsir
[root@localhost ~]# id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
[root@localhost ~]# chown -R nobody:nobody /opt/linuxsir
注釋:關於授權nobody,我們先用id命令查看了nobody用戶的信息,發現他的用戶組也是nobody,我們要以這個為准。有些系統nobody用戶組並非是nobody ;
啟動smbd和nmbd服務器
[root@localhost ~]# smbd
[root@localhost ~]# nmbd關閉和查詢服務
pkill smbd
pkill nmbd
pgrep smbd
pgrep nmbd
如果啟動后不能訪問可能是防火牆原因,關閉防火牆
service iptables stop
chkconfig iptables off
設置服務開機啟動 ntsysv命令可以進入圖形界面設置,如果windows不能建立linux的共享目錄可能是window中的某個服務原因。
直接用進程殺死程序
ps -ef|grep smb
kill -9 pid #pid 為相應的進程號
#直接查看指定端口的進程pid
netstat -anp|grep 9217