samba

 

一、samba简介

  sabma是一个跨平台共享文件及打印机等资源的共享服务,它是由SMB协议实现的,工作于C/S模型,通过NetBIOS协议可以实现Windows与Linux平台共享资源。

  CIFS是CommonInternet File System即Internet文件系统是在Windows主机之间进行网络文件共享的一个服务,监听在137/udp,138/udp,139/tcp,445/tcp,其中137、138是NetBIOS在Windows中基于主机实现互相通信的机制。

 

二、在Linux使用Windows共享的文件

1、在Windows系统中创建一个或几个共享的用户

此次实验使用的是Windows 7的系统,创建用户的方法右击“计算机”---管理------本地用户和组----用户,在用户列表的空白区域右击选择新用户。根据需要创建用户即,这里创建一个linux的用户,密码同用户名。

2、选择在Windows中共享的目录

在确认要共享的目录之后,右击目录选择属性,在属性对话框中选择共享选项,选择共享按钮即可共享此目录,在文件共享对话框中选择要共享的用户,在用户列表下拉表中选择刚才创建的linux用户,在权限级别中选择“读取/写入”权限,点击共享。也可以选择高级共享对共享的权限等操作。

wKioL1VYBsKTzrtoAAe7YC-XDbM689.bmp

3、在Linux中查看Windows的共享

格式:smbclient -L HOST -U USERNAME

指定主机IP和用户名

[root@stu09 ~]# smbclient -L 172.16.9.7 -Ulinux
Enter linux's password: 
Domain=[ZHENGHONG-PC] OS=[Windows 7Ultimate 7600] Server=[Windows 7 Ultimate 6.1]
 
    Sharename       Type     Comment
    ---------       ----     -------
    ADMIN$          Disk      远程管理
    C$              Disk      默认共享
    D$              Disk      默认共享
    E$              Disk      默认共享
    F$              Disk      默认共享
    G$              Disk      默认共享
    H$              Disk      默认共享
    I$              Disk      默认共享
    IPC$            IPC       远程 IPC
    J$              Disk      默认共享
    K$              Disk      默认共享
    test            Disk                #即为我们刚才共享的目录
    Users           Disk      
session request to 172.16.9.7 failed(Called name not present)
session request to 172 failed (Called namenot present)
session request to *SMBSERVER failed(Called name not present)
NetBIOS over TCP disabled -- no workgroupavailable

4、smbclient命令交互式

可以使用smbclinet交互式的登录指定要共享的目录中进行操作,删除、创建、上传等,不过要根据用户的权限来进行的。

[root@stu09 ~]# smbclient //172.16.9.7/test-U linux
Enter linux's password: 
Domain=[ZHENGHONG-PC] OS=[Windows 7Ultimate 7600] Server=[Windows 7 Ultimate 6.1]
smb: \> ls
 .                     D        0  Fri May 15 22:04:53 2015
 ..                     D        0  Fri May 15 22:04:53 2015
         46084blocks of size 1048576. 41421 blocks available
smb: \> lcd /etc   #切换本地的目录至/etc
smb: \> put fstab   #上传fstab文件
putting file fstab as \fstab (147.3 kb/s)(average 147.3 kb/s)
smb: \> put issue
putting file issue as \issue (33.5 kb/s)(average 109.4 kb/s)
smb: \> ls      #查看文件
 .                   D        0  Fri May 15 22:05:17 2015
 ..                  D        0  Fri May 15 22:05:17 2015
 fstab                A      905  Fri May 15 22:05:11 2015
  issue               A      103 Fri May 15 22:05:17 2015
 
     46084blocks of size 1048576. 41421 blocks available


注意:可以输入help来获取smbclinet交互式的帮助信息

5、在Linux挂载Windows共享的目录

格式:mount-t cifs    //SERVER/shared_name/mount_point   -o username=USERNAME,password=PASSWORD

[root@stu09 ~]# mount -t cifs//172.16.9.7/test /mnt -o username=linux,password=123456
[root@stu09 ~]# mount|tail -1
//172.16.9.7/test on /mnt type cifs (rw)

 

三、在Windows中使用Linux共享的文件

1、安装samba程序

安装samba直接使用yum安装即可

yum -yinstall samba

安装完之后生成的服务脚本文件/etc/rc.d/init.d/nmb和/etc/rc.d/init.d/smb文件,主配置文件为/etc/samba/smb.conf文件,samba使用的是账号为Linux的系统用户,密码是samba服务自己的密码文件,使用smbpasswd命令为账号生成密码。

2、smb的配置文件

配置文件分成全局设定和某特定共享的设备,其中特定的共享设备可以是私有家目录,打印机共享,自定义共享。

3、共享/shared/test目录

(1)创建/shared/test目录

[root@stu09 ~]# mkdir -p /shard/test

(2)创建共享认证的用户名及设置密码

[root@stu09 ~]# useradd smbtest
[root@stu09 ~]# smbpasswd  -a smbtest
New SMB password:
Retype new SMB password:
Added user smbtest.

(3)更改共享目录的权限

在访问共享目录的权限是由samba的权限加系统的权限的交集所决定的。

[root@stu09 ~]# setfacl -m u:smbtest:rwx/shared/test
[root@stu09 ~]# getfacl  /shared/test
getfacl: Removing leading '/' from absolutepath names
# file: shared/test
# owner: root
# group: root
user::rwx
user:smbtest:rwx
group::r-x
mask::rwx
other::r-x

 

(4)配置smb.conf配置文件

通用自定义的选项来实现:

选项格式说明:

[shared_name]

path = /path/to/share_directory       #共享目录

commnet = Commnet String             #备注信息

guest ok = {yes|no}                 #是否允许来宾用户访问

public =  {yes|no}                #是否公开

writable = {yes|no}                #是否可写

read only  =  {yes|no}             #是否可读

write list = +staff                 #可写用户列表,“+”表示组名

 

更改[global]为workgroup =WORKGROUP,然后在文件尾部添加如下内容

   [shared]
       comment = My shard testing
       path = /shared/test
       guest ok = yes
       writable = yes

(5)启动samba服务

(1)配置文件语法检查

在启动服务之前可以使用testparm命令进行配置文件语法检测

[root@stu09 ~]# testparm 
Load smb config files from/etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) tominimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[shared]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your servicedefinitions    #需要按下回车才能出现以下内容
 
[global]
    serverstring = Samba Server Version %v
    logfile = /var/log/samba/log.%m
    maxlog size = 50
    idmapconfig * : backend = tdb
    cupsoptions = raw
 
[homes]
    comment= Home Directories
    readonly = No
    browseable= No
 
[printers]
    comment= All Printers
    path= /var/spool/samba
    printable= Yes
    printok = Yes
    browseable= No
 
[shared]
    comment= My shard testing
    path= /shared/test
    readonly = No
    guestok = Yes


(2)启用samba服务

[root@stu09 ~]# service nmb start;servicesmb start
Starting NMB services:                           [  OK  ]
Starting SMB services:                           [  OK  ]


(6)在Windows访问共享目录

在Windows的资源管理器中的地址栏输入服务器的地址,格式 如下:

\\SERVER_IP\

后会出现登录提示对话框,输入用户名和密码即可登录查看共享的目录。就可以进行文件的创建、删除等操作。

wKiom1VYBkriWhL4AAY8yGm50-4625.bmp

 

四、samba的图形界面

samba的图形界面需要安装samba-swat程序,图形化samba是Web页面界面,它是瞬时守护进程,由超级守护进程xintetd代为管理。在图形界面中可以对samba的配置文件进行管理操作,图形界面是通过网页的形式,此图形界面功能强大。

(1)安装samba-swat程序

yum install samba-swat -y

(2)配置/etc/xinetd.d/swat文件

根据需要进行修改

service swat
{
       port            = 901
       socket_type     = stream
       wait            = no
       only_from       = 172.16.0.0/16     #只允许172.16.0.0/16的网络访问
       user            = root
       server          = /usr/sbin/swat
       log_on_failure  += USERID
       disable         = no        #开启服务
}


(3)启动xinetd服务

[root@stu09 ~]# service xinetd start
Starting xinetd:

(4)访问samba的图形界面

要访问samba的图形界面只需要在浏览器输入http://SERVER_IP:901。

 

wKioL1VYCHDDbc2MAAtKfFkFAaU854.bmp

在第一次使用samba的图形界面时需要输入操作系统root账号和密码,推荐登录后更改登录的用户名和密码。第一次登录建议使用本地进行登录,更改密码之后在进行远程登录配置samba服务。

 

 


你可能感兴趣的:(windows,samba,共享资源)