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就可以了.

你可能感兴趣的:(windows)