在Ubuntu中设置samba共享可读写文件夹

在Ubuntu中设置samba共享可读写文件夹

  首先当然是要安装samba了,呵呵:

  sudo apt-get install samba
  sudo apt-get install smbfs

  下面我们来共享群组可读写文件夹,假设你要共享的文件夹为: /home/ray/share

  首先创建这个文件夹

  mkdir /home/ray/share
  chmod 777 /home/ray/share

  备份并编辑smb.conf允许网络用户访问

  sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
  sudo gedit /etc/samba/smb.conf

  搜寻这一行文字

  ; security = user

  用下面这几行取代

  security = user
  username map = /etc/samba/smbusers

  将下列几行新增到文件的最后面,假设允许访问的用户为:newsfan。而文件夹的共享名为 Share

  [Share]
  comment = Shared Folder with username and password
  path = /home/ray/share
  public = yes
  writable = yes
  valid users = newsfan
  create mask = 0700
  directory mask = 0700
  force user = nobody
  force group = nogroup
  available = yes
  browseable = yes

  然后顺便把这里改一下,找到[global]把 workgroup = MSHOME 改成

  workgroup = WORKGROUP
  display charset = UTF-8
  unix charset = UTF-8
  dos charset = cp936

  后面的三行是为了防止出现中文目录乱码的情况。其中根据你的local,UTF-8 有可能需要改成 cp936。自己看着办吧。

  现在要添加newsfan这个网络访问帐户。如果系统中当前没有这个帐户,那么

  sudo useradd newsfan

  要注意,上面只是增加了newsfan这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。

  现在要新增网络使用者的帐号:

  sudo smbpasswd -a newsfan
  sudo gedit /etc/samba/smbusers

  在新建立的文件内加入下面这一行并保存

  newsfan = "network username"

  如果将来需要更改newsfan的网络访问密码,也用这个命令更改

  sudo smbpasswd -a newsfan

  删除网络使用者的帐号的命令把上面的 -a 改成 -x

  sudo testparm
  sudo /etc/init.d/samba restart

  最后退出重新登录或者重新启动一下机器。
你的chmod 777 /home/ray/share 最好设成chmod 711 /home/ray/share 因为给的权限越大就越不安全。