① 【急】linux主机 samba设置问题!
小弟自己通过实践终于配置成功了samba,写下配置过程,希望高手多提意见,本文有个遗憾我的rpm安装samba打印机共享成功,用源码安装打印机没有成功,非常可惜。
??? 先学习一些基础。
??? samba的核心是两个守护进程smbd和nmbd程序,在服务器启动到停止期间持续运行。Smbd和nmbd使用的全部配置信息全都保存在smb.conf文件中。Smb.conf向smbd和nmbd两个守护进程说明输出什么以便共享共享输出给谁及如何进行输出。Smbd进程的作用是处理到来的SMB软件包,为使用该软件包的资源与Linux进行协商,nmbd进程使其它主机(或工作站)能浏览Linux服务器。
??? 如果安装时用rpm安装,那么启动samba不用service smb start,用service nmbd start,service smbd start也可以的。
??? 在smb.conf文件中,注释行以“#”开头,同时每项中英文字母不区分大小写,在一行最后字符尾加
??? “\”,可将一行分成多行。用“;”开头的行,是可改变的配置,将“;”去掉时,该配置将取作用。
??? [global](全局参数的设置,它对samba的功能具有很大的影响,主要用来设置整个系统规则。
??? workgroup= 这是你在windows中的域。
??? server string= 这是在windows中看到你的samba的解释。
??? netbios name =最好是你的机器名,如果把改句注消,默认的是你LINUX机器名,不过,最好还是自己填上
??? dos charset=cp936
??? unix charset=cp936 加上这二句就可以正确显示中文了。
??? hosts allow 允许登录的linux-samba的主机名单,用IP地址给出,多个IP地址用空格分开,不在名单中的主机将不能得到samba提供的服务,这也是网络安全的一个方面。
??? printcap name 指定printcap文件地址,通常为/etc/printcap,包含了linux打印机的配置信息。
??? load printers 允许使用共享打印机时,默认值为yes。
??? printing 如果使用的打印机是非标准的,那么应该指出打印机系统类型。
??? log file = /usr/local/samba/var/log.%m
??? max log size = 0
??? 上面这两行则是Samba日志的相关定义。其记录文件的位置是放在/var/log/samba/%m.log,安装目录不一样,日志可不一样,后面的一条是定义日志记录文件的大小,单位是KB,如果是0的话就不限大小。
??? guest acount 来宾帐户,表示用哪一个Linux用户作为所要的客户连接,定义Samba缺省的用户账号,这个账号必须在/etc/passwd中。
??? security 指定安全模式。大多数用户使用user级的安全模式,samba用本地linux口令文件验证。
??? security = security_level
??? 定义Samba的安全级别,按从低到高分为四级:share,user,server,domain。它们对应的验证方式如下:
??? share:没有安全性的级别,任何用户都可以不要用户名和口令访问服务器上的资源。
??? user:samba的默认配置,要求用户在访问共享资源之前资源必须先提供用户名和密码进行验证。
??? server:和user安全级别类似,但用户名和密码是递交到另外一个服务器去验证,比如递交给一台NT服务器。如果递交失败,就退到user安全级。
??? domain:这个安全级别要求网络上存在一台Windows的主域控制器,samba把用户名和密码递交给它去验证。
??? 后面三种安全级都要求用户在本linux机器上也要系统帐户。否则是不能访问的
??? smb passwd file=/etc/samba/smbpasswd (设置smb密码文件的位置)
??? username map =/etc/smbusers
??? encrypt passwords =no 采用的时明文密码验证,如果是加密的,就改为yes
???
? 记得某月的某一天,我下定决定安装任何软件包只用源码,不用rpm。虽然很麻烦,但是对于了解linux内部有些帮助。
??? 首先我们创建一个文档,边安装配置samba,边写教程。
??? 从www.samba.org下载samba最新源码包,我下载的是samba-3.0.7.tar.gz,把它放在我的目录的中/root/lova/samba下。
??? tar -zxvf samba-3.0.7.tar.gz 解压得到samba-3.0-7
??? cd samba-3.0.7
??? cat README 先看说明,可惜E文太差,不太懂,直接安装吧。
??? find . -name configure
??? ./source/configure 原来藏在这
??? cd source/
??? mkdir /usr/local/samba 创建安装目录
??? ./configure --prefix=/usr/local/samba/ 安装到/usr/loca/samba
??? make
② 如何搭建samba服务器
samba安装和启动
samba的源码安装采用最新版本samba-4.1.14,官网下载。安装过程如下:
$ sudo mkdir /usr/local/samba-4.1.14
$ ./configure --prefix=/usr/local/samba-4.1.14
...
Checking for program xsltproc : not found
Checking for program python : /usr/bin/python
Checking for program python : /usr/bin/python
Checking for program python : /usr/bin/python
Checking for Python version >= 2.5.0 : ok 2.7.6
Checking for library python2.7 : not found
Checking for library python2.7 : yes
Checking for program python2.7-config : not found
Checking for program python-config-2.7 : not found
Checking
for custom code
: Could not find the python development headers
/home/anonymalias/Downloads/samba-4.1.14/wscript:100:
error: the configuration failed (see
'/home/anonymalias/Downloads/samba-4.1.14/bin/config.log')
上面错误的原因是samba必须依赖python,执行
$ sudo apt-get install python-dev
后面就是make && sudo make install,安装ok后,安装目录结构如下:
/usr/local/samba-4.1.14$ ls
bin etc include lib private sbin share va
将源码文件下默认的conf文件拷贝到安装目录下的etc目录中
/usr/local/samba-4.1.14$ cp /home/anonymalias/Downloads/samba-4.1.14/examples/smb.conf.default etc/smb.conf
修改smb.conf中配置
global段添加如下字段
[global]
...
netbios name = ubuntu
共享资源字段采用默认配置
[homes]
comment = Home Directories
browseable = no
writable = yes
# NOTE: If you have a BSD-style print system there is no need to
# specifically define each indivial printer
[printers]
comment = All Printers
path = /usr/spool/samba
browseable = no
# Set public = yes to allow user 'guest account' to print
guest ok = no
writable = no
printable = yes
添加用户名为Ubuntu的账户,
/usr/local/samba-4.1.14$ sudo bin/smbpasswd -a ubuntu
New SMB password:
Retype new SMB password:
samba服务器的用户是依赖于linux的用户,只能添加linux中已存在的用户,否则会出现如下错误:
/usr/local/samba-4.1.14$ sudo bin/smbpasswd -a user1
New SMB password:
Retype new SMB password:
Failed to add entry for user user1.
启动samba 服务
/usr/local/samba-4.1.14$ sudo sbin/nmbd
/usr/local/samba-4.1.14$ sudo sbin/smbd
在Windwos文件管理器或直接win+R,输入server ip,可以看到如下界面:
③ centos 6.5 samba 4 源码编译安装错误
首先确认下你的默认python版本, 必要时将源码中的文件路径指定到指定Python版本,你升级后的Python 可能是一个带有Python.1.23**这样的文件 而安装包调用的是默认的Python版本。
理论来说,你的centos 6.5的Python版本应该较高, 你可能需要安装指定版本的Python包,或者考虑换交新的samba源码包
④ 我用samba源码安装好后,用rpm -qa|grep samba查看是否安装好时,没有任何显示信息这是为什么。
那就用rpm包的啊 我也是用源码包按完没反应 感觉应该是安上了
⑤ 我在虚拟机桌面上下了一个samba源代码包,通过命令想移动到文件夹内,但说我权限不够无法移动怎么解决
你是对目标文件夹没有写权限。请移动到自己建的文件夹或请换root用户进行移动操作。
⑥ 有谁了解过samba源码吗
可以参考kde的smb类,更多的信息可以参考网站 Qt中文文档
⑦ 如何在centos上安装samba图形界面
组成Samba运行的有两个服务,一个是SMB,另一个是NMB;SMB是Samba 的核心启动服务,主要负责建立 Linux Samba服务器与Samba客户机之间的对话, 验证用户身份并提供对文件和打印系统的访问,只有SMB服务启动,才能实现文件的共享,监听139 TCP端口;而NMB服务是负责解析用的,类似与DNS实现的功能,NMB可以把Linux系统共享的工作组名称与其IP对应起来,如果NMB服务没有启动,就只能通过IP来访问共享文件,监听137和138 UDP端口。首先配置这些东西你需要先拥有root权限。
1、关闭防火墙:service iptables stop。
2、关闭SELINUX的强制模式:setenforce 0,这个也不可忽略,如果setenforce 1,就好多共享都不成功了。
3、构建yum仓库。打开目录/etc/yum.repos.d下的CentOS-Base.repo文件。
4、在线Samba安装包,开始安装Samba。
yum install samba samba-client samba-swat,安装过程不再贴图。
5、查看安装情况:rmp -qa|grep samba
7、保存退出:wq,重启samba服务
创建/share目录mkdir /share,并且设置chmod 777 /share——注:这样做有风险,大家先达到共享这一步的效果,以后慢慢学习安全性的考虑。
⑧ 虚拟机中该怎么配置samba源代码安装方式的GCC编译环境
首先读README文件,看有什么注意事项.
编译用GCC,就安装apt-get install gcc
⑨ 虚拟机中samba源代码安装方式如何配置GCC编译环境
cd samba-4.0.3
./configure
make
make install