linux安裝samba伺服器
『壹』 linux samba安裝使用教程
轉自 https://blog.csdn.net/u013836909/article/details/93386221
Samba是在Linux系統上實現的SMB(Server Messages Block,信息服務塊)協議的一款免費軟體。它實現在區域網內共享文件和列印機,是一個客戶機/伺服器型協議。客戶機通過SMB協議訪問伺服器上的共享文件系統。可以實現Windows系統訪問Linux系統上的共享資源
本安裝教程是基於Ubuntu 14.04實測的,在Ubuntu18.04上也實測可用。
1 更新軟體源列表
打開「終端窗口」,輸入 sudo su ->回車->」輸入當前用戶管理員密碼」->輸入」 apt-get update」->回車->回車,具體如下圖:
2 安裝Samba
打開"終端窗口",輸入 apt-get install samba samba-common –>回車–>輸入"y"–>回車–>安裝完成。如下圖,因為我已經安裝過了,所以沒有安裝的軟體資源了。
3 新建共享目錄並設置許可權
該共享目錄可自行創建,一般公司使用伺服器的話就會為您新建一個共享目錄,而私人電腦的話,我一般就把整個home目錄設置為共享目錄,方便Windows下訪問我的虛擬機上的文件。
1、打開"終端窗口",輸入 sudo mkdir /home/share –>回車–>共享目錄share新建成功。
2、輸入 sudo chmod 777 /home/share -R –>回車,這樣用戶就對共享目錄有了寫許可權。
4 修改Samba文件配置
Ubuntu上的Samba的配置文件為/etc/samba/smb.conf,該文件記錄相關的規則及共享信息,是Samba非常核心的配置文件,修改前建議備份一份。
1.備份Samba配置配置文件:
2.增加內容如下,首先在[global]下增加security項
3.其次在smb.conf文件的末尾添加如下配置信息並保存即可:
4.設置window系統登入共享文件夾的用戶名和密碼,其中用戶名必須為Ubuntu中的用戶。本例子中使用用戶「smbuser」,在該過程中需要二次輸入密碼。
5.重新啟動smb服務。
6.查看安裝samba服務的虛擬機的ip地址,windows下需要通過該ip地址訪問共享文件夾。
5 訪問共享名為myshare的共享目錄
在"運行"窗口中輸入"\192.168.88.11"–>回車–>雙擊打開myshare–>回車–>輸入用戶名和密碼–>回車–>訪問成功。
訪問成功:
『貳』 linux怎麼裝samba
centos配置samba伺服器,先yum安裝上,然後先從簡單的功能一點一點調試,把防火牆關了。
『叄』 linux怎麼安裝samba伺服器
首先解壓這個文件,
1,tar -xvfz samba-4.0.3.tar.gz(只需要打出sam這幾個字母然後按「Tab」建就可以聯想出完整的文件名字了)
2,cd samba-4.0.3
3, ./configure
4.make
5.make install
從你的截圖可以看得出你缺少了 make這個指令,也就是沒有安裝gcc
建議你掛上你的系統鏡像, 然後掛載在例如/mnt目錄下,然後去裡面找到gcc....rpm的包就全部安裝上就可以了。安裝方法是rpm -ivh xxx.gcc..rpm 然後再執行上面的步驟。只有把gcc安裝上,你才能安裝samba
『肆』 Linux下如何搭建SAMBA伺服器
1、相關的文件
samba-common samba伺服器的主文件
samba 伺服器端的軟體
samba-client 客戶端的軟體
redhat-config-samba 圖形界面的配置文件
samba-swat web配置工具
2、步驟
1)安裝SAMBA伺服器
(1)檢測是否安裝samba
#rpm -qa | grep samba
(2)安裝:將第一張光碟放入光碟機
#mount /mnt/cdrom
#cd /mnt/cdrom/RedHat/RPMS
#ls samba*.*
#rpm -ivh samba-common-2.2.7a-7.9.0.i386.rpm
#rpm -ivh samba-2.2.7a-7.9.0.i386.rpm
#rpm -ivh samba-client-2.2.7a-7.9.0.i386.rpm
#cd /
#umount /mnt/cdrom
#eject
2)設置samba的密碼文件
(1)成批用戶密碼文件的生成
#cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
(2)刪除一些無用的shell帳戶
#vi /etc/samba/smbpasswd
從1到9。
(3)設置目錄和文件的許可權
#chown root.root /etc/samba/smbpasswd
#chmod 500 /etc/samba
#chmod 600 /etc/samba/smbpasswd
#ll -d /etc/samba
(4)單個用戶設置samba密碼
#useradd wujianan
#passwd wujianan
#smbpasswd -a wujianan
3)啟動samba伺服器
#service smb start
#pstree | grep mbd
#smbclient -L localhost或者IP地址
4)配置samba的共享
#vi /etc/samba/smb.conf
[global]
workgroup = workgroup
server string = samba server
;hosts allow = 192.168.1. 192.168.2. 127.
printcap = /etc/printcap
load prints = yes
printing = cups
;guest account = pcguest
log file = /var/log/samba/%m.log
max log size = 0
安全選項
security = user(share)
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
;interfaces = 192.168.12.2/24 192.168.13.2/24
dns proxy = no
設置每個用戶主目錄共享
[homes]
comment = Home Directries
browseable = no 不允許瀏覽共享文件夾
writeable = yes 允許寫入
valid users = %s
create mode = 0664
directry mode = 0775
[printers]
comment = All prints
path = /var/spool/samba
browseable = no
printable = yes
[doc]
comment = doc
path = /home/doc
browseable = no
writeable = no或 read only = yes
guest ok = yes
示例:
要求:創建一個共享目錄,所有用戶都可訪問,許可權為只讀。
#vi /etc/samba/smb.conf
workgroup = workgroup
server string = samba server
netbios name = RH9
dos charset = cp936
unix charset = cp936
secrity = share
[read]
comment = read
path = /home/read
public = yes
guest ok = yes
read only = yes
保存退出
#mkdir /home/read
#service iptables stop
#service smb start
#testparm
\\ip地址
創建一個可寫的目錄,允許所有用戶可寫入。
[write]
comment = write
path = /home/write
public = yes
guest ok = yes
writeable = yes
保存退出
#mkdir /home/write
#chmod 777 /home/write
#service iptables stop
#service smb restart
為指定的用戶和組訪問samba伺服器
#useradd mehost
#passwd wujianan
#smbpasswd -a wujianan
#mkdir /var/samba/wujianan
#chown stu1.stu1 /var/samba/wujianan
#vi /etc/samba/smb.conf
security = user
[wujianan]
comment = wujianan
path = /var/samba/wujianan
valid users = wujianan
public = yes
writeable = yes
保存退出
#service smb restart
最簡單的電影伺服器的配置
#vi /etc/samba/smb.conf
workgroup = workgroup
server string = movies server
guest account = nobody
security = share
client code page = cp936
wins support = yes
[movies]
comment = movies
browseable = yes
writeable = no
path = /movies
guest ok = yes
read only = yes
保存退出
#mkdir /movies
#useradd admin -d movies
#passwd admin
#vi /etc/passwd
admin:x:0:500::/movies:/bin/bash
保存退出
#ntsysv
選擇smb和vsftp項
#service smb start
#service vsftpd start
#service iptables stop
『伍』 linux 操作 Samba伺服器設置
在Linux平台,以二進製程序包和源代碼兩種方式安裝samba伺服器,並整理相關配置文件,並給出基本應用操作。
步驟:
1.機器上已經存在的samba服務,版本為3.0.21b,這是通過使用rpm命令得到的。如下:
# rpm –qa | grep samba
Samba-client-3.0.21b-2
Samba-common-3.0.21b-2
2.將上面的samba-client-3.0.21b-2卸載。使用命令:rpm –e samba-client-3.0.21b-2。
3.用rpm –e samba-common-3.0.21b-2來卸載common,因為依賴關系,不成功。
4.下載二進製程序包:
samba-common-3.0.23c-4.i386.rpm,
samba-client-3.0.23c-4.i386.rpm,
samba-doc-3.0.23c-4.i386.rpm,
samba -3.0.23c-4.i386.rpm。
5.安裝這些程序包。分別使用命令:
rpm –Uvh samba-common-3.0.23c-4.i386.rpm
rpm –ivh samba-client-3.0.23c-4.i386.rpm
rpm –ivh samba-3.0.23c-4.i386.rpm
rpm –ivh samba-doc-3.0.23c-4.i386.rpm
使用選項Uvh來安裝common是因為原來的common沒有被卸載,因此應進行升級安裝(U)。
6.安裝完畢後,可以使用rpm –qa samba來確認。會輸出samba-3.0.24c-4。
7.下面開始對samba服務進行配置。
8.首先,修改/etc/samba/lmhosts文件。加入一行,為本機上的Windows系統IP地址和主機名。這樣才可以通過Windows來訪問Unix的samba服務。
9.創建目錄/export/sambadir作為共享目錄。
命令:mkdir –p /export/sambadir
chmod 777 /export/sambadir
10.修改/etc/samba/smb.conf文件。這是samba的配置文件。
Security = user
Log file = /var/log/samba/log.%m
Path = /export/sambadir
11.使用testparam來測試修改結果。
12.加入一個用戶,並修改其密碼。
13.使用chkconfig命令來設置在啟動級別5中啟動samba。命令如下:
Chkconfig –list | grep smb
Chkconfig –level 5 smb on
Chkconfig –list | grep smb
14.重新啟動網路服務:
/etc/rc.d/init.d/cups stop
/etc/rc.d/init.d/smb restart
15.然後就可以在Windows系統中通過12步中設定的用戶名和密碼來訪問Linux。
16.使用源代碼的安裝方式:下載samba-3.0.23c.tar.gz源代碼包,解壓。
Cd samba-3.0.23c/source
./autogen.sh
./configure –prefix=/usr –localstatedir=/var –with-configdir=/etc/samba –with-privatedir=/etc/samba –with-fhs –with-quotas –with-smbmount –enable-cups –with-pam_smbpass –with-syslog –with-utmp –with-swatdir=/usr/share/swat –with-shared-moles=idmap_rid –with-libsmbclient
Make
Make install
17.其餘步驟與7之後相同。
這是我實驗時寫的,平台是redhat 9
『陸』 linuxsamba安裝掛起問題
在嵌入式系統開發應用平台中,tftp、nfs和samba伺服器是最常用的文件傳輸工具,本文詳細的介紹一下Linux Samba伺服器安裝配置,感興趣的可以了解一下
在嵌入式系統開發應用平台中,tftp、nfs和samba伺服器是最常用的文件傳輸工具,tftp和nfs是在嵌入式Linux開發環境中經常使用的傳輸工具,samba則是Linux和Windows之間的文件傳輸工具。
samba是模仿Windows網上鄰居的SMB的通訊協議,將Linux操作系統「假裝成」Windows操作系統,通過網上鄰居的方式來進行文件傳輸的。
虛擬機版本:VMware10
Linux操作系統版本:Red Hat Enterprise Linux 5
Samba伺服器介紹
Samba是在Linux系統上實現SMB(Session MessageBlock)協議的一個免費軟體,以實現文件共享和列印機服務共享。
Samba伺服器組件
samba有兩個主要的進程smbd和nmbd。smbd進程提供了文件和列印服務,而nmbd則提供了NetBIOS名稱服務和瀏覽支持,幫助SMB客戶定位伺服器,處理所有基於UDP的協議。
Samba伺服器相關的配置文件
/etc/samba/smb.conf
這是samba的主要配置文件,基本上僅有這個文件,而且這個配置文件本身的說明非常詳細。主要的設置包括伺服器全局設置,如工作組、NetBIOS名稱和密碼等級,以及共享目錄的相關設置,如實際目錄、共享資源名稱和許可權等兩大部分。
/etc/samba/lmhosts
早期的 NetBIOS name 需額外設定,因此需要這個 lmhosts 的 NetBIOS name 對應的 IP 檔。 事實上它有點像是 /etc/hosts 的功能!只不過這個 lmhosts 對應的主機名是 NetBIOS name 喔!不要跟 /etc/hosts 搞混了!目前 Samba 預設會去使用你的本機名稱 (hostname) 作為你的 NetBIOS name,因此這個檔案不設定也無所謂。
/etc/sysconfig/samba
提供啟動 smbd, nmbd 時,你還想要加入的相關服務參數。
/etc/samba/smbusers
由於 Windows 與 Linux 在管理員與訪客的賬號名稱不一致,例如: administrator (windows) 及 root(linux), 為了對應這兩者之間的賬號關系,可使用這個檔案來設定
/var/lib/samba/private/{passdb.tdb,secrets.tdb}
管理 Samba 的用戶賬號/密碼時,會用到的資料庫檔案;
/usr/share/doc/samba-<版本>
這個目錄包含了 SAMBA 的所有相關的技術手冊喔!也就是說,當你安裝好了 SAMBA 之後,你的系統裡面就已經含有相當豐富而完整的 SAMBA 使用手冊了!值得高興吧! ^_^,所以,趕緊自行參考喔!
至於常用的腳本文件案方面,若分為伺服器與客戶端功能,則主要有底下這幾個數據:
/usr/sbin/{smbd,nmbd}:伺服器功能,就是最重要的許可權管理 (smbd) 以及 NetBIOS name 查詢 (nmbd) 兩個重要的服務程序;
/usr/bin/{tdbmp,tdbtool}:伺服器功能,在 Samba 3.0 以後的版本中,用戶的賬號與密碼參數已經轉為使用資料庫了!Samba 使用的資料庫名稱為 TDB (Trivial DataBase)。 既然是使用資料庫,當然要使用資料庫的控制指令來處理啰。tdbmp 可以察看資料庫的內容,tdbtool 則可以進入資料庫操作介面直接手動修改帳密參數。不過,你得要安裝 tdb-tools 這個軟體才行;
/usr/bin/smbstatus:伺服器功能,可以列出目前 Samba 的聯機狀況, 包括每一條 Samba 聯機的 PID, 分享的資源,使用的用戶來源等等,讓你輕松管理 Samba 啦;
/usr/bin/{smbpasswd,pdbedit}:伺服器功能,在管理 Samba 的用戶賬號密碼時, 早期是使用 smbpasswd 這個指令,不過因為後來使用 TDB 資料庫了,因此建議使用新的 pdbedit 指令來管理用戶數據;
/usr/bin/testparm:伺服器功能,這個指令主要在檢驗配置文件 smb.conf 的語法正確與否,當你編輯過 smb.conf 時,請務必使用這個指令來檢查一次,避免因為打字錯誤引起的困擾啊!
/sbin/mount.cifs:客戶端功能,在 Windows 上面我們可以設定『網路驅動器機』來連接到自己的主機上面。在 Linux 上面,我們則是透過 mount (mount.cifs) 來將遠程主機分享的檔案與目錄掛載到自己的 Linux 主機上面哪!
/usr/bin/smbclient:客戶端功能,當你的 Linux主機想要藉由『網路上的芳鄰』的功能來查看別台計算機所分享出來的目錄與裝置時,就可以使用 smbclient來查看啦!這個指令也可以使用在自己的 SAMBA 主機上面,用來查看是否設定成功哩!
/usr/bin/nmblookup:客戶端功能,有點類似 nslookup 啦!重點在查出 NetBIOS name 就是了
/usr/bin/smbtree:客戶端功能,這玩意就有點像 Windows 系統的網路上的芳鄰顯示的結果,可以顯示類似『靠近我的計算機』之類的數據, 能夠查到工作組與計算機名稱的樹狀目錄分布圖!
安裝Samba
首先確認一下自己的Linux是否安裝了Samba,使用命令:
[root@localhost ~]# rpm -qa | grep samba
其中:samba、samba-common、samba-client三個程序是必須的。
如果沒有安裝,有兩種方式可以安裝:
第一種方式:yum安裝
yum是一個集與查找,安裝,更新和刪除程序的Linux軟體。它運行在RPM包兼容的Linux發行版本上,如:RedHat、Fedora、SUSE、CentOS、Mandriva。
yum install -y samba
第二種方式:安裝包安裝
安裝包都在光碟里,首先需要掛載:
[root@localhost ~]# mount /dev/cdrom /mnt
這個時候,會出現一個問題:
mount: block device /dev/sr0 is write-protected, mounting read-only
提示信息說,虛擬機掛著光碟機光碟機時提示只讀。用以下命令可解決該報錯:
mount -o remount,rw /dev/cdrom /mnt
此時,我們會發現,原本空的文件夾/mnt現在多了很多的文件。
在/mnt/Server文件夾中,會能找到關於Samba的安裝包:
找到安裝包之後,就是安裝Samba了(只需要安裝自己沒有的那個就行了)。使用命令:
rpm samba-3.0.25b-0.el5.4.i386.rpm
rpm samba-client-3.0.25b-0.el5.4.i386.rpm
rpm samba-commons-3.0.25b-0.el5.4.i386.rpm
安裝完之後,再使用命令驗證一下是否安裝完成:
[root@localhost ~]# rpm -qa | grep samba
配置Samba
修改配置文件
samba伺服器最主要的配置文件其實只有一個,就是/etc/samba/samba.conf,這個配置文件可以分為兩個部分,一個部分是全局參數,一部分是共享資源相關參數。
#1.全局部分參數設置:
[global]
#與主機名相關的設置
workgroup = zkhouse <==工作組名稱
netbios name = zkserver <==主機名稱,跟hostname不是一個概念,在同一個組中,netbios name必須唯一
serverstring = this is a test samba server <==說明性文字,內容無關緊要
#與登錄文件有關的設置
log file = /var/log/samba/log.%m <==日誌文件的存儲文件名,%m代表的是client端Internet主機名,就是hostname
max log size = 50 <==日誌文件最大的大小為50Kb
#與密碼相關的設置
security = share <==表示不需要密碼,可設置的值為share、user和server
passdb backend = tdbsam
#列印機載入方式
load printer = no <==不載入列印機
-----------------------------------------------------------
#2.共享資源設置方面:將舊的注釋掉,加入新的
#先取消[homes]、[printers]的項目,添加[temp]項目如下
[temp] <==共享資源名稱
comment = Temporary file space <==簡單的解釋,內容無關緊要
path = /tmp <==實際的共享目錄
writable = yes <==設置為可寫入
browseable = yes <==可以被所有用戶瀏覽到資源名稱,
guest ok = yes <==可以讓用戶隨意登錄
也就是說,將上面「#2共享資源設置方面」加入到配置文件的最後即可。
添加用戶並設置密碼
設置賬號用於登錄samba伺服器,同時並設置密碼。具體命令:
[root@localhost ~]# useradd sambauser
[root@localhost ~]# smbpasswd -a sambauser
New SMB password:
Retype new SMB password:
重啟Samba伺服器
[root@localhost ~]# /etc/init.d/smb restart
如果這段命令無法運行,就是Samba沒有正確安裝的原因。
登錄Samba
在Windows和Linux網路都暢通的情況下,在Windows下登錄Samba伺服器。使用命令查看Samba的IP地址:
[root@localhost ~]# ifconfig
在Windows的運行,輸入\\223.3.119.170(Samba對應的IP地址):
這個時候會彈出登錄界面,直接輸入之前設置的登錄賬號和密碼就行了。
問題匯總及補充
之前Samba的安裝和配置都是一步一步來的,沒有什麼問題。但是很多情況下,就是最後在Windows的運行中,輸入了\\IP地址之後,沒有任何反應。這是最麻煩的地方,因為完全不知道是什麼原因導致的。下面提供幾個可能出問題的地方:
網路選擇
在配置Samba伺服器的時候,網路選擇為bridge橋連接。
這是因為:要保證Linux下的IP和Windows下的IP處於同一網段中,並且保證相互可以ping通。
怎麼驗證?
在Windows的命令行中,輸入命令ipconfig:
同時在Linux中輸入命令ifconfig(兩個命令不一樣,需要注意):
可以看到:兩個IP地址223.3.119.239和223.3.119.170之間前3個都是一樣的,只有最後一個不同,這就保證了在同一網段。如果前3位不同,可在Linux中使用命令:
[root@localhost ~]# ifconfig eth0 223.3.119.130
只需要保證只有最後一個不同即可。
接下來驗證Windows和Linux之間的ping通,在Windows命令行中輸入ping Linux的IP地址:
結果如果不是timeout,就代表兩者之間ping通。
防火牆問題
如果防火牆不關閉,Windows和Samba之間的連通可能會被阻擋。
Windows上關閉防火牆:控制面板->系統和安全->Windows防火牆->打開或關閉Windows防火牆;
Linux上關閉防火牆:
[root@localhost ~]# setenforce 0
[root@localhost ~]# service iptables stop
記得要重啟Samba伺服器。
許可權問題
可能會出現許可權不夠的問題,修改你想要的那個文件的許可權。
[root@localhost ~]# chmod 777 /home
無法訪問
如果用windows訪問samba,跳出以下對話框的錯誤:
無法訪問。您可能沒有許可權使用網路資源。請與這台伺服器的管理員聯系以查明您是否有訪問許可權。
不允許一個用戶使用一個以上用戶名與一個伺服器或共享資源的多重連接。中斷與此伺服器或共享資源的所有連接,然後再試一次……或者直接重啟Windows。
怎麼斷開連接(即退出Samba伺服器)呢?
在Windows的命令行中輸入:
net use * /delete /y
自動連接
使每次打開Linux自動運行smba伺服器:
在終端中輸入setup->system service->找到smb,按下空格,便可選中->退出完成(注意切換用tab鍵)。
『柒』 Linux實用工具-samba
Samba服務可以用於在linux主機之間共享文件,也可以在linux和windows之間共享文件。
給Windows客戶提供文件服務是通過samba實現的,而samba也是一套基於UNIX類系統、實現SMB/CIFS協議的軟體,作為UNIX的克隆,Linux也可以運行這套軟體。samba的文件服務功能效率很高,藉助Linux本身,可以實現用戶磁碟空間限制功能。本文基於Linux介紹Samba的配置和使用。
主要內容:
一、關於配置文件
二、關於配置和使用
三、其它
samba通過配置文件來進行各種控制,關於配置文件,下面給出一個大致的介紹。
samba的最重要配置文件就是"/etc/samba/smb.conf",它有三個重要的節:[global],[homes],[public]。一般來說本地的這個文件中都有對其內容的詳細注釋,這里列出一個完整的配置文件內容,並解釋如下。具體信息參見"man smb.conf"的輸出。
用於用戶映射的文件/etc/samba/smbuser內容大致如下:
亂碼情況:
為了防止共享時出現中文目錄亂碼的情況,可能需要為smb.conf的[global]段添加如下幾行:
這里,其中根據你的local,UTF-8 有可能需要改成 cp936。
這里介紹如何配置samba服務以及使用它,為便於查閱,先給出一個最簡的配置方式,後面會給出關於配置和使用相對具體的內容。 以下內容,都是在CentOS release 5.5 (Final)上面實踐的結果,並假定配置samba的機器ip地址是10.1.2.213。
這里,如果只是想要搭建一個可以工作的samba伺服器,那麼可以按照如下步驟配置:
這樣,我們可以看到機器上面已經安裝了samba,可以進行後面的配置了。如果你的機器上面沒有相應的軟體包,那麼需要使用"yum install samba.i386"之類的命令安裝,默認來說系統都將這個服務安裝了的。
編輯之後的文件內容如下:
這里需要注意,不要將mysamba目錄設置到 /home 下的某個子用戶目錄中,這樣會導致目錄無法通過其他的機器訪問到。
這樣,外部就可以訪問這個目錄了。注意首先在本地機器上將這個目錄的讀寫許可權打開,這樣外面才能訪問。
這樣剛才的配置可以生效。
在文件瀏覽器的位置欄輸入: smb://10.1.2.213
這樣,將看到一個目錄"public1"就是那個smb.conf中設置的"[public1]"組名,進入"public1"就可以看到內容了,內容實際就是伺服器上面的/home/mysamba路徑下面的內容。
在文件瀏覽器的位置欄輸入: \\10.1.2.213
這樣,將看到一個目錄"public1"就是那個smb.conf中設置的"[public1]"組名,進入"public1"就可以看到內容了,內容實際就是伺服器上面的/home/mysamba路徑下面的內容。
總之兩步,一個是修改"/etc/samba/smb.conf"設置共享目錄,一個是運行"/etc/init.d/smb restart"讓設置生效。
配置samba可以控制哪些目錄可以訪問,以及誰可以訪問,以什麼許可權訪問等等。我們可以使用圖形化的工具配置,方法是運行"#system-config-samba"命令或者通過菜單"系統-系統管理-Samba",方法很簡單就不多說了。還可以通過修改配置文件進行配置,這里重點介紹修改配置文件的方法,如下。
修改配置文件如下:
這里,workgroup表示工作組名;server string表示伺服器名(名稱自定);netbios name是對伺服器的描述;hosts allow填入順序訪問的ip段,用空格分開,如果不設置則使用[global]中的,如果[global]中也沒有,就表示允許任何ip訪問;security表示訪問許可權,訪問許可權由低到高有三種:share、user和server。其中share安全級別最低,user模式要求連接時輸入用戶名和口令。具體支持的欄位,以及每個欄位的含義在配置文件的注釋中都有詳細的說明,或者可以查看"man smb.conf"文檔說明。
以上配置可知,設置了個共享目錄:public1,public2,public3,且public3共享目錄只有quietheart和lv-k用戶可以訪問。
配置之後,重新啟動samba:
這樣剛才的配置可以生效。
這里,添加帳號和修改密碼都用這個smbpasswd命令。如果想要添加samba的網路訪問帳戶,首先必須保證系統中有相應的帳戶名稱,如果沒有則需要使用"#useradd quietheart"建立一個,否則使用這個smbpasswd添加用戶的時候,會出錯誤。 要注意,雖然samba的用戶必須是本地機器的用戶,但是samba的登錄密碼可以和本機登錄密碼可以不一樣,上面只是為系統增加了quietheart這個用戶,卻沒有給用戶賦予本機登錄密碼,因為我們只用這個用戶來遠程samba訪問,不想用它來做為一個本地登陸帳號,所以這個用戶將只能從遠程經過samba訪問,不能從遠程登錄本機。
這個功能沒太大必要,因為samba中的帳戶,一定就是系統中的某個帳戶,雖然密碼不一樣,所以可以查看/etc/passwd來得知所有系統帳號進而知道samba可能包含的用戶帳號。
這里,刪除命令就是將前面添加命令的-a改成-x了。
通過smbclient工具,可以實現在命令行下訪問samba的目的,使用smbclient登陸samba之後,可以像ftp服務那樣進行各種命令操作。
參考資料:
『捌』 linux怎麼安裝samba伺服器
你使用的是什麼發行版?是centos么?如果是的話就跟隨以下我的方法來設置吧。
samba這款軟體應用確實非常廣泛,同時也為linux和windows之間文件傳輸提供了一個非常輕松的方式,同時它的安裝方法也是非常簡單的,我的方法適用於centos6.8及其以前的系統。
1.首先,看看系統裡面有沒有裝samba,這是最關鍵的一步,不然接下來可能會出問題。默認情況下,centos系統在默認安裝中應該已經安裝了Samba服務包的一部分 。
rpm-qa|grepsamba//默認情況下可以查詢到兩個已經存在的包:
samba-client-3.0.33-3.7.el5
samba-common-3.0.33-3.7.el5
2.上網找找samba主rpm包。
不過我這里先前就已經找過一個包,在伺服器上執行wget下載就好了。
[root@chunming-pc`]#wgetftp://195.220.108.108/linux/fedora-secondary/releases/23/Everything/s390/os/Packages/s/samba-4.3.0-0.1.rc4.fc23.s390.rpm
然後下載完成之後使用以下命令安裝即可(例如我這里下載的是samba-4.3.0-0.1.rc4.fc23.s390.rpm)
[root@chunming-pc`]#rpm-ivhsamba-4.3.0-0.1.rc4.fc23.s390.rpm
然後安裝完成之後就是需要修改配置文件了。
找到/etc/samba/smb.conf,打開它,然後把這段寫入smb.conf中
[global]
workgroup=LinuxSir
netbiosname=LinuxSir05
serverstring=LinuxSambaServerTestServer
security=share[linuxsir]
path=/opt/linuxsir
writeable=yes
browseable=yes
guestok=yes
[global]這段是全局配置,是必段寫的。其中有如下的幾行;
workgroup 就是Windows中顯示的工作組;在這里我設置的是LINUXSIR (用大寫);
netbios name 就是在Windows中顯示出來的計算機名;
server string 就是Samba伺服器說明,可以自己來定義;這個不是什麼重要的;
security 這是驗證和登錄方式,這里用了share ;驗證方式有好多種,這是其中一種;另外一種常用的是user的驗證方式;如果用share呢,就是不用設置用戶和密碼了;
[linuxsir] 這個在Windows中顯示出來是共享的目錄;
那麼path = 可以設置要共享的目錄放在哪裡;
writeable 是否可寫,這里設置為可寫;
browseable 是否可以瀏覽,可以;可以瀏覽意味著,在工作組下能看到共享文件夾。如果不想顯示出來,那就設置為 browseable=no,guest ok 匿名用戶以guest身份是登錄;
之後就是需要建立相應目錄並授權:
[root@chunming-pc~]#mkdir-p/opt/linuxsir
創建之後,會發現所屬用戶和組是root,只需要chown 將對應的目錄所屬改成samba這個軟體的用戶就可以了。
然後到現在配置就完成了,把服務起來iptables開放埠就可以給外網訪問了。
『玖』 如何在linux上安裝配置samba伺服器
1、首先需要登入安裝了Linux系統的計算機,安裝Samba。Fedora發行版一般使用yum工具安裝Samba伺服器,可以使用「rpm -q samba」查詢Samba伺服器是否已經安裝,當然,也可以直接使用「yum install samba」安裝Samba伺服器。如果Samba已經安裝,yum會給出提示,否則按照步驟,輸入「y」就可以直接下載安裝Samba伺服器了。2、安裝完成之後,需要查看一下Samba是否已經加入到自啟動服務。使用「/sbin/chkconfig | grep smb」和「/sbin/chkconfig | grep nmb」命令可以查看smb和nmb是否加入到系統服務。(SMB是Samba共享服務,nmb是NetBIOS服務,為配合Windows使用,他們兩個服務都要加入到系統服務中)。然後再使用「/sbin/service smb status」和「/sbin/service nmb status」查看服務是否已經啟用。
3、接下來就要配置samba伺服器了。編輯修改「/etc/samba/smb.conf」,設置共享和認證參數。如圖就是我在用的Samba用戶共享典型配置文件。編輯修改完成之後,可以使用「testparm /etc/samba/smb.conf」驗證配置文件的有效性,以免因配置文件錯誤而導致Samba服務無法啟動。
4、驗證OK的話,接下來就是添加Samba共享用戶了,使用「/usr/bin/smbpasswd -a <用戶名稱>」的方式添加Samba共享用戶,並為每個用戶設置Samba共享認證的密碼。
5、到這里基本上Samba伺服器配置就完成了,如果上述步驟中smb和nmb服務沒有自動添加到系統服務中,可以使用「/sbin/chkconfig --level 2345 smb on」和「/sbin/chkconfig --level 2345 nmb on」將其加入到系統服務中,其中2345是Linux的運行級別,一般都不會超出這幾個運行級別。然後我們就可以使用「/sbin/service smb restart」和「/sbin/service nmb restart」重啟服務了。
6、重啟完成之後,Windows就可以訪問用戶共享了。在Windows資源管理器輸入「\\共享IP地址\共享用戶」,就可以訪問用戶自己目錄下的全部文件了。
7、為了測試共享許可權,我們進入用戶共享目錄,嘗試在Windows資源管理器中創建一個「test」目錄。
8、回到Linux的用戶目錄,我們就可以看到,Windows和Linux查看到的用戶共享目錄是一致的。(你可能覺得看到的文件和目錄說不一致,這是因為我的Windows設置了顯示隱藏文件和文件夾的緣故。)