Linux下Samba服务器搭建

linux文件共享之samba服务器 ——ubuntu


宗旨:技术的学习是有限的,分享的精神的无限的。



关闭LINUX防火墙命令: #ufwdisable 然后就在windows下ping一下linux的IP,如果能ping通,就可以继续下面的内容,如果ping不通就再找找原因

 注:ubuntu 12.04已经安装了最新版本的samba服务器,无需安装。如果使用12.04以前的版本,最好是按下边的方法升级一下samba,12.04版本无需下列操作


Samba 是一款功能强大的共享工具,可以实现与windows的共享,就是我们经常在windows计算机之间使用的网上邻居功能,可以共享文件和打印机等。今天要介绍的是在ubuntu 12.04 中安装和设置,当然也可以在以前的版本上使用。

1 安装Samba文件

  我们需要做的第一件事是安装Samba,你可以在Ubuntu软件中心搜索软件,然后安装。如果你想通过终端安装,可复制这个命令:

  sudo apt-get install sambasamba-common

2 为配置工具安装一些依赖包(不要忘记安装python-glade2)

  sudo apt-get install python-glade2

3 安装 Samba服务器配置工具 :

  安装 samba 系统配置图形界面工具

  sudo apt-get installsystem-config-samba

4 添加一个 Linux/Unix user:
      假定用户名为pirat9,也可以用一个已存在的用户名,若使用已存在的用户名,则直接跳到第6步,在设定访问权限时,选择已存在的用户。

  adduser pirat9

5 为用户 pirat9设置密码:

  passwd pirat9

6 现在打开 samba配置工具。

Linux下Samba服务器搭建_第1张图片

samba configuration tool

7 添加共享文件夹并设置权限访问。

Linux下Samba服务器搭建_第2张图片

  share

  设置权限访问  

Linux下Samba服务器搭建_第3张图片

8 连接到共享前,你必须创建samba用户:

  sudo smbpasswd -a pirat9

  New SMB password

  retype New SMB Password
      设置完成后重启一下虚拟机

9 WINDOWS下访问:
      打开一个窗口,输入服务器地址:\\192.168.146.128
     会弹出输入用户名和密码的窗口,输入用户名和密码即可。

  

Samba服务器——redhat

1.检测安装Samba服务

  (1).检查Samba服务包是否已安装:

  rpm -qa | grep Samba

  (2).如未安装,则插入第一张安装盘,执行:

  mount /mnt/cdrom
  cd/cdrom/Redhat/RPMS
  
  (3).进入目录后安装Samba文件:

  注意:运Samba至少需要三个文件,分别为:
  Samba-common-2.2.7a-7.9.0.i386.rpm    //服务器和客户端均需要的文件
  Samba-2.2.7a-7.9.0.i386.rpm                  //服务器端文件
  Samba-client-2.27a-7.9.0.i386.rpm          //客户端文件
  安装上述3个文件.
  rpm-ivh Samba-common-2.2.7a-7.9.0.i386.rpm     //另外两个省略不写

  (4).安装完成后弹出光驱:

  cd;eject

2.设置密码文件.

  (1).此设置的作用是将Linux中的系统用户(/etc/passwd)导入到Samba密码文件中

  (/etc/Samba/smbpasswd)
  cat/etc/passwd | mksmbpasswd.sh > /etc/Samba/smbpasswd

  (2).接下来给smbpasswd等文件及文件夹设置访问权限.

  chown root.root /etc/Samba/smbpasswd
  chmod600 /etc/Samba/smbpasswd
  chmod600 /etc/Samba
  查看一下:
  ll-d Samba

  (3).如果您想手动添加一个用户,则首先要保证Linux中该用户存在,步骤:

  useradd liu
  passwdliu
  smbpasswd-a liu    //此步为添加Samba用户

3. 配置/etc/Samba/smb.conf文件  
  虽然文件内容众多,但需要改动的不多,一般为按需所配:

  (1).修改[global](全局配置参数)

  workgroup = workgroup    //工作组名称
  serverstring = Samba server %v at %h     //设置服务器名称.%v为版本号,%h为运行
  smb服务的主机名
  hostallow = 192.168.80. 192.168.70.    //允许访问服务器的主机
  clientcode page = 939   //支持简体中文共享名
  上述四条为比较重要的.其他配置大家可按需按情况修改.
  
  (2).创建共享文件夹.

  由于用户使用权限有多种(读,写,执行),而又访问者又有多种(用户,组),所以创建共享资源的访问方式有多种,下面暂举几例:

  例一: 建立资源,使登陆到该服务器的用户均有权使用该空间(包括读,写)

  <1>.编辑smb.conf文件

  vi smb.conf
  [resource]
  
  comment= local resource
  path= /var/Samba/resource
  readonly = no
  public= yes                      //允许guest用户访问
  
  <2>.建立共享文件夹

  mkdir -p /var/Samba/resource

  <3>. 由于任何人都能使用,所以得给该文件夹设置访问权限.

  chmod 707 /var/Samba/resource
  
  <4>.如果想在该文件夹中放置预共享文件,而又不想花

  时间从别的文件夹中cp过来,此时可以使用指针.
  比如想共享/usr/share/doc中的文件,则可以:
  ln-s /usr/share/doc /var/Samba/resource/doc
  进入/var/Samba/resourcels一下,是不是出现指针文件了!

  例二: 建立一资源,只能让用户liu全权访问.

  <1>. 编辑smb.conf文件
  vismb.conf
  [liu]
  comment= liu
  path= /var/Samba/liu
  vaildusers = smz           //只允许liu访问
  public= no
  writable= yes

  <2>. 建立共享文件夹

  mkdir -p /var/Samba/liu

  <3>. 由于只能让liu使用,所以得给该文件夹设置访问权限.

  chown liu.liu /var/Samba/liu
  chmod700 /var/Samba/liu
  此时该文件夹属于liu用户,并且只能由liu用户访问.

  例三: 建立一资源,只能让root,zhang和wang访问.

  <1>. 编辑smb.conf文件

  vi smb.conf
  [zhangwang]
  comment= zhang wang
  path= /var/Samba/liu
  vaildusers = zhang wang
  public= no
  writable= yes
  creatmask = 0707

  <2>. 建立共享文件夹

  mkdir -p /var/Samba/zhangwang

  <3>. 给该文件夹设置访问权限.

  chmod 707 /var/Samba/zhangwang
  此时该文件夹只能root,zhang,wang访问了.

  例四: 建立一资源,让指定的组group2中的用户访问.

  <1>. 编辑smb.conf文件

  vi smb.conf
  [group]
  comment= group2
  path= /var/Samba/group2
  public= yes
  writable= yes
  writelist = @group2         //设置读写访问用户列表
  
  <2>.建立共享文件夹
  
  mkdir-p /var/Samba/group2

  <3>. 给该文件夹设置访问权限.

  chown group2.group2 /var/Samba/group2
  chmod770 /var/Samba/group2
  此时该文件夹只能由group2中的用户访问了.

  (3). 以上为创建共享文件夹,下面为创建共享打印机.

  <1>. 配置打印机的方面有很多,比如使用redhat-config-printer命令即可调出配置菜单.

  <2>. 当然smb.conf中也要设置啊:

  [global]
  printcapname = /etc/printcap     //配置文件路径
  [printers]
  writable= no
  guestok = yes                    //guest可用
  browseable= no                   //不可浏览
  ptrintable= yes
  path= /var/spool/Samba          //队列位置
  printeradmin = root             //打印机管理员
  其他配置不变或按情配置
  接下来再添加print驱动设置:
  [print$]
  comment= printer drivers
  path= /etc/Samba/drivers
  browseable= yes
  guestok = no
  readonly = yes
  
  writelist = root
  接着创建drivers文件夹:mkdir-p /etc/Samba/drivers
  最后给用户准备打印机驱动,并启动打印共享:
  cupsaddsmb-a -U root       //-a为共享所有打印机-U为以root身份执行
  cupsaddsmb命令

4. 测试并启动Samba服务器.

  testparm   //测试
  servicesmb start
  pstree| grep mbd   //查看是否启动

5. 访问Samba

  (1). 从Windows端访问.

  使用"网络邻居"访问即可.

  (2). 访问时可以使用IP地址,也可以使用主机名访问.

  vi /etc/Samba/lmhosts
  192.168.80.35      smz_f91           //创建主机名与IP的映射
  访问时,使用smbclient命令,使用方法如下:
  smbclient-L IP/主机名[-U 用户名]              //浏览Linux/Windows资源列表
  smbclient-L 192.168.80.35                                //浏览Linux
  smbclient-L 192.168.80.45 -U administrator      //浏览Windows
  smbclient//IP/共享文件夹名-U 系统用户名        //详细查看某一共享资源的内容
  smbclient//192.168.80.45/123 -U root/administrator     //以root或administrator身份
  登陆45主机访问共享文件夹123
  至此,Samba服务器的简单创建到此结束。

 

 

 

你可能感兴趣的:(samba服务器)