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 samba samba-common
2 为配置工具安装一些依赖包(不要忘记安装python-glade2)
sudo apt-get install python-glade2
3 安装 Samba服务器配置工具 :
安装 samba 系统配置图形界面工具
sudo apt-get install system-config-samba
4 添加一个 Linux/Unix user:
假定用户名为pirat9,也可以用一个已存在的用户名,若使用已存在的用户名,则直接跳到第6步,在设定访问权限时,选择已存在的用户。
adduser pirat9
5 为用户 pirat9设置密码:
passwd pirat9
6 现在打开 samba配置工具。
samba configuration tool
7 添加共享文件夹并设置权限访问。
share
设置权限访问
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服务器的简单创建到此结束。