linux下samba服务器的配置
时间:2009-03-23 来源:sjhf
samba服务器的配置 RHEL4系统中默认安装了samba服务器和客户机的所有软件包,如果需要可以使用rpm命令进行安装,在第2张光盘中 RHEL4提供了如下4个与samba服务相关的软件包。 1、samba-common-3.0.10-1.4E.i386.rpm:此软件包提供了samba服务器和客户机中都必须使用的公共文件,因此该软件包必须在samba服务器和客户机软件包之前安装。 2、samba-3.0.10-1.4E.i386.rpm:此软件包包括了samba服务器程序的所有文件。 3、samba-client-3.0.10-1.4E.i386.rpm:此软件包提供了samba客户机的所有文件。 4、system-config-samba-1.2.21-1.noarch.rpm:该软件包中提供了Red Hat公司专门为samba服务器管理编写的图形界面的管理程序,该程序是Red Hat系统工具中的一部分。 首先给samba服务器配置一个静态永久ip地址 # vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=static IPADDR=172.16.16.222 NETMASK=255.255.0.0 GATEWAY=172.16.16.1 ONBOOT=yes TYPE=Ethernet 重启配置文件使之生效 # /etc/init.d/network restart Shutting down interface eth0: [ OK ] Shutting down loopback interface: [ OK ] Setting network parameters: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface eth0: [ OK ] 然后查看samba相关软件包是否被安装 # rpm -qa | grep samba samba-common-3.0.10-1.4E samba-client-3.0.10-1.4E 如果没安装就挂载第2张光盘,把软件包安装上去 # mount /dev/cdrom /media/cdrom # cd /media/cdrom/RedHat/RPMS/ # rpm -ivh samba-3.0.10-1.4E.i386.rpm warning: samba-3.0.10-1.4E.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e Preparing... ########################################### [100%] 1:samba ########################################### [100%] # rpm -ivh system-config-samba-1.2.21-1.noarch.rpm warning: system-config-samba-1.2.21-1.noarch.rpm: V3 DSA signature: NOKEY, key ID db42a60e Preparing... ########################################### [100%] 1:system-config-samba ########################################### [100%] # rpm -qa | grep samba samba-3.0.10-1.4E samba-common-3.0.10-1.4E system-config-samba-1.2.21-1 samba-client-3.0.10-1.4E 建立系统用户和samba用户账号 # useradd qq # smbpasswd -a qq # useradd ww # smbpasswd -a ww # cat /etc/samba/smbpasswd qq:503:CCF9155E3E7DB453AAD3B435B51404EE:3DBDE697D71690A769204BEB12283678:[U ]:LCT-4A1B72DA: ww:504:2ECDB8ACB87B6D97AAD3B435B51404EE:5A420E7750B39BE09FA29D314FA4B51C:[U ]:LCT-4A1B732F: 配置共享目录,在samba服务器的默认设置中没有公共目录的设置,需要手动添加。 在对smb.conf文件进行设置之前需要先建立公共目录在linux系统中的录"/home/public",并设置该目录的属主和属组为nobody。 # mkdir /home/public # chown nobody.nobody /home/public # ls -ld /home/public drwxr-xr-x 2 nobody nobody 4096 May 26 12:44 /home/public 下面修改配置文件 # vi /etc/samba/smb.conf [public] //为共享目录的名称 path=/home/public //为共享目录对应的linux系统目录 comment = software //设置对该共享目录的说明性的文字 public=yes //设置为yes时表示该目录对于所有samba用户时可见的 only guest=yes //设置为yes时表示所有用户在使用该共享目录时的用户身份都是guest,即linux系统用户nobody writable=yes //设置为表示该共享目录对于用户可写 在对smb.conf文件完成所有的配置以后,可以使用testparm命令对该配置文件进行测试,testparm命令是samba服务器软件包中提供的配置文件测试工具,可以对smb.conf配置文件的语法进行检测,并显示当前配置的清单。 # testparm Load smb config files from /etc/samba/smb.conf Processing section "[homes]" Processing section "[printers]" Processing section "[public]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions # Global parameters [global] workgroup = MYGROUP server string = Samba Server log file = /var/log/samba/%m.log max log size = 50 socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 printcap name = /etc/printcap dns proxy = No idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 cups options = raw [homes] comment = Home Directories read only = No browseable = No [printers] comment = All Printers path = /var/spool/samba printable = Yes browseable = No [public] comment = software path = /home/public read only = No guest only = Yes guest ok = Yes 启动samba服务器 使用下列命令启用samba服务器 # service smb start 停止使用: # service smb stop 重新启动使用: ]# service smb restart 可以使用smbclient命令配合"-L"选项显示指定samba服务器中的共享资源列表 -U可以指定用户 # smbclient -L 172.16.16.222 Password: # smbclient -L 172.16.16.222 -U qq Password: 指定用户身份登录到指定服务器的指定的共享目录中。进入共享目录后,可以使用put命令把执行smbclient命令所在主机中的文件上传到samba服务器的共享目录中;使用get命令可以将服务器共享目录中的指定文件下载到执行smbclient命令的主机中。 # smbclient //172.16.16.222/public -U qq Password: 要退去使用quit。 使用smbstatus命令显示当前主机中的samba服务器的连接状态信息。 # smbstatus 使用smbmount命令可以将samba共享目录挂载到linux系统中,可以使用--help查看详细参数 # smbmount --help # smbmount //172.16.16.222/public /mnt 其中172.16.16.222为samba服务器的ip地址,public为共享目录,/mnt为本地挂载点 卸载的话直接使用umount即可 # umount /mnt 当然也可以挂载和卸载windows下的共享目录,方法是一样的 使用mount命令调用smbmount命令也可以实现windows共享目录的挂载,不过需要指定-t命令选项指定文件系统类型为smbfs,并使用-o指定使用的用户账号 ]# mount -t smbfs -o username=qq //172.16.16.222/public /mnt Password: # cd /mnt 在windows系统中,如果要访问linux主机中的共享目录的话,可以在"运行"中输入"\\服务器ip地址",并选择"确定",此时会提示输入网络密码,只要输入samba账号和密码即可。 |
相关阅读 更多 +