wsl安装samba共享文件
在wsl里面可以直接访问修改windows的文件
windows下面只能读wsl目录里面的文件, 如果修改, 会导致这个文件在wsl下面权限出错.
通过samba修改文件就没有这个问题了.
另外, samba也可以代替windows自带的文件共享.
关闭win10自带的文件共享
在cmd
下面输入 netstat -an | findstr /r "139 445"
可以看到当前445
端口已经被占用(win10 以前有用到139
端口, win10只用445
).
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
TCP [::]:445 [::]:0 LISTENING
-
释放445端口 按
win+r
运行services.msc
, 找到Server
服务, 将“启动类型”修改为禁用,并且直接点击“停止”, 会提示你把Computer Browser
服务也一起停了, 重启电脑后可以看到445
端口已经释放了. -
释放139端口(未测试) 网上查的资料, win10没用到
139
端口, 不确定是否有用. 在更改适配器设置
界面, 双击对应网卡, 打开以太网状态
界面, 点击属性
打开以太网属性
界面, 选中TCP/IPv4
项目,点击属性
, 打开TCP/IPv4属性
界面, 点击高级
并选中WINS
页签,勾选禁用TCP/IP上的NetBIOS
, 点击确认后生效. 每张网卡都需要设置.
wsl 安装 samba 并设置开机启动
- 安装 配置samba
$sudo apt install -y samba
$sudo vim /etc/samba/smb.conf
- 修改samba 配置, 共享
$HOME
目录
security = user
[home]
path = /home/fcying
guest ok = no
writeable = yes
valid users = fcying
- 加入 samba 用户, 启动 samba 服务
sudo smbpasswd -a fcying
sudo service smbd restart
这时候 再运行 netstat -an | findstr "139 445"
, 可以看到139
,445
端口已经被samba用了.
通过资源管理器,输入\\127.0.0.1
,可以访问到共享目录.
-
开机启动 samba 服务
在
/home/init.sh
(参考wsl开机启动ssh服务并开启32bit支持) 文件里加入sudo service smbd start
就可以了.