linux访问windows共享文件的方法

来源:互联网 发布:知乎变成蛤乎了 编辑:程序博客网 时间:2024/04/29 19:31

1、linux访问windows

(1)

可以使用mount挂载,也可以使用samba软件

[1]

linux服务器挂载 windows的共享文件夹:

1.mount方式:关机失效

win主机IP192.168.1.100,共享目录workspace

mount -t cifs -o username='echo',password='123456' //192.168.1.100/workspace  /mnt/share 

2.通过修改fstab文件,支持开机自动挂载

修改/etc/fstab文件,文件最后加入:

//192.168.1.100/workspace   /mnt/share cifs  auto,username=‘echo’,password=‘123456’  0 0 


[2]

samba就是让windows和unix系列os之间的文件可以互相访问的软件。使用samba访问windows的共享文件夹,需要安装smbclient。

$ sudo apt-get install smbclient

安装好后,就可以访问共享的文件了。

$ smbclient --user=share //192.168.66.198/shareEnter share's password: (输入密码回车)smb: \>

此时进入了smb的命令操作空间,可以使用help来查看命令的使用。

smb: \> help......省略若干命令......exit           get            getfacl        geteas         hardlinkhelp           history        iosize         lcd            link......省略若干命令......

也可以使用help查看单个命令的使用方式

smb: \> help getHELP get:         [local name] get a file

(2)在命令行输入命令:

~$ smbclient -L \\127.0.0.1
按要求输入密码后,提示出错:
session setup failed: NT_STATUS_LOGON_FAILURE

这是因为执行smbclient命令的用户ID没有成为samba服务的用户,解决方法如下:
先将改用户ID加入到samba中
~$ smbpasswd -a 某用户ID
按要求设置密码

这样该用户ID就成为了samba服务的用户了,此时再输入命令:
~$ smbclient -L \\127.0.0.1
Domain=[Example] OS=[Unix] Server=[Samba 3.6.3]

(3)

增加samba用户提示Failed to add entry for user


root@ubuntu ~]# smbpasswd -a test
New SMB password:
Retype new SMB password:
Failed to add entry for user test.


解决办法:
这是因为没有加相应的系统账号,所以会提示Failed to add entry for user的错误,只需增加相应的系统账号test就可以了:
[root@ubuntu ~]# groupadd test -g 6000
[root@ubuntu ~]# useradd test -u 6000 -g 6000 -s /sbin/nologin -d /dev/null


这时就可以用smbpasswd -a test增加test这个samba账号了!为了增加系统的安全性,所以加的系统账号不要给shell它,也不给它指定目录,到时在/home目录给test账号建个文件夹,该文件夹只有test有读写权限即可!
如:
[root@ubuntu ~]# mkdir /home/test
[root@ubuntu ~]# chown -R test:test /home/test


若不想让另人访问,只让test用户可以访问,只需执行命令:
[root@ubuntu ~]# chmod u+rwx,g+rwx,o-rwx /home/test


这时可以用smbpasswd命令增加samba账号test了
[root@ubuntu ~]# smbpasswd -a test
New SMB password:
Retype new SMB password:








2、window访问linux 前面可以不看只看后面

samba是一种可以在Linux/Unix主机上模拟windows主机的NetBIOS和CIFS/SMB实现与windows主机之间文件共享的软件。只要linux主机安装了samba,windows端借助samba可以将linux主机共享的目录文件映射为本地磁盘,linux端也可以将windows主机共享的文件挂载为本地文件系统。
 
一、linux主机共享文件让windows端访问
 
1、安装samba
 
RedHat5.8系统默认安装有samba3.0,这里使用samba3.5,先卸载samba3.0:
 
#rpm -e samba-client samba-common
 
安装samba3.5:
 
# yum -y install samba3x samba3x-client samba3x-common
 
2、添加samba用户:
 
创建用户: 
#groupadd samba 
#useradd -g samba smbuser1 
 
 
3、创建共享目录并更改权限 
mkdir /shared/test 
设置文件系统访问权限 
#chmod 755 /shared/test
 
更改文件属组 
#chown :samba /shared/test 
 
 
如果不更改属组可以使用acl授权指定用户:
 
#setfacl -m d:u:smbuser1:rw- /shared/test
 
添加用户至samba 
#smbpasswd -a smbuser1 
根据提示输入该用户对共享的访问密码 
 
 
 
 
4、编辑samba配置文件/etc/samba/smb.conf,添加设置共享 
[tools]  #定义共享别名 
    comment = Public Stuff    #共享注释 
    path = /shared/test  #共享路径 
    write list = smbuser1,@samba  #允许写操作的用户和组 
    guest ok = Yes  #允许来宾匿名查看 
    printable = Yes  #不隐藏
 
 
 
5、启动samba服务: 
service smb start
 
 
 
6、windows端在文件管理器窗口的地址栏输入“\\172.16.15.222\tools\”,输入linux端定义的用户名和密码就可以访问linux的共享资源了。【172.16.15.222为linux主机IP,tools为linux定义的共享资源别名】
 
然后设置映射本地驱动器就可以了


0 0
原创粉丝点击