ubantu 与Windows 资源共享
Linux与Windows共享文件夹之samba的安装与使用(Ubuntu为例)
作者:@gzdaijie
本文为作者原创,转载请注明出处:http://www.cnblogs.com/gzdaijie/p/5194033.html
目录
1.写在前面
2.安装方法
2.1 安装samba
2.2 创建共享目录
2.3 修改samba配置文件
2.4 设置登录密码
2.5 启动samba服务器
2.6 测试是否共享成功
3.在windows上测试
3.1 打开windows文件管理器,输入\\ip地址或主机名\share
3.2 尽情享受samba带来的便利吧
1.写在前面
当你在Windows上安装了一台Linux的虚拟机,你想访问Linux中的文件夹,将虚拟机中的文件复制到Windows主机上,你会怎么做呢?如果这台Linux主机不是虚拟机,而是一台远程主机呢?
有没有一种方法,打开Linux虚拟机中的文件夹就像在本地一样,输入路径就可以?你可能会想到FTP,本文介绍一个更简单的方法——samba。
接下来详细介绍如何在Linux上安装samba(以Ubuntu14.04为例)。
2.安装方法
2.1 安装samba
sudo apt-get install samba
2.2 创建共享目录
// 创建的目录即之后能够在Windows主机上直接访问的目录。
// 例如:在用户gzd的主目录下新建share文件夹为共享目录
mkdir /home/gzd/smbshare
// 由于Windows下的文件夹需可读可写可执行,需更改权限为777
sudo chmod 777 /home/gzd/smbshare
2.3 修改samba配置文件
我记得 还要加 security=user cat后面
// 修改 /etc/samba/smb.conf
sudo vim /etc/samba/smb.conf
// 在smb.conf文件最后加上以下内容
[share]
path = /home/gzd/smbshare
public = yes
writable = yes
valid users = gzd
create mask = 0644
force create mode = 0644
directory mask = 0755
force directory mode = 0755
available = yes

关于smb.conf的几点解释:
(1) [share]表示共享文件夹的别名,之后将直接使用这个别名
(2) force create mode 与 force directory mode的设置是因为Windows下与Linux下文件和文件夹的默认权限不同造成的,Windows下新建的文件是可执行的,必须强制设定其文件权限。
(3) valid users 设置为你当前的Linux用户名,例如我的是gzd,因为第一次打开共享文件夹时,需要验证权限。
2.4 设置登录密码
// 新建/etc/samba/smbpasswd文件
sudo touch /etc/samba/smbpasswd
// 根据2.3设置的valid users,设置用户密码
// gzdaijie 替换为你在2.3中设置的用户名
sudo smbpasswd -a gzd
//输入两次密码后,会提示 Added user gzd. 表示设置成功
// 若用户名非当前登录系统的用户名,可能会提示Failed
2.5 启动samba服务器
sudo /etc/init.d/samba restart
2.6 测试是否共享成功
sudo apt-get install smbclient
smbclient -L //localhost/share
//还记得吗?share为2.3中设置的共享文件夹的别名
//如果共享成功,将要求输入之前设置的密码
3.在windows上测试
3.1 打开windows文件管理器,输入\\ip地址或主机名\share
- Linux的ip地址可通过ifconfig查看
- 选择记住凭据,下次输入地址后无需登录
- 第一次打开可能需要几秒时间,耐心一点

3.2 尽情享受samba带来的便利吧
- 在windows下创建文件,到Linux下看看吧!
- 在Linux的共享目录下创建文件,在windows下看看吧!
在ubuntu下设置共享
1. 安装samba
sudo apt-get install samba smbfs
2. 设置samba密码
sudo touch /etc/samba/smbpasswd
sudo smbpasswd -a yourname #yourname 表示你的用户名
然后按照提示设置输入密码
3. 任意选择你想要共享的文件夹,右键选择“Properties”,然后点击“Share”;
4. 输入共享名,一般情况下可以跟文件夹同名,如果下面第三步出错请换个名字试试;
5. 选中第一个选项 “share this fold” ,第二个也可以选上,第三个建议不要选;
你的映射地址为“\\ubuntu-IP\sharename”,ubuntu-IP是你的ubuntu主机的IP地址,sharename 就是你在前面第3步中输入的共享名。
然后按照提示输入用户名和共享密码。
如果是在linux系统中,可以通过mount命令访问你创建的共享:
sudo mount //ubuntu-IP/sharename share_temp/ -o username=yourname,password=yourpasswd,fmask=777,dmask=777
share_temp是你本地的一个文件夹,就是把共享临时放到这个文件夹。
ubuntu下的普通用户如何建立共享
普通用户登陆后,按照上面的方法创建共享文件夹,则会提示错误:
'net usershare' returned error 255: net usershare: cannot open usershare directory /var/lib/samba/usershares. Error Permission denied
You do not have permission to create a usershare. Ask your administrator to grant you permissions to create a share.此时只需要将该用户加入sambashare用户组,方法如下:
sudo adduser yourname sambashare
logout后重新登陆你就可以设置共享文件夹了。
不过此时你还不能应用你的共享,你需要先设置你的samba密码。
sudo smbpasswd –a yourname
然后按照提示设置你的samba密码。
说明:
普通用户设置共享的问题让很多人都被困扰过。对于该问题找了很久不得答案,网上说法很多,最后发现只要把相应用户加入sambashare用户组就可以了。
其实从错误信息也可以得到相应提示/var/lib/samba/usershares,于是查看属性:
ls /var/lib/samba/ -l
drwxrwx--T 2 root sambashare 4096 2010-12-30 10:57 usershares
第一列表示权限,第三列表示所有者,第四列表示用户组。既然提示权限不够,完全有理由怀疑是不在相应组导致的。
一般遇到这种情况想要修改相应文件(夹)用户组或者权限是不明智的,而且很可能导致新的问题,所以必须另寻他法,找到问题根本原因。
ubantu 与Windows 资源共享的更多相关文章
- VMware下Ubantu与Windows共享文件夹的方法
刚刚接触linux的同学往往喜欢在windows系统下安装一个虚拟机,然后在虚拟机上进行操作,但是windows和虚拟机上的linux系统之间的文件互传往往不太方便,今天就总结一个小技巧在window ...
- Linux下Samba的配置
前言: 为了实现windows 和 Linux以及其它操作系统之间的资源共享,软件商推出nfs 和samba两种解决方案.因为市场上缺乏象pc-nfs那样的client工具,使得Linux和windo ...
- dll劫持破坏360
0x01 前言 说起DLL劫持技术,相信大家都不会陌生,因为这种技术的应用比较广泛,比如木马后门的启动.破解程序的内存补丁.外挂插件的注入以及加密狗的模拟等.之所以DLL劫持技术深受黑客们的喜爱,主要 ...
- windows下远程连接ubantu
要实现windows下连接ubantu需要安装以下软件: 1. windows下安装winSCP 2. Ubantu下安装OpenSSH Server 可以使用命令行安装openSSH Server: ...
- windows下安装ubantu
首先声明我是一个linux大菜鸟,之所以学这个,一个是好玩,另外做DL的一些软件如Caffe要在这个平台上运行,所以没事就鼓捣鼓捣.linux是一种内核,市场上支持这种内核的操作系统有uban ...
- ubantu 虚拟机无法查看windows共享目录
初学linux,安装好虚拟机,安装好ubantu系统,启动系统后无法查看windows共享目录. 原因是没有安装 vmware tools 教程地址:http://www.linuxidc.com/L ...
- windows下怎么给ubantu虚拟机全屏的处理
ubantu版本时16.04 windows下窗口太小需要设置 相信很多人在装虚拟机的时候,遇到了窗口过小不能自适应的问题.我也是查了好多资料,都说安装Vmware Tools即可解决,还有说修改分辨 ...
- windows下eclipse实现操作虚拟机ubantu中的hdfs hbase
1.首先打开虚拟机,查看虚拟机的ip地址 2.修改C:\Windows\System32\drivers\etc下的主机名与ip的映射文件 3.配置Map/reduce 配置成功后可以查看hdfs文件 ...
- 将windows上.net core 发布的程序部署到linux(ubantu等)上
首先在linux安装相应的.net core 环境,根据官方的示例安装即可:参考地址:https://dotnet.microsoft.com/learn/dotnet/hello-world-tut ...
随机推荐
- 单机RedHat6.5+JDK1.8+Hadoop2.7.3+Spark2.1.1+zookeeper3.4.6+kafka2.11+flume1.6环境搭建步骤
1.RHEL 6.5系统安装配置图解教程(rhel-server-6.5) 2.在Linux下安装JDK图文解析 3.RedHat6.5上安装Hadoop单机 4.RedHat6.5安装Spark单机 ...
- TCP加速锐速SS(ServerSpeeder)破解版一键安装
速(serverspeeder),是一款TCP加速程序,能够增强VPS/服务器连接的稳定性,且有效的提高服务器的带宽利用率,进而提高访问速度.老左经常看到论坛.群里有用户提到锐速这款软件可以提高VPS ...
- 阅读<<SDI TX Bridge>>笔记
阅读<<SDI TX Bridge>>笔记 1.Path from AXI4-Stream Video Processing to SDI 2.Top Level Block ...
- centos6.5 系统乱码解决 i18n --摘自http://blog.csdn.net/yangkai_hudong/article/details/19033393
二.终端. gedit 显示乱码 #vi /etc/sysconfig/i18n 将LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun ...
- python条件判断,真假
整形 非0即真 字符串 非空即真 列表,元组,字典,集合为空时 为假 函数 返回值为空(即函数中只写了return后面没参数),为0(即return 0),为空的列表,字典,集合.那么条件判断函数也是 ...
- awk中使用shell的环境变量
awk中使用shell的环境变量一:"'$var'"这种写法大家无需改变用'括起awk程序的习惯,是老外常用的写法.如:var="test"awk 'BEGIN ...
- Windowsx64位安装pymssql并完成与数据库链接
常流程只需要打开下载并按照常规方法安装mssql包即可在程序中import pymssql,不过安装mssql确实有些小麻烦. 从开始安装就开始出现了各种异常错误 首先出现sqlfront.h文件找不 ...
- JSON 语法
ylbtech-JSON: JSON 语法 JSON 语法是 JavaScript 语法的子集. 1. JSON 语法规则返回顶部 JSON 语法是 JavaScript 对象表示语法的子集. 1. ...
- 廖雪峰Java4反射与泛型-1反射-4调用构造方法
1.Class.newInstance()只能调用public的无参数构造方法 public class Main { public static void main(String[] args) t ...
- Jmeter(三十二)Jmeter Question 之 “自定义函数开发”
“技术是业务的支撑”,已经不是第一次听到这句话,因为有各种各样的需求,因此衍生了许多各种各样的技术.共勉! 前面有提到提到过Jmeter的安装目录结构,也提到Jmeter的常用函数功能,有部分工作使用 ...