日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux笔记:文件共享服务Samba基础使用

發布時間:2023/12/18 linux 60 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux笔记:文件共享服务Samba基础使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 目的
  • 基礎使用
    • 軟件包安裝
    • 獨立服務器
    • 客戶端
  • 總結

目的

linux中目前還比較常用的文件共享服務主要就是NFS和Samba,但其實NFS一般也就linux間用用,Samba通常是一個更加好的選擇,可以方便的在linux和windows間進行文件共享。(現在還有一種WebDav也不錯)

下面內容將以Raspbian進行介紹,同系列的發行版(Debian、Ubuntu、Minit、Deepin等)都可以參考下面的方式,不同系類的可能安裝方式或包名稱有所差異。我這里演示中Samba版本是4.9.5-Debian,不同版本下可能也會有所差異。

基礎使用

軟件包安裝

在Raspbian中可以使用下面命令安裝Samba軟件包:
sudo apt install samba smbclient

如果沒有發現軟件包請嘗試更新:
sudo apt update

后面使用中有問題可以嘗試用下面命令:
sudo apt install acl attr samba samba-dsdb-modules samba-vfs-modules winbind libpam-winbind libnss-winbind libpam-krb5 krb5-config krb5-user

獨立服務器

Samba當服務器使用時可以工作在多種模式下,最常用的就是作為獨立服務器(standalone server)使用,這里也將以此作為基礎進行介紹。Samba當服務器使用最主要的就是對 /etc/samba/smb.conf 文件進行配置,默認情況下該文件大概是這個樣子的:

# 以#開頭的內容是注釋文本 # 以;開頭的內容是注釋掉的語句# [global]后面包含的語句為全局參數配置 [global]# 作為獨立服務器使用server role = standalone server# 保持samba和unix密碼同步unix password sync = yes# 密碼錯誤的訪問將被拒絕;如果用戶名也不存在則會被當作是訪客map to guest = bad user# [homes]節點啟用默認設置下每個用戶都可以且僅可以看到和操作自己的home目錄 # 這臺設備中名為naisu的用戶可以在其它設備中用 \\本機IP\naisu的方式遠程訪問自己的home目錄 ;[homes] ; comment = Home Directories ; browseable = no ; read only = yes ; create mask = 0700 ; directory mask = 0700 ; valid users = %S# [printers]分享打印機,用不到的話這些內容都可以刪掉或用;注釋掉 [printers]... # [print$]分享打印機驅動,用不到的話這些內容都可以刪掉或用;注釋掉 [print$]

默認的smb.conf文件注釋很詳細,基本上只要能了解 以 # 和 ; 開頭的都是注釋以 [global] 起始的段落都是全局參數配置 , 剩下的 以 [] 標簽為首的段落是一條分享規則 這三條規則就行。我們想要分享目錄也只要編寫一個以 [] 標簽為首的段落就行。

使用下面配置是一個最簡單的Samba共享示例:

[global]# 密碼錯誤的訪問將被拒絕;但如果用戶名也不存在則會被當作是訪客map to guest = bad user# 客戶端通過地訪問時顯示的目錄名稱為guest [guest]# 指定要共享的目錄路徑path = /home/pi/Desktop/guest/# 可讀可寫read only = no# 可以匿名訪問guest ok = yes

每次更改smb.conf文件后可以使用 testparm 指令測試該文件的參數是否符合規范,以及顯示文件中起效的參數

上面配置中配置了可匿名登陸并且可寫入的權限,但讀寫權限還和目錄本身的權限有關:

完成設置以后可以使用 smbd 讓Samba服務套用更改

上面就是Samba最基本的使用了,隨便輸個用戶名就可以訪問了,也不需要密碼,如果只是自己的內網中自己用用這樣就可以了,如果是在公共環境的話通常來說最好還是設置上賬號密碼這些。

使用Samba分享目錄時如果需要設置訪問的賬號,這個賬號首先得是這臺設備上已經有的賬號,使用 sudo smbpasswd -a 命令可以將已有的用戶添加到Samba數據庫

使用下面配置是一個最簡單的需要賬號密碼的Samba共享示例:

[global]# 默認值never,必須使用賬號密碼訪問 ; map to guest = never[share]path = /home/pi/Desktop/share/read only = no


上面兩個是最簡單的例子了,實際使用中我們可能還會對不同用戶設置不同的共享目錄等,比如下面這樣:

[global]map to guest = bad user[guest]path = /home/pi/Desktop/guest/read only = noguest ok = yes[share]path = /home/pi/Desktop/share/read only = no[naisu]path = /home/pi/Desktop/naisu/read only = no# 設置naisu用戶可用valid users = naisu

這里我使用 sudo useradd -M -s /sbin/nologin naisu 創建了一個沒有home目錄,且允許登陸的名為naisu的用戶,然后使用 sudo smbpasswd -a naisu 將它添加到samba中,然后進行測試(windows中刪除已登錄的smb賬號有點糾結,下面沒能完整測試不同賬號的情況):

smb.conf文件可設置的參數非常多,可以通過 man smb.conf 來查看。更多內容可以參考下面鏈接:
https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html
https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Standalone_Server

作為Samba服務器我們可以使用 sudo smbstatus 來查看客戶端接入情況

客戶端

在linux中可以使用smbclient完成samba所有客戶端功能,但通常我們只是用 smbclient -L //IP地址 -U 用戶名 或者 smbclient -L //IP地址 -U 用戶名%密碼 的方式來查看某個服務器分享的情況

訪問samba服務共享目錄我們可以使用 mount -t cifs //IP地址/目錄 /掛載點 -o username=,password= 方式來掛載,同樣的卸載就是用 umount了:

總結

Samba具體的功能選項等非常多,更多內容可以參考下面鏈接:
https://www.samba.org/samba/
https://wiki.samba.org/index.php/Main_Page
http://cn.linux.vbird.org/linux_server/0370samba.php

總結

以上是生活随笔為你收集整理的Linux笔记:文件共享服务Samba基础使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。