通过 Samba 服务实现 Ubuntu 和 Windows 之间互传文件

在 Ubuntu 上进行配置

1. 安装 Samba 服务

打开终端,输入以下命令来安装 Samba:

复制代码
sudo apt update
sudo apt install samba
2. 创建共享目录

可以使用以下命令创建一个新的共享目录,例如创建名为 shared_folder 的目录:

复制代码
sudo mkdir /home/your_username/shared_folder

your_username 替换为你自己的用户名。

3. 设置共享目录权限

为了让 Samba 能够访问该目录,需要设置合适的权限:

复制代码
sudo chmod -R 777 /home/your_username/shared_folder

此命令将赋予该目录及其子目录最大的读写执行权限。

4. 配置 Samba

使用文本编辑器(如 nanovim)打开 Samba 的配置文件:

复制代码
sudo nano /etc/samba/smb.conf

在文件末尾添加以下内容:

复制代码
[shared_folder]
   comment = Shared Folder
   path = /home/your_username/shared_folder
   browseable = yes
   read only = no
   guest ok = yes
  • [shared_folder]:共享目录的名称,可根据需求修改。
  • comment:对共享目录的描述。
  • path:共享目录的实际路径。
  • browseable:设置为 yes 表示该共享目录可被浏览。
  • read only:设置为 no 表示可以对该共享目录进行读写操作。
  • guest ok:设置为 yes 表示允许匿名访问。
5. 重启 Samba 服务

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

复制代码
sudo systemctl restart smbd
6. 创建 Samba 用户(可选)

如果你不希望匿名访问共享目录,可以创建 Samba 用户:

复制代码
sudo smbpasswd -a your_username

按照提示输入并确认密码。同时,需要将 smb.conf 文件中的 guest ok = yes 修改为 guest ok = no

在 Windows 上访问 Ubuntu 的共享目录

1. 打开"此电脑"

在 Windows 系统中,打开"此电脑"。

2. 映射网络驱动器

点击"计算机"选项卡中的"映射网络驱动器"。

3. 选择驱动器和文件夹

在"驱动器"下拉菜单中选择一个未使用的驱动器号,在"文件夹"中输入 \\Ubuntu_IP_address\shared_folder,其中 Ubuntu_IP_address 是 Ubuntu 系统的 IP 地址,可以在 Ubuntu 终端中使用 ip addr 命令查看。

4. 完成映射

点击"完成",如果之前设置了 Samba 用户和密码,会弹出验证窗口,输入相应的用户名和密码即可访问共享目录。

在 Ubuntu 上访问 Windows 的共享目录

1. 安装 CIFS 工具

在 Ubuntu 终端中输入以下命令安装 CIFS 工具:

复制代码
sudo apt install cifs-utils
2. 创建挂载点

创建一个用于挂载 Windows 共享目录的文件夹,例如:

复制代码
sudo mkdir /mnt/windows_shared
3. 挂载共享目录

使用以下命令挂载 Windows 共享目录:

复制代码
sudo mount -t cifs //Windows_IP_address/SharedFolderName /mnt/windows_shared -o username=WindowsUsername,password=WindowsPassword

Windows_IP_address 替换为 Windows 系统的 IP 地址,SharedFolderName 替换为 Windows 上的共享文件夹名称,WindowsUsernameWindowsPassword 替换为 Windows 的用户名和密码。

4. 卸载共享目录(可选)

当你不再需要访问 Windows 共享目录时,可以使用以下命令卸载:

复制代码
sudo umount /mnt/windows_shared

通过以上步骤,你就可以在 Ubuntu 和 Windows 之间实现文件的互传。

相关推荐
fengyehongWorld2 小时前
TeraTerm ttl脚本登录wsl
linux·teraterm
乌托邦的逃亡者3 小时前
Linux中如何检测IP冲突
linux·运维·tcp/ip
一曦的后花园3 小时前
linux搭建promethes并对接node-exporter指标
linux·运维·服务器
乌托邦的逃亡者3 小时前
CentOS/Openeuler主机中,为一个网卡设置多个IP地址
linux·运维·网络·tcp/ip·centos
念恒123064 小时前
进程控制---自定义Shell
linux·c语言
风曦Kisaki5 小时前
# Linux Shell 编程入门 Day02:条件测试、if 判断、循环与随机数
linux·运维·chrome
李日灐5 小时前
< 6 > Linux 自动化构建工具:makefile 详解 + 进度条实战小项目
linux·运维·服务器·后端·自动化·进度条·makefile
嵌入式×边缘AI:打怪升级日志5 小时前
嵌入式Linux开发:开源组件、第三方库与许可证详解
linux
计算机安禾5 小时前
【Linux从入门到精通】第34篇:搭建FTP与Samba——跨平台文件共享解决方案
linux·运维·服务器
日取其半万世不竭6 小时前
用 Netdata 实时监控服务器,比 Prometheus + Grafana 轻量得多
linux·服务器·网络·系统架构·负载均衡·zabbix·grafana