总览

make_smbcodepage c|d 代码页 输入文件 输出文件

描述

这个工具是是Samba组件的一部分。

针对Samba 2.2的国际化功能,使用make_smbcodepage可以编译或反编译代码页文件。

选项

c|d
使用c把一个文本格式的代码页文件编译成二进制格式;使用d把一个二进制格式的代码页反编译成文本格式。
代码页
选用的代码页(一个数字,如850)。
输入文件
待处理的输入文件。在使用c选项时,它是文本格式的代码页预定义文件,这些文件可以在Samba包的source/codepages 目录中找到;在使用d选项时,它是二进制格式的代码页文件,通常,这些文件保存在Samba安装路径的lib/codepages目录的。
输出文件
程序产生的输出文件。

Samba的代码页文件

文本格式的代码页定义文件描述了在指定DOS代码页大于127的字符中是如何把大写转换为小写的。要注意的是,在某些DOS代码页中 (如437),大小写之间的映射并不一定对称。例如,在代码页437中,当进行小写到大写的映射时,把带有撇形(')重音符号的a转换为不带重间符号的明文大写字母A,而当进行大写到小写映射时,则把字母A直接转换为字母a而不带重间符号。

而二进制代码页定义文件则是相同信息的二进制表示,同时包含一个值,用来说明所描述的代码页。

因为Samba还没有使用UNICODE码,所以如果你希望在特殊的语言环境中不区分大小写的话,就要为DOS和Windows客户端指定所用的代码页。 Samba所用的缺省代码页是850(西欧语)。同时,Samba发布还提供了文本格式的样本代码页文件,包含437(美语)、737(希腊语)、850(西欧语)、852(MS-DOS 拉丁2)、861(冰岛语), 866 (斯拉夫语)、932 (日语)、936(简体中文)、949(韩文)和950(繁体中文)。我们鼓励用户为自己的代码页编写文本格式的定义文件,并把它捐款给samba@samba.org。当你执行'make install'命令时,source/codepages目录中的所有代码页文件都会被编译并安装到系统上。

smb.conf文件中配置了client code page选项之后, smbd服务器就可以使用客户代码页了。

相关文件

codepage_def.<codepage>

这是Samba源代码包提供的用于输入的文本代码页文件,它们保存在 source/codepages目录中。

在这些文本格式的代码页定义文件中,每一行都包含了四个字段:

*
lower:小写字符的十六进制值。
*
upper:上述小写字符所对应的大写字符十六进制值。
*
map upper to lower:这是个布尔量(True或False二者选一)。用来说明在对一个文件名进行小写处理时,是否让Samba将其中的大写字符映射成小写字符。
*
map lower to upper:这是个布尔量(True或False二者选一)。用来说明在对一个文件名进行大写处理时,是否让Samba将其中的小写字符映射成大写字符。

codepage.<codepage> 这是Samba产生的输出二进制代码页文件,它们保存在Samba安装目录的 lib/codepage中。

安装

服务器及相关支持文件的保存位置决定于系统管理员,以下只是建议:

我们推荐把make_smbcodepage程序安装到/usr/local/samba 路径下的一个目录中,这个目录应该具有只有root可写,所有人都可读的权限。这个程序本身应该让所有用户都可执行,而不应该执行suid或sgid 操作。

make_smbcodepage - 为Samba创建代码页文件的更多相关文章

  1. 用java 代码下载Samba服务器上的文件到本地目录以及上传本地文件到Samba服务器

    引入: 在我们昨天架设好了Samba服务器上并且创建了一个 Samba 账户后,我们就迫不及待的想用JAVA去操作Samba服务器了,我们找到了一个框架叫 jcifs,可以高效的完成我们工作. 实践: ...

  2. warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失

    bug来源: 一直在看sift然后就手贱的给 opencv源码做注释,如果在vs里面打开会一直相安无事,但是问题出在我用了notepad++. 这样就报了标题的错误. 因为notepad++会以uni ...

  3. warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失

    ------问题-------------------- Qt项目使用 VC++ 编译器出现此错误. warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符.请将该文件保存为 ...

  4. Xml文件汉化后改变代码页

    源Xml文件代码页为ansi,汉化后要转换为UTF-8,在网上搜素了以下结果,但解释的不都清楚,我找了好一阵才找到相应的操作.   为防止自己以后忘了,补充如下: 经过这样的设置,生成的汉化xml文件 ...

  5. vs2015下C4819该文件包含不能在当前代码页(936)中表示的字符问题解决

    今天编译IfcOpenshell出现很多warning如下: C4819 该文件包含不能在当前代码页(936)中表示的字符.请将该文件保存为 Unicode 格式以防止数据丢失 解决方案: 文件——& ...

  6. [采坑] VS2015 warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失

    问题: Visual Studio 2015出现warning C4819: 该文件包含不能在当前代码页(936)中表示的字符.请将该文件保存为 Unicode 格式以防止数据丢失. 解决方案: 1. ...

  7. WCSTOMBS 函数不支持中文件的解决方法(设置代码页)

    代码页没有进行设置.需要调用locale.h 中定义的一个函数设置默认的代码页 _tsetlocale(LC_ALL,_T(""));//设置代码页  wcstombs(sendB ...

  8. Nodejs之MEAN栈开发(七)---- 用Angular创建单页应用(下)

    上一节我们走通了基本的SPA基础结构,这一节会更彻底的将后端的视图.路由.控制器全部移到前端.篇幅比较长,主要分页面改造.使用AngularUI两大部分以及一些优化路由.使用Angular的其他指令的 ...

  9. Nodejs之MEAN栈开发(六)---- 用Angular创建单页应用(上)

    在上一节中我们学会了如何在页面中添加一个组件以及一些基本的Angular知识,而这一节将用Angular来创建一个单页应用(SPA).这意味着,取代我们之前用Express在服务端运行整个网站逻辑的方 ...

随机推荐

  1. sqli-labs(26a)

    0x01偷偷看一波源码 和26关一样 闭合变成了’)而已 0X01构造语句爆库名 这是百度到的 第一个 ' 首先闭合id='$id' 中的',%a0是空格的意思,(ps:此处我的环境是ubuntu14 ...

  2. mysql数据库表反向生成modes类

    一,如果你是windows,打开cmd,切换到desktop目录下 二,需要连接你的数据库,并且执行命令:sqlacodegen  --outfile models.py mysql+pymysql: ...

  3. 挖矿病毒DDG的分析与清除

    注:以下所有操作均在CentOS 7.2 x86_64位系统下完成. 今天突然收到“阿里云”的告警短信: 尊敬的****:云盾云安全中心检测到您的服务器:*.*.*.*(app)出现了紧急安全事件:挖 ...

  4. SpringBoot 优雅的整合 Shiro

    Apache Shiro是一个功能强大且易于使用的Java安全框架,可执行身份验证,授权,加密和会话管理.借助Shiro易于理解的API,您可以快速轻松地保护任何应用程序 - 从最小的移动应用程序到最 ...

  5. was安装相关步骤(Linux)

    本次试验目的主要对websphere 二次内部解剖对中间件性能优化垫铺. 1.准备相关文件 其中 iso文件为WAS主要镜像文件(WAS文件所在地) Instalmgr为IBM安装引导程序instal ...

  6. leetcode-mid-sorting and searching - 33. Search in Rotated Sorted Array

    mycode class Solution(object): def search(self, nums, target): """ :type nums: List[i ...

  7. 电脑出现了一块tap window adapter v9 网卡 以及虚拟机桥接模式无法通信原因

    计算机与外界局域网的连接是通过主机箱内插入一块网络接口板(或者是在笔记本电脑中插入一块PCMCIA卡).网络接口板又称为通信适配器或网络适配器(network adapter)或网络接口卡NIC(Ne ...

  8. 修改win10 capslock键成esc键 vim

    桌面编辑一个文件CapsLock2Esc.reg Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentCont ...

  9. LoadRunner之关联

    一.什么是关联 关联就是将服务器动态返回变化的值保存为一个参数以供后面需要用到的地方使用. 二.什么时候需要关联 1.服务器返回中存在动态变化的值,一般是类似session.token这样的无规则数据 ...

  10. CentOS7 yum报 Cannot retrieve metalink for repository: epel/x86_64. Please verify its path解决方法

    打开/etc/yum.repos.d/epel.repo,将 [epel] name=Extra Packages for Enterprise Linux 6 – $basearch baseurl ...