Linux服務之Samba服務篇


Samba服務 桑巴Smb是基於cs架構

作用:用於跨平台進行文件共享

優點:兼容性好,較為安全(具備身份驗證)

缺點:僅限內網環境使用

應用:一般在辦公環境下使用

rz 也是一種可以在Windows和Linux操作系統之間進行文件共享的命令,只不過傳輸文件較小。

一、實現單用戶共享文件

步驟:

1、安裝

# yum -y install samba

2、配置(愛配不配)(默認可用,不需要配置)

# vim /etc/samba/smb.conf

3、啟動

第一次啟動# systemctl start smb 

修改配置文件后重啟服務# systemctl restart smb

3.5、添加用戶

useradd USERNAME

smbpasswd -a USERNAME

4.1windows訪問

win+R打開運行窗口,輸入兩個反斜線加上samba服務器的地址。輸入你的用戶名和密碼即可

4.2、掛載(Linux系統之間)

# mount -t cifs -o username=USERNAME,password=PASSWORD //ServerIP/ShareDIR /LocalDIR

5、測試

在Windows系統下刪除遠程連接:

net use * /delete 

擴展:

如需實現開機自動掛載,需要修改/etc/fstab並添加:

 //ServerIP/ShareDIR/MountDIRcifsusername=USERNAME,password=PASSWORD00

二、實現多用戶共享文件

1、配置相關的配置文件

# yum /etc/samba/smb.conf

配置文件內容:

[nidaye]               #文件共享訪問用戶看到的目錄名稱

              comment = abcdef            #共享目錄描述,可以隨意填寫

              path = /nimei              #共享目錄(本機實際目錄名稱)路徑,需要絕對路徑

              write list = a b c d             #可寫入的用戶名單,多個用戶使用空格隔開

              read only = yes/no             #是否只讀

              writeable = yes/no            #是否可寫

             valid users = A B C D              #可訪問的用戶,多個用戶使用空格隔開

              browseable = yes/no         #(瀏覽,閱讀)是否可顯

              directory mask = 0775            #創建目錄默認權限

              create mask = 0664           #創建文件默認權限

              guest ok = yes/no              #是否(不)需要二次驗證(yes為不需要)

              public = yes/no           #是否(不)需要二次驗證(yes為不需要)

2smbclient可以查看USERNAME的所共享的目錄或文件

smbclient -U USERNAME -L 服務端IP地址

                     --user             --list  

三、創建Samba服務的第二種方法

1、下載安裝

2、修改配置文件

vim /etc/samba/smb.conf 

[ren]   
        path = /ren
        public = yes
         read only = no
3、重啟Samba服務

systemctl restart smb

4、創建普通用戶及Samba用戶 

useradd ryz

pdbedit -a -u ryz 

-a -create 創建Samba用戶

-u -user=USER 使用已有的用戶名 

 5、給共享文件的其他人增加讀寫權限

 chmod -R a+w /ren

 6、在Windows系統查看共享文件 

按下win+R進入運行界面,輸入:\\192.168.11.3 

 7、映射網絡驅動器 

在windows系統中進入Samba共享文件夾后,右擊文件夾,選擇“映射網絡驅動器”,確定;這樣的話,就可以在“我的電腦”下的“網絡位置”找到該共享目錄,以后訪問的話就不用在運行界面輸入相關命令了。

遇到的問題:

1、掛載時遇到以下問題導致掛載不上 

mount: //192.168.11.3/ryz 寫保護,將以只讀方式掛載

mount: 無法以只讀方式掛載 //192.168.11.3/ryz

2、解決辦法:

# mount -o remount,rw /

可以參考mount相關知識:

mount 命令  [-t 文件系統] [-L 卷標名] [-o 特殊選項] 設備文件名 掛載點

       -l  查詢系統中已經掛載的設備,-l 會顯示卷標

       -a  依據配置文件/etc/fstab的內容,自動掛載

       -t  系統文件,加入系統類型指定掛載類型,可以ext3ext4 iso9660等系統文件

       -L  卷標名:掛載指定分區,而不是設備文件名掛載

       -o  特殊選擇:可以指定掛載額外選項

       atime/noatime 更新訪問時間/不更新訪問時間。訪問分區時,是否更新文件的訪問時間,默認更新

       async/sync    異步/同步 默認異步

       auto/noauto   自動/手動  mount -a命令執行時,是否會自動安裝/etc/fstab 文件內容掛載,默認自動

       defaults      定義默認值,相當於rwsuiddevexecautonouserasync這七個選擇

       exec/noexec   執行/不執行,設定師傅允許文件系統中執行可執行文件,默認是exec允許

       remount       重新掛載已經掛載的文件系統,一般用於修改特殊權限

       rw/ro         讀寫/只讀,文件系統掛載時,是否有讀寫的權限,默認rw

       suid/nosuid   具有/不具有SUID權限,設定文件系統是否具有SUID權限,默認具有

       user/nouser   允許/不允許普通用戶掛載,設定文件系統是否允許普通用戶掛載,默認不允許,只有root可以掛載分區

       usrquata      寫入代表文件系統支持用戶磁盤配額,默認不支持

       grpquata      寫入代表文件系統支持組磁盤配額,默認不允許

 eg mount -o  remount,noexec /home   /home目錄下不能執行可執行文件

拓展:兩種防火牆的關閉方式

1、關閉firewalld防火牆

systemctl status firewalld 查看狀態

systemctl stop firewalld 臨時關閉

systemctl disable firewalld 永久關閉

2、關閉selinux防火牆

getenforce 查詢防火牆的狀態:

enforcing(強制殺死) permissive(警告) disabled(關閉防火牆)

setenforce 0 臨時關閉

配置文件:

/etc/selinux/config

SELINUX=disabled #永久關閉

reboot 重啟系統生效


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM