最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

虚拟机LINUX与主机WINDOWS文件共享如何实现

来源:动视网 责编:小OO 时间:2025-09-23 23:08:06
文档

虚拟机LINUX与主机WINDOWS文件共享如何实现

虚拟机LINUX与主机WINDOWS文件共享如何实现装个samba一般来说,安装samba后,有一个smb.conf(配置文件)的例子,修改一下就好了。WINDOWS下的网上邻居使用是NetBIOS协议,LINUX下使用功能强大的SAMBA可以实现与WINDOWS机子共享。下面具体就我的理解具体说一下。首先当然是你必须安装了SAMBA#apt-getinstallsambasamba-commonsmbclientsmbfs其实使用SAMBA分成两个方面,一个是linux机子上的资源给WIND
推荐度:
导读虚拟机LINUX与主机WINDOWS文件共享如何实现装个samba一般来说,安装samba后,有一个smb.conf(配置文件)的例子,修改一下就好了。WINDOWS下的网上邻居使用是NetBIOS协议,LINUX下使用功能强大的SAMBA可以实现与WINDOWS机子共享。下面具体就我的理解具体说一下。首先当然是你必须安装了SAMBA#apt-getinstallsambasamba-commonsmbclientsmbfs其实使用SAMBA分成两个方面,一个是linux机子上的资源给WIND
虚拟机LINUX与主机WINDOWS文件共享如何实现

装个samba

一般来说,安装samba后,有一个smb.conf(配置文件)的例子,修改一下就好了。 

WINDOWS下的网上邻居使用是NetBIOS协议,LINUX下使用功能强大的SAMBA可以实现与WINDOWS机子共享。下面具体就我的理解具体说一下。 

首先当然是你必须安装了SAMBA 

#apt-get install samba samba-common smbclient smbfs 

其实使用SAMBA分成两个方面,一个是linux机子上的资源给WINDOWS机子浏览,再一个是使用LINUX 机子浏览WINDOWS 的网上邻居。现在假设使用WINDOWS的机子的IP是10.0.0.10,共享目录是music,用户名是:share,密码是:yeah;使用 LINUX机子的IP是:10.0.0.20 

一 . 从LINUX上获取WINDOWS文件的基本方法(有3种方法) 

1. smbmount---普通用户就可以使用的命令 

挂载文件 

#smbmount //10.0.0.10/music /home/user/music -o "username=share,password=yeah" 

主意与下面的mount不一样的是-o后面一定要引号 

卸载已经挂载的文件 

#smbumount /home/user/music 

2. mount---超级用户才有的权限,但效果与上面一样 

挂载文件 

#mount -t smbfs -o username=share,password=yeah //10.0.0.10/music /home/user/music 

卸载文件 

#umount /home/user/music 

注:以上两个命令挂载要想显示中文,必须添加如下参数 

codepage=cp936,iocharset=utf8(与linux机的本地环境一致,如是gb2312,这儿也要写成:iocharset=gb2312 ;codepage要与远程一致,是指定源代码文件的代码页---一个内>部表,操作系统用它将符号(字母、数字和标点)映射为字符编号。如932 代表日本汉字,950代表繁体中文字符集,说明一下就是codepage是cp936,而不是936,否则在有时显示汉字还是乱码。 

3. 使用smbclient访问Windows资源 

它是一个类似于ftp操作方式,通过远程操作的方式进行文件传递的软件。为了获得网络上可以访问的计算机列表,首先需要使用 smbclient来获得一个Windows计算机共享出来的资源,这需要使用-L参数访问IPC 

#smbclient -L 192.168.1.150 -N 

或者机器名 

#smbclient -L hit -N 

如果不清楚一个Windows计算机的NetBIOS名字,可以使用nmblookup先来解析NetBIOS名字 

#nmblookup hit (若浏览网上邻居用:#nmblookup -T "*") 

当上面查到资源后,就可以用smbclient登陆了 

#smbclient \\\\hit\\music yeah -U share (其中yeah是密码,share是用户名) 

执行smbclient命令成功后,进入smbclient环境,出现提示符:smb: >,然后就可以执行和ftp命令中相似的命令:cd, lcd, get ,mget ,put ,mput等,用法就跟FTP一样了。 

注:要想使用smbclient来访问windows时,也需要使用UNC来标识Windows资源的位置。此时就需要了解 WindowsUNC在Unix>下进行表示的不同之处。不同之处在于Unix的shell下反斜线为特殊字符,它被定义为转义恢复字符,表示将一些转义字符恢复为其本身字符的意义。因此必须使用两个反斜线才能等同于一个反斜线。因此一个UNC实际使用时应使用双倍的反斜线。 

若想使用基于图形的客户端:感觉比较好用的是tksmb和smb4k(KDE) 

若只是以上使用不用配置/etc/samba/smb.conf,也不用启动 samba 服务,甚至可以不装samba程序 

二. WINDOWS机子访问在LINUX上的资源 

需要使用两个进程:nmbd smbd, 前者nmbd是提供WINDOWS浏览,后者smbd是针对WINDOWS浏览后的登陆等服务。 

首先需要说明的是,当samba 还没有添加用户时,WINDOWS机子是登陆不上来的,所以第一步就是添加用户: 

# smbpasswd -a myfirst 

需要说明的是这个用户必须是系统用户,否则回提示 

Failed to initialise SAM_ACCOUNT for user myfirst. Does this user exist in the UNIX password database ? 

Failed to modify password entry for user myfirst 

当然可以对用户进行映射,见后面说明。 

接着就简单了,就是配置/etc/samba/smb.conf,见下面一个配置以及相应说明,拷贝后您只需要稍稍修改一些你自己的信息就可以使用了(参考了前人的说明) 

/etc/samba/smb.conf文件 

## /etc/samba/smb.conf配置文件有三个重要的节:[global],[homes],[public] 

#Global (全局)参数,该部分设置整个系统的规则,定义了一些公共变量。 

[global] 

netbios >#定义Windows系统“网上邻居”中所见的机器名。 

workgroup = workgroup 

#定义主机所在网络上所属的NT域名或者工作组名称 

server string = FunField 

#对主机的说明信息,缺省是:Samba Server 

hosts allow = 192.168.1. 192.168.3. 

#它允许设置哪些机器可以访问samba服务器 

guest account = nobody 

invalid users = root 

#定义smb用户名称。 

security = user 

#定义访问权限。访问权限由低到高有三种:share、user和server。其中share安全级别最低,user模式要求连接时输入用户名和口令 

encrypt passwords = true 

#设置是否需要加密口令。因为Windows系列默认采用加密口令传输,而Linux默认采用非加密口令传输,为保证smb网络用户的正常登录,在user安全级下设置为加密,在share 安全级下可不设。 

smb passwd file = /etc/samba/smbpasswd 

#由命令cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd产生。 

interfaces = 192.168.1.50/24 

#配置smb服务所使用的网卡IP以及子网掩码,如果有两个以上网卡,要全部列出。 

name resolve order = host dns bcast 

#设定smb服务时,从机器netbios名称到IP地址的解析方式,默认顺序为host lmhosts wins bcast。如果局域网内有DNS,可设置为host dns bcast。 

wins support = no 

#设置是否有wins支持。 

public = yes 

#为yes时,“网上邻居”中可见该资源,否则不可见。 

browseable = yes 

#为yes时,“网上邻居”中可见该资源,否则不可见。 

#printing = bsd 

# 指定Linux使用哪个打印机守护进程(bsd、sysv、hpux、aix、qnx、plp),同时向samba说明命令lpr和lpq的缺省值。 

#printcap ># 定义了打印配置文件所处的位置。 

load printers = no 

# 表明是否加载printcap 定义的所有打印机以供浏览。 

log file = /var/log/samba/log.%m 

# 定义日志文件 

max log 'size' = 1000 

#日志文件最大1000k (单位是KB) 

username map = /etc/samba/smbuser 

#允许管理员指定一个映射文件,该文件包含了在客户机和服务器之间进行用户映射的信息。 用户映射经常在windows 和linux 主机间进行。 两个系统拥有不同的用户账号,用户映射的目的是将不同的用户映射成为一个用户,便于共享文件。 

#*********************************************************************# 

[homes] 

#该部分通常定义了Linux机器上共享的目录资源,其名字可以由用户确定。段中的设置控制了每一个用户目录的共享权限。 

comment = Home Directories 

#设定在浏览本机资源时,出现在指定资源旁边的字符串。 

browseable = yes 

#控制一项服务是否能够出现在网上邻居中,no意味着这个目录将在浏览时显示为要验证的用户名称,yes则显示 homes 和要验证的用户名称的共享目录。 

writable = yes 

#控制是否允许通过验证的用户对主目录有写入的权限,但最终取决于该目录的 Unix 权限。无论 Unix 的权限怎样, 设置 writable = no 后, 主目录只能是只读的。 

create mask = 0700 

directory mask = 0700 

#若上面是可写的,则设置写文件和目录时的属性 

#******************************************************************# 

[public] 

#用来指定某一特定用户组或者用户拥有访问权限的目录配置分,配置共享目录部分 

comment = Public Stuff 

# 说明部分 

path = /home/samba 

#共享的Linux目录 

writable = no 

#写权限 

printable = no 

#打印权限 

用于用户映射的文件/etc/samba/smbuser 

# smb.conf中全局参数 “username map” 指定的映射文件 

root = admin administrator 

#Map Windows admin to root 

hawk = girl 

#Map the member of girl to hawk 

snake = boy 

# 等号左边是单独的Linux账号,等号右边是要映射的账号列表。服务器逐行分析映射文件,如果提供的账号和某行有右侧列表中的账号匹配,就把它替换为等号左边的账号。

文档

虚拟机LINUX与主机WINDOWS文件共享如何实现

虚拟机LINUX与主机WINDOWS文件共享如何实现装个samba一般来说,安装samba后,有一个smb.conf(配置文件)的例子,修改一下就好了。WINDOWS下的网上邻居使用是NetBIOS协议,LINUX下使用功能强大的SAMBA可以实现与WINDOWS机子共享。下面具体就我的理解具体说一下。首先当然是你必须安装了SAMBA#apt-getinstallsambasamba-commonsmbclientsmbfs其实使用SAMBA分成两个方面,一个是linux机子上的资源给WIND
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top