通过samba共享文件,并开机自启动

服务端(被共享端)配置

Samba 是在 Linux 和 Unix 系统上实现 SMB/CIFS 协议的一个免费软件,可用于在不同操作系统之间共享文件和打印机。以下将详细介绍如何在 Ubuntu 系统中通过 Samba 共享文件并设置开机自启。

1. 安装 Samba

打开终端,执行以下命令来安装 Samba 服务:

sudo apt update
sudo apt install samba

2. 创建共享目录

选择一个要共享的目录,例如创建一个名为 shared_folder 的共享文件夹:

sudo mkdir /home/user/shared_folder
sudo chmod 777 /home/user/shared_folder

这里将文件夹权限设置为 777,意味着所有用户都有读、写和执行的权限,你可以根据实际需求调整权限。

3. 配置 Samba

使用文本编辑器(如 nano 或 vim)打开 Samba 的配置文件 /etc/samba/smb.conf:

sudo nano /etc/samba/smb.conf

在文件末尾添加以下内容来配置共享目录:

[shared_folder]
    comment = Shared Folder
    path = /home/user/shared_folder
    browsable = yes
    read only = no
    guest ok = yes
    create mask = 0777
    directory mask = 0777
  • [shared_folder]:共享文件夹的名称,客户端在访问时将使用此名称。
  • comment:对共享文件夹的描述。
  • path:共享文件夹的实际路径。
  • browsable:设置为 yes 表示该共享文件夹可以被浏览。
  • read only:设置为 no 表示客户端可以对共享文件夹进行写入操作。
  • guest ok:设置为 yes 表示允许访客用户访问。
  • create mask 和 directory mask:设置新创建文件和目录的权限。

4. 设置 Samba 用户(可选)

如果不希望使用访客模式,而是通过用户名和密码进行访问,可以创建 Samba 用户:

sudo smbpasswd -a username

将 username 替换为你要创建的用户名,然后按照提示输入密码。

5. 重启 Samba 服务

配置完成后,重启 Samba 服务使配置生效:

sudo systemctl restart smbd

6. 测试共享

在同一局域网内的其他设备上,打开文件管理器,输入 Samba 服务器的 IP 地址(如 smb://192.168.1.100),应该可以看到共享的文件夹。

7. 设置开机自启

使用 systemctl 命令设置 Samba 服务开机自启:

sudo systemctl enable smbd

这样,每次系统启动时,Samba 服务都会自动启动,共享文件夹也会自动可用。
注意事项

8. 防火墙设置

确保防火墙允许 Samba 服务的相关端口(通常是 TCP 139 和 445)通过。可以使用以下命令开放端口:

sudo ufw allow samba

安全考虑:如果共享文件夹包含敏感信息,建议使用用户名和密码进行访问,并设置合理的权限。同时,定期备份共享文件夹中的数据。

客户端配置(使用共享文件端)

  • 列出共享资源:使用 smbclient -L 命令列出指定 Samba 服务器上的所有共享资源。例如,要列出 IP 地址为 192.168.1.100 的服务器上的共享资源,可以执行以下命令:

    smbclient -L //192.168.1.100
    
  • 如果服务器需要用户名和密码进行身份验证,可以使用 -U 选项指定用户名,执行命令后会提示你输入密码,示例如下:

    smbclient -L //192.168.1.100 -U username
    

    将 username 替换为实际的用户名。

  • 访问共享目录:使用 smbclient 命令连接到特定的共享目录。例如,连接到名为 shared_folder 的共享目录:

    smbclient //192.168.1.100/shared_folder
    

    同样,如果需要身份验证,可以使用 -U 选项指定用户名。连接成功后,你将进入一个类似于 ftp 的交互界面,可以使用 ls 命令列出目录内容,使用 get 命令下载文件,使用 put 命令上传文件等。
    挂载 Samba 共享目录到本地

  • 创建挂载点:在本地文件系统中创建一个目录作为挂载点,例如:

    sudo mkdir /mnt/samba_share
    
  • 挂载共享目录:使用 mount.cifs 命令将 Samba 共享目录挂载到创建的挂载点上。示例命令如下:

    sudo mount.cifs //192.168.1.100/shared_folder /mnt/samba_share -o username=username,password=password
    

    将 username 和 password 替换为实际的用户名和密码。如果共享目录允许匿名访问,可以省略 -o 选项。

  • 访问共享文件:挂载成功后,你可以像访问本地文件一样访问 /mnt/samba_share 目录中的文件和文件夹。

  • 卸载共享目录:当不再需要访问共享目录时,可以使用 umount 命令将其卸载:

    sudo umount /mnt/samba_share
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值