Ubuntu12.04访问Windows共享文件夹(普通用户可读写)

------------------------------------------------------------------------------------------------------
   此文章仅作为学习交流所用
   转载或引用请务必注明原文地址:

   http://blog.csdn.net/luzhenrong45/article/      

   或联系作者:[email protected] 

   谢谢!                       
------------------------------------------------------------------------------------------------------



出于工作需要,经常需要在Ubuntu电脑上访问Windows主机的共享目录,网上有很多教程,不过,大多满足不了我的需求。

现在记录一下linux电脑访问windows共享文件夹的方式。


环境:

windown电脑:

主机IP: 200.200.72.222

共享文件夹:整个 H 盘(设置为共享,共享权限设置为 允许读写)

用户名:user

密码:password


Ubuntu电脑:

主机IP:  200.200.72.111

挂载文件夹: ~/windows/win7_h



方式一:使用Samba 从Linux上访问Windows共享出来的目录

1. 确保linux电脑已经安装 smbclient  smbfs

sudo apt-get install smbclient smbfs

2. 安装完smb之后,在文件导航栏输入 远程windows共享目录路径(CTRL+L ),就可以在ubuntu文件管理系统中访问windows共享目录了。

使用这种方式,可以在该目录下面直接访问windows文件夹,并且可以直接读写,不需要root权限。

Ubuntu12.04访问Windows共享文件夹(普通用户可读写)_第1张图片


使用smb访问windows共享目录,该共享目录默认是挂载在 ~/.gvfs 目录下面的,如果用户需要在terminal终端中 操作 该共享目录,比如该H盘,就可以直接使用命令进入这个相应目录

~/.gvfs/h on 200.200.72.222


方式二:将windows共享目录挂载到ubuntu本地目录进行访问

1. 首先创建挂载目录(如不存在) ~/windows/win7_h

2. 将windows共享目录挂载到本地~/windows/win7_h目录,网上大多数介绍的方式是:

sudo mount -t cifs -o username=user,password=password //200.200.72.222/h /home/lzr/win7_h


这种方式是可以达到访问共享目录的目的的,不过,缺点是 普通用户,只能读,不能写。如果对远程共享目录有写操作,比如创建新的文件或文件夹,就需要切换到root权限(直观上可以看到每个文件图标都有一把锁)。


Ubuntu12.04访问Windows共享文件夹(普通用户可读写)_第2张图片


由于工作过程中经常需要在unbuntu和windown主机是交互数据,因此这种非人性化限制,表示接受不了。网上继续搜索了好久,后来找到一种方法,可以解决这种缺点。

sudo mount -t cifs -o username=user,password=password,uid=1000,gid=1000 //200.200.72.222/h /home/lzr/win7_h

和上面的挂载方式不一样的,该方式在挂载过程中设置uid和pid为本机使用者的uid和gid, 尝试了一下,确实可以解决普通用户不能写的问题,之前文件图标中那把锁也不见了。


Ubuntu12.04访问Windows共享文件夹(普通用户可读写)_第3张图片


延伸: 

问题一:那么,如何查看自己的UID和PID呢?

方法:cat /etc/passwd |grep user (user为你的用户名), 比如我的用户名是uuu,下面的两个1000便分别是我的UID和PID

uuu:x:1000:1000:uuu,,,:/home/uuu:/bin/bash


问题二:如果想要开机就自动将windows共享目录挂载到ubuntu本地目录呢,该怎么做?

此种情况,可以直接修改 /etc/fstab. 在fstab文件中,添加对远程共享目录的挂载操作,具体做法是在fstab文件中添加以下代码:

//200.200.72.222/H  /home/user/windows_share/win7_h cifs   defaults,uid=1000,gid=1000,username=user,password=password


注意:共享磁盘或文件夹不宜太大,毕竟是通过网络传输。如果Windows共享目录太大,有可能导致Ubuntu本地目录这边响应太慢。








你可能感兴趣的:(Linux)