最近想安装 Apache 的 Superset,但这个没有独立的应用安装程序,有一个选择是通过 docker。我新的 Ubuntu 物理机还没有安装 docker,在 Windows 中下载了 docker 的安装包之后想传到 Ubuntu 机中,发现 Samba 服务没有安装,在安装的过程中遇到了一些坑,发现网上没有说得清楚,所以这里简要记录一下。
1. 安装 samba
主要的命令如下:
sudo apt update
sudo apt install samba
运行了以上命令后,一般来讲会自动解决依赖关系并完成安装,可以通过 whereis samba 来确认是否完成安装。
其实 这一步并没有什么可说的,关键在于下一步配置环节。
2. 配置 samba
使用以下命令打开并编辑配置文件
sudo vim /etc/samba/smb.conf
举例子,如果要将 /home/username/sambashare 分享,可以在配置文件末尾加上以下信息。
[sambashare]
comment = Samba on Ubuntu
path = /home/username/sambashare
read only = no
browsable = yes
以上配置默认会通过user/password访问,如果想不通过密码就访问,再加上 public = yes 即可
配置文件编辑完成后就可以保存退出,然后重启服务了,另外更新下防火墙规则:
sudo service smbd restart
sudo ufw allow samba
如果共享配置里没有 public = yes 或类似的 guest ok = yes的语句,那么还需要多一步设置个用来访问的用户密码。
sudo smbpasswd -a username
注意这里 username要替换成自己 Ubuntu 系统里已存在的用户名,运行该命令后在终端提示下输入密码即可。
接下来就是在 Windows 文件浏览器上输入 \\ip 地址测试即可。如果能顺利看到此前配置分享的文件就是成功了。
需要注意的是,Samba配置参数里此前提到的 public 与 guest ok功能一样,然后 read only 与 writeable互反。
还有writeable与wirtable同,browseable与browsable同,所以看到网上很多博客里不尽相同的配置参数写法不必惊奇,一开始我还以为是漏字或者错字内,查了官方文档后才发现,常用的读写参数写法不止一种。
所以看分享文章里的参数代码时需要注意,没必要写全所有参数,只需要满足基本的几个功能参数就够了,更多配置参数请参考 官方文档