位置: IT常识 - 正文

Linux中Samba服务器的编译安装以及配置的宏的写法(Linux中samba服务区怎么创建多个用户)

编辑:rootadmin
这篇文章主要介绍了Linux中Samba服务器的编译安装以及配置的宏的写法,包括队Samba字符处理系统的介绍,非常详细,需要的朋友可以参考下... 15-12-24

推荐整理分享Linux中Samba服务器的编译安装以及配置的宏的写法(Linux中samba服务区怎么创建多个用户),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Linux中samba服务区怎么创建多个用户,linux中samba服务器怎么用另一台验证可读可写,linux中samba服务器怎么用另一台验证可读可写,linux中samba服务器的配置文件,linux中samba服务器的优缺点,linux中samba服务器文件共享,linux中samba服务器配置,linux中samba服务器配置,内容如对您有帮助,希望把文章链接给更多的朋友!

编译安装查询系统是否安装samba

代码如下:# rpm -aq | grep samba yast2-samba-client-2.13.36-0.8samba-client-3.0.24-2.23yast2-samba-server-2.13.22-0.8samba-3.0.24-2.23

卸载原有的samba

代码如下:# rpm -e samba-3.0.24-2.23

获取samba源代码http://samba.org/samba/ftp/获取samba源文件包(samba-3.0.24.tar.gz 做实验,路径/home/)解包源文件包

代码如下:# tar -jxf samba-3.0.24.tar.gz

编译安装

代码如下:# cd /home/samba-3.0.24/source/

新版本的source目录有两个:source3目录里是samba-3.x的源文件,source4目录里是samba-4.x的源文件

代码如下:# ./autogen.sh# ./configure

samba默认安装在/usr/local/samba目录可以通过指定prefix=your location的方式来指定安装目录:

代码如下:# ./configure --prefix=/install/samba

期间,configure提示找不到cups头文件,于是又先安装了cups。

代码如下:# make# make install

配置动态链接库路径

代码如下:# vi /etc/ld.so.conf

加入一行

代码如下:/usr/myname/install/samba/lib</p><p># ldconfig

执行ldconfig命令让配置生效

到安装目录

代码如下:# cd /usr/local/samba/

准备配置文件

代码如下:# mkdir -v etc/# cp -v /home/samba-3.0.24/examples/smb.conf.default ./etc/smb.conf

修改配置文件,添加一个共享test

代码如下:# vi ./etc/smb.confworkgroup = MSHOME 改为你linux所在的工作组security = share 开放共享

在smb.conf最后加上

代码如下:[test]comment = testpath = /home/public = nowritable = yesuser = kk

检测配置文件

代码如下:# cp -v ./etc/smb.conf ./lib/# ./bin/testparm Linux中Samba服务器的编译安装以及配置的宏的写法(Linux中samba服务区怎么创建多个用户)

添加账户kk

代码如下:# ./bin/smbpasswd -a kk

输入密码

启动samba

代码如下:# /sbin/service network restart# ./sbin/smbd -D# ./sbin/nmbd -D

检测是否启动

代码如下:# ps aux | grep smb# ps aux | grep nmb

win7/win8 下访问Samba服务 密码出错 问题 windows系统中,单击[开始]——[运行] 输入 “secpol.msc”打开管理工具,展开“本地策略”; 然后,单击“安全选项”。 双击“网络安全:LAN Manager 身份验证级别”; 最后,单击列表中:发送LM和NTLMv2,如果已协商,则使用NTLMv2协议。

基本的宏的编写

Samba 字符处理系统1. samba使用多字节字符串——unix字符串(unix strings)unix字符串没有固定的字节长度,但是遵循以下原则: a. 除非是在终端,否则不能含有NULL; b. 兼容7位的C字符串(C strings),对于C中的常量字符和字符串,其每一位都要和unix字符(串)中的位完全等同; c. 大小写转换是,转换后的字符(串)不能占更多的位; d. 能够准确接收客户端传入的全部字符。 UTF-8和大多数多字节的亚洲语言都能够很好的兼容unix。UCS2是例外(含NULL)。 在smb.conf中定义unix charset。 在与客户端发送或接收数据的时候,为了兼容客户端的字符编码,需要使用pull_(接收) 和push_(发送)开头的函数在buffer中格式化数据。 lp_开头的函数,返回值全部是unix strings。2. 相关宏定义(byteorder.h)CVAL(buf,pos)将buf中pos处的字节以无符号字符返回PVAL(buf,pos)将buf中pos处的字节以无符号整型返回SCVAL(buf,pos,val)将buf中pos处的字节设置为valSVAL(buf,pos)将buf中pos处的字节以无符号小端整型(16bit,ushort)返回IVAL(buf,pos)将buf中pos处的字节以无符号小端整型(32bit)返回SVALS(buf,pos)将buf中pos处的字节以有符号小端整型(16bit)返回IVALS(buf,pos)将buf中pos处的字节以有符号小端整型(32bit)返回SSVAL(buf,pos,val)将buf中pos处的无符号小端整型(16bit)值设置为valSIVAL(buf,pos,val)将buf中pos处的无符号小端整型(32bit)值设置为valSSVALS(buf,pos,val)将buf中pos处的有符号小端整型(16bit)值设置为valSIVALS(buf,pos,val)将buf中pos处的有符号小端整型(32bit)值设置为valRSVAL(buf,pos)将buf中pos处的字节以无符号大端整型(16bit)返回RIVAL(buf,pos)将buf中pos处的字节以无符号大端整型(32bit)返回RSSVAL(buf,pos,val)将buf中pos处的无符号大端整型(16bit,ushort)值设置为valRSIVAL(buf,pos,val)将buf中pos处的无符号大端整型(32bit)值设置为val

Samba DEBUG SYSTEMDEBUG书写规则

代码如下:>debugfile<:=={>debugmsg<}>debugmsg<:==>debughdr<’/n’>debugtext<>debughdr<:==’[’TIME’,’LEVEL’]’FILE’:’[FUNCTION]’(’LINE’)’>debugtext<:=={>debugline<}>debugline<:==TEXT’/n’

其中,TIME 时间戳,LEVEL DEBUG级别,FILE DEBUG信息产生的源文件,FUNCTION DEBUG信息产生的函数,LINE DEBUG信息产生的行数,不支持 __FUNCTION__ 宏的显示不出来,TEXT 不包含/n的DEBUG信息EG:

代码如下:[2011/03/17 08:33:46, 3] smbd/process.c:switch_message(914) switch message SMBclose (pid 12153) conn 0x7f60e9a2d330[2011/03/17 08:33:46, 3] smbd/reply.c:reply_close(3298) close directory fnum=6574

DEBUG()宏DEBUG(para1, para2);其中,para1 DEBUG级别,凡是小于等于全局变量DEBUGLEVEL的,该DEBUG信息将输出到日志,para2 DEBUG信息,即书写规则中的TEXT。在TEXT中,每遇到'/n',将产生一条新的日志(书写规则中的debugfile);没遇到'/n'时,追加TEXT。EG:

代码如下:DEBUG(0, ("The test returned "));if(test()){ DEBUG(0, ("True"));}else{ DEBUG(0, ("False"));}DEBUG(0, ("./n"));

假设test() == true,则会输出:

代码如下:[2010/07/30 16:00:51, 0] file.c:function (256) The test returned True.

DEBUGADD()宏DEBUGADD(para1, para2);其中,para1 DEBUG级别,凡是小于等于全局变量DEBUGLEVEL的,该DEBUG信息将输出到日志,para2 DEBUG信息,即书写规则中的TEXT。在TEXT中,每遇到'/n',将产生TEXT新行;没遇到'/n'时,追加。它与DEBUG()的区别就是,它从不产生书写规则中的debughdr。

EG:

代码如下:DEBUG(0, ("This is the first line./n"));DEBUGADD(0, ("This is the second line./n This is the third line./n"));

输出:

代码如下:[2010/07/30 16:00:51,0] file.c:function(512)This is the first line.This is the second line.This is the third line.

DEBUGLVL()宏BOOL DEBUGLVL(para1);其中,para1 DEBUG级别,凡是小于等于全局变量DEBUGLEVEL的,该宏返回true,该函数主要为了解决书写规则中TEXT太长造成的不便。EG:

代码如下:DEBUG(3, ("send_local_master_announcement: type %x forname %s on subnet %s forwork group, type, global_myname, subrec->subnet_name, work->work_group));

可以替换为:

代码如下:DEBUG(3, ("send_local_master_announcement: "));DEBUGADD(3, ("type %x forname %s", type, global_myname));DEBUGADD(3, ("on subnet %s", subrec->subnet_name));DEBUGADD(3, ("for work group %s/n", work->work_group));

更可以替换为:

代码如下:if(DEBUGLVL(3)){ dbgtext("send_local_master_announcement: "); dbgtext("type %x forname %s", type, global_myname); dbgtext("on subnet %s", subrec->subnet_name); dbgtext("for workgroup %s/n", work->work_group);}

dbgtext()函数用于调用相关函数输出DEBUG信息到日志文件,即输出书写规则中的TEXT。函数调用vslprintf()函数对TEXT格式化后,调用format debug text()函数将TEXT输出。一般在DEBUGLVL()宏中使用。

dbghdr()函数用于输出DEBUG信息中的头信息,即输出书写规则中的debughdr。不对输出内容进行格式化处理。一般在DEBUG()宏 & DEBUGADD()宏中使用。

format debug text()函数用于输出DEBUG信息到日志文件,即输出书写规则中的TEXT。函数将要输出的TEXT保存到buffer中,直到找到一个'/n',增加缩进,调用Debug1()函数,输出TEXT到日志,并清空buffer。

本文链接地址:https://www.jiuchutong.com/zhishi/268590.html 转载请保留说明!

上一篇:如何解决蓝屏错误提示c000021a(如何解决蓝屏错误代码0x000007B问题)

下一篇:Win11任务栏设置打开闪退怎么办?Win11任务栏设置打开闪退解决方法(如何设置电脑任务栏显示)

  • 汇算清缴时纳税调整表调增金额是怎么算出来的
  • 动产租赁适用税率
  • 平台怎么搞
  • 法人和办税人
  • 资产负债表期末数是本年累计数吗
  • 社保基数申报怎么看是否成功
  • 土地增值税税收优惠
  • 汽车租赁的印花税税率
  • 购买房产怎么确认收入
  • 个体户如何做零申报
  • 租赁的房租再出租成本怎么做?
  • 交房租对方开发票怎么开
  • 外购烟叶税进项税额的扣除率
  • 增值税10000交多少税
  • 一般纳税人企业所得税计算公式
  • 劳保用品计入福利费嘛
  • 企业的利润分配顺序
  • 净利润怎么计入所有者权益
  • 速冻食品增值税税率
  • 中小企业结算时间不超60天
  • 存出资本保证金属于什么科目
  • mac怎么连接校园网网线
  • 电脑无损音乐播放软件哪个最好
  • 房地产企业使用什么准则
  • Linux怎么在目录中创建文件
  • 电子专用发票怎么上传
  • php json转对象
  • 苹果手机连接电脑
  • gwsystemservice.exe是什么进程 有什么作用 gwsystemservice进程查询
  • php实验报告
  • 计提未支付的费用
  • 房地产企业土地使用税纳税义务终止
  • 科纳克里市
  • php url函数
  • uniapp前端 django后端
  • 预缴与申报
  • 帝国cms功能
  • 公司购买烟酒怎么入账
  • 织梦系统如何更换网站内容
  • 企业金融资产包括银行存款吗
  • 预计表示什么意思
  • 印花税每个月都要申报吗
  • 个体工商户免费开票额度
  • 支付宝和微信的财务统计
  • 报废车补贴政策2023
  • 无票收入的增值税税率
  • 权益法核算还计提减值么
  • 施工企业外经证交费的时候工会经费是怎么计算的
  • 某企业2013年12月30日购入一台不需要安装的设备
  • 有限公司股东撤资退股
  • 持有至到期投资减值准备
  • 税费多一分钱怎么调回来?
  • 备用金预期有什么影响
  • 无形资产的项目有哪些
  • 收到房租费发票如何做账
  • centos vsftpd配置
  • VMware虚拟机中安装MATE桌面环境
  • win8的开机启动项在哪里
  • win10提示激活windows
  • 如何设置桌面背景颜色
  • win8.1应用商店无法连接
  • QuiteRSS: Linux桌面的RSS阅读器 你值得拥有
  • windows鼠标失灵怎么办
  • win10怎么分屏操作
  • redhat 6.5 安装
  • cocos2dx3d2d结合
  • 使用Jasmine和Karma对AngularJS页面程序进行测试
  • django rest framework和django区别
  • 安全工具有哪些
  • flask使用celery
  • exe取消隐藏属性
  • python django事务transaction源码分析详解
  • python文件a
  • android 加载大图
  • Activity与Theme
  • 熟练使用jquery
  • 江苏钢厂排名前十
  • 异地可以打印银行清单吗?
  • 广东房产契税电话查询
  • 建筑安装工程承包条例还有效吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设