场景需求:

安装了Ubuntu在虚拟机上,但是代码编辑或者其它更多的操作的时候,还是习惯在windows下进行。如果windows下编辑完再上传到服务器,再编译执行,就太繁琐了。一次两次还好说,这编译级别上千次的,每次也需要上传的话,无疑是个人间悲剧。但是有了Samba,犹如雪中送炭啊。
 
安装
Ubuntu下安装比较简单,执行
 # install samba samba-common
即可。当然也可以直接去官网(https://www.samba.org/)下载安装。
 
配置
1. 新建共享的目录:
# mkdir /home/用户名/share
# chmod /home/用户名/share
 
2. 修改配置smb.conf
修改前最好先备份smb.conf文件。
# cp /etc/samba/smb.conf /etc/samba/smb.conf_bak
# vim /etc/samba/smb.conf
    2.1 取消 # security = user 的注释,并在后面一行加上 username map = /etc/samba/smbusers
security = user
username map = /etc/samba/smbusers
    2.2 在文件的最后面加上以下配置   
[Share]
comment = Shared Folder with username and password
path = /home/用户名/share
available = yes
browseable = yes
public = yes
writable = yes
valid users = [访问用户名(系统的用户)]
create mask = #远程创建目录、文件默认权限
directory mask = #远程访问目录权限
force user = nobody #目录所属用户
force group = nogroup #目录所属用户组

我的习惯是指给相应的权限给相应的账号,譬如我本身用的是weiyg账号,我会如下配置,这样的话,windows下新建、修改、访问的权限,都会与我weiyg的权限保持一致。这样比较方便。当然,如果本身整个系统都是一个人维护,那就没啥所谓了。

[share]
path = /home/weiyg/share
available = yes
browseable = yes
public = yes
writable = yes
valid users = weiyg
create mask =
directory mask =
force user =weiyg
force group = weiyg

2.3 修改[global]中的workgroup = WORKGROWP ,并添加编码的设置,如下:

workgroup = WORKGROUP
display charset = UTF-
unix charset = UTF-
dos charset = cp936
        上面编码设置是为了防止中文目录、文件名乱码的情况。
 
3. 添加访问用户(系统用户)
# useradd [用户名]
    对于我的设置来说,其实我是直接用我本身的用户权限访问的。系统本身就存在了weiyg用户了,这时候不需要执行这一步了。如果如上执行的话,过没有设置密码的话,这个用户就只能从远程访问,不能从本机登录。
 
4. 添加远程访问用户(samba的用户)
# smbpasswd -a [远程访问用户名]
    执行以上命令,并设置密码。该用户是windows远程访问的用户,并不是系统的用户。当然为了方便,我自己设置的用户名其实是跟我系统用户一样的。即
# smbpasswd -a weiyg
    如果要删除远程访问用户,执行如下命令。
# smbpasswd -x [远程访问用户名]
    新建一个/etc/samba/smbusers文件,并保存下面代码:
[访问用户名] = "network username"
    我是这么设置的 weiyg = "weiyg" (不知道对不对,反正最后可以访问)
 
启动
# /etc/init.d/sambd start
# /etc/init.d/sambd restart
 
windows远程访问
    在windows文件管理器上点击【映射网络驱动器】并输入ip地址和用户名密码,即可访问到linux下的文件。
    
 
个人理解原理
    windows下访问用的其实是Samba的账号,然后windows与Samba交互,本质上对文件的操作,其实还是Samba与linux文件交互的系统用户。所以为了方便,我将远程访问用户和系统用户设置成一样的。
 
以上个人理解,可能存在出入!
 

[Linux实用工具]Windows下同步Linux文件(Linux安装Samba和配置)的更多相关文章

  1. Windows下 maven3.3.1的安装步骤+maven配置本地仓库

    简单讲下maven的安装步骤: 1.在安装maven之前,先确保已经安装JDK1.6及以上版本,并且配置好环境变量. 2.下载maven3,最新版本是Maven3.3.1 ,下载地址:http://m ...

  2. Windows下 maven3.0.4的安装步骤+maven配置本地仓库

    简单讲下maven的安装步骤: 1.在安装maven之前,先确保已经安装JDK1.6及以上版本,并且配置好环境变量. 2.下载maven3,最新版本是Maven3.0.4 ,下载地址:http://m ...

  3. Windows下使用PSCP从Linux下载或上传文件

    1. 先下载putty包,然后解压 https://the.earth.li/~sgtatham/putty/latest/w64/putty.zip 2. 下载Linux文件到当前目录 PSCP.e ...

  4. Windows 下目录及文件向Linux同步

    本文解决的是Windows 下目录及文件向Linux同步的问题,Windows向 Windows同步的请参考:http://www.idcfree.com/article-852-1.html 环境介 ...

  5. 用脚本如何实现将Linux下的txt文件批量转化为Windows下的txt文件?

    众所周知,Windows和Linux的文件换行回车格式不同,Windows下换行格式是\r\n(回车+换行),Linux下换行格式为\n(只是换行),因此,其中一个操作系统的文本文件若需要在另外一个中 ...

  6. Linux&Windows下批量修改文件后缀

    Linux下从给定文件夹中找出小于1M的文件,并批量添加.gif后缀 先看一下文件夹下的目录的格式 ll -Sh -rw-rw-r-- 1 yangkun yangkun 17M May 10 15: ...

  7. [Linux实用工具]Linux监控工具munin的展示(Nginx)

    Munin的安装和配置可以参考第一篇文章: [Linux实用工具]Linux监控工具munin的安装和配置 http://www.cnblogs.com/rond/p/3757804.html Mun ...

  8. Linux学习总结(3)——Linux实用工具

    1. Windows下同步Linux文件(Linux安装Samba和配置) 场景需求: 安装了Ubuntu在虚拟机上,但是代码编辑或者其它更多的操作的时候,还是习惯在windows下进行.如果wind ...

  9. [Linux实用工具]munin-node插件配置和插件编写

    前面介绍了2篇munin使用的相关文章: [Linux实用工具]Linux监控工具munin的安装和配置 [Linux实用工具]Linux监控工具munin的展示(Nginx)   这次介绍一下mun ...

随机推荐

  1. ERROR: No query specified

    mysql中执行show命令的时候,提示以下信息: mysql> show variables like 'datadir'\G; *************************** 1. ...

  2. 去掉WinLicense文件效验的方法

    去掉WinLicense文件效验的方法 --------------Breakpoints-------------- 地址 模块 活动 反汇编 注释------------------------- ...

  3. 类名.class和getClass()区别

    class叫做“类字面量”,因class是关键字, 所以class编译时确定,getclass()运行时根据实际实例确定.String.class 是能对类名的引用取得在内存中该类型class对象的引 ...

  4. Unix网络编程 之 基本套接字调用(一)

    Unix/Linux支持伯克利风格的套接字编程,它同一时候支持面向连接和面向无连接类型的套接字. 套接字最经常使用的一些系统调用: socket() bind() connect() listen() ...

  5. 怎样让HTML 表格中内容自动换行??

    <table style="word-break:break-all; word-wrap:break-all;">

  6. springboot 整合 Redis 方法二

    方法一请参考之前博文 spring boot 整合 redis 自己的版本  java8 + redis3.0 + springboot 2.0.0 1 spring boot已经支持集成 redis ...

  7. unity, Collider2D.bounds的一个坑

    Note that this will be an empty bounding box if the collider is disabled or the game object is inact ...

  8. linux上NFS性能参数

    linux nfs客户端对于同时发起的NFS请求数量进行了控制,若该参数配置较小会导致IO性能较差,查看该参数: cat /proc/sys/sunrpc/tcp_slot_table_entries ...

  9. Atitit 函数调用的原理与本质attilax总结 stdcall cdecl区别

    Atitit 函数调用的原理与本质attilax总结 stdcall cdecl区别 通常来说函数调用要用到的两条基本的指令:”CALL”指令和”RET”指令.”CALL”指令将当前的指令指针(这个指 ...

  10. Golang之字符串格式化

    字符串格式化 // Go 之 字符串格式化 // // Copyright (c) 2015 - Batu // package main import ( "fmt" ) typ ...