分类: LINUX
2009-04-26 15:36:24
以root根用户进行操作,如果您不是,请在每条命令前加上sudo
步骤1:安装samba
#apt-get install samba
#apt-get install smbfs
步骤2:添加linux用户
#useradd user1 //添加用户名user1
#passwd user1 //给用户名user1添加密码
#mkdir /home/user1 //建立user1的home目录,如果不用这个用户名来登陆linux,此步骤不是必需
#chown -R user1:user1 /home/user1 //给user1的home目录设置好权限
步骤3:给samba服务器添加用户
说明:登陆samba的用户必须已经是linux中的用户
#smbpasswd -a user1 //添加并给user1设置samba密码
步骤4:smb.conf设置
#cd /etc/samb //进入设置目录
#mv smb.conf smb.conf.bak //做好备份,直接将系统默认配置文件改名
#vim smb.conf //建立和配置smb.conf文件
[global]
workgroup=x1 //X1为你局域网中的工作组名
server string=x2 //x2为你linux主机描述性文字,比如:samba server。
security=user //samba的安全等级,user代表需要输入用户名和密码,改成share则不需要输入用户名和密码
[x3] //方框号中的x3这个名字可以随便取,只是在win的网上邻居中显示的共享文件夹名
path=/home/x4 //x4为你要共享的文件夹名,在共享前还要建立这个文件夹,并设好权限以便访问,下面会说明。
valid users=user1 //这个x4共享目录只允许user1这个用户进入
public=no //no表示除了user1这个用户,其它用户在进入samba服务器后看不见x4这个目录,如果为yes,虽然能看见x4这个目录,但除了user1这个用户能进入这个目录,其它人进不了。
writable=yes //允许user1在x4目录中进行读和写操作,反之no
//存盘退出
#testparm //检查一下语法错误,比如拼错
步骤5:建立共享目录
#mkdir /home/x4
#chown -R user1:user1 /home/x4 //因为是root建立的目录,其它用户只有读的权限,所还得把权限改一下。当然也可以简单的用#chmod 777 /home/x4。还有个问题就是共享里目录的文件如果有些能访问有些不能访问,那肯定也是权限的问题,进入/home/x4,直接#chmod 777 *来解决。
步骤6:重启samba服务
#/etc/init.d/samba restart
设置samba服务要注意以下两点(即两个两次):
1.添加两次用户:一次添加系统用户#useradd user1;再一次是添加samba用户#smbpasswd -a user1;
2.设置两次权限:一次是在smb.conf中设置共享文件夹的权限:再一次是在系统中设置共享文件夹的权限#chmod 777 文件夹名。
按照楼主的做法设置, 用WINDOWS登陆到samba的时候报错, 显示如\\10.x.x.x 无法访问, 你可能没有权限使用网络资源.... 这样的错误. 请问这是怎么回师?
如果设置passdb backend = tdbsam 则可以访问
passdb backend = tdbsam
用tdbsam的时候,密码文件是放在 /var/lib/samba/passdb.tdb
而没有这句,当然也就找不到SMB用户和密码,即提示没用权限了。