前言
在日常工作环境中,经常使用ubuntu编译代码,然后使用windows上的烧录工具,文件传输极不方便。后来发现了神器-Samba,真是太方便了。
ubuntu配置
环境:Ubuntu 10.10
- 安装samba
$ sudo apt-get install samba smbfs
- 创建共享目录
$ mkdir -p ~/share
$ chmod 777 ~/share
- 配置samba服务
1.备份samba配置文件smb.conf(修改配置文件之前要养成这个良好的习惯)
$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
首先 找到 #security = user 并进行修改,如下:
security = user(前面有#号去掉)
username map = /etc/samba/smbusers
然后找到[global], 把workgroup=MSHOME改为 workgroup=WORKGROUP(注意,这里的WORKGROUP是共享中的工作组名称)并增加以下代码 (如果已经改为WORKGROUP,则只需要以下代码)
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
注:这三行代码是为了防止中文目录乱码现象
最后在 smb.conf 最后添加如下代码:
[Share]
comment = Shared Folder with username and password
path = ~/share
public = yes
writable = yes
valid users = name(用户名)
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes
注:valid users = name,这个name是自己起的,后面在添加用户名时就是添加的这个;(例如我的用户名为linux,因此取名为linux)
另外这个 [Share] 名字也是可以随便起的,这个是你在windows访问时显示的名字;
- 创建samba账户并设置密码
$ sudo touch /etc/samba/smbpasswd
$ sudo smbpasswd -a name # name必须为系统中存在的账户(重要)
然后可以进行设置新的samba用户密码,如果没有执行这一步会出现session setup failed :NT_STATUS_LOGON_FAILURE];
- 测试并启动samba服务
(1)验证配置参数是否有错
$ sudo testparm
注:如果出现sudo: testparm: command not found 错误,则执行以下命令:
$ sudo apt-get install samba-common-bin
(2)启动samba服务
$ sudo service smbd restart
注:网上的一些是老的命令,已经不能用了,如下:
$ sudo /etc/init.d/samba restart
肯定会提示 sudo: /etc/init.d/samba: command not found;
windows配置
配置环境win10
- 获取ubuntu主机地址
ifconfig
- 添加网络映射驱动器
打开计算器-》添加网络映射驱动器-》输入ip地址、用户名&密码