FreeBSD 中文社区 2025 第二季度问卷调查
FreeBSD 中文社区(CFC)
VitePress 镜像站QQ 群 787969044视频教程Ⅰ视频教程Ⅱ
  • FreeBSD 从入门到追忆
  • 中文期刊
  • 状态报告
  • 发行说明
  • 手册
  • 网络文章集锦
  • 笔记本支持报告
  • Port 开发者手册
  • 架构手册
  • 开发者手册
  • 中文 man 手册
  • 文章
  • 书籍
  • FreeBSD 中文手册
  • 编辑日志
  • 译者说明
  • FreeBSD 中文手册
  • 概述
  • 前言
    • 致读者
    • 第四版
    • 第三版
    • 第二版(2004)
    • 第一版(2001)
    • 本书的组织结构
    • 本书中使用的一些约定
    • 致谢
  • 第一部分:快速开始
  • 第1章 简介
    • 1.1.概述
    • 1.2.欢迎来到 FreeBSD!
    • 1.3.关于 FreeBSD 项目
  • 第2章 安装 FreeBSD
    • 2.1.概述
    • 2.2.最低硬件要求
    • 2.3.安装前的准备工作
    • 2.4.开始安装
    • 2.5.使用 bsdinstall
    • 2.6.分配磁盘空间
    • 2.7.获取安装文件
    • 2.8.账户、时区、服务和安全
    • 2.9.故障排除
    • 2.10.使用 Live CD
  • 第3章 FreeBSD 基础
    • 3.1.概述
    • 3.2.虚拟控制台和终端
    • 3.3.用户和基本账户管理
    • 3.4.权限
    • 3.5.目录结构
    • 3.6.磁盘结构
    • 3.7.文件系统的挂载与卸载
    • 3.8.进程和守护进程
    • 3.9.Shell
    • 3.10.文本编辑器
    • 3.11.设备和设备节点
    • 3.12.手册页
  • 第4章 安装应用程序:软件包和 Ports
    • 4.1.概述
    • 4.2.软件安装的概述
    • 4.3.寻找所需的应用程序
    • 4.4.使用 pkg 管理二进制包
    • 4.5.使用 Ports
    • 4.6.使用 Poudriere 构建软件包
    • 4.7.安装后的注意事项
    • 4.8.如何处理损坏的 port
  • 第5章 X Window 系统
    • 5.1.概述
    • 5.2.安装 Xorg
    • 5.3.显卡驱动
    • 5.4.Xorg 配置
    • 5.5.在 X11 中使用字体
  • 第6章 FreeBSD 中的 Wayland
    • 6.1.简介
    • 6.2.Wayland 概述
    • 6.3.Wayfire 混成器
    • 6.4.Hikari 混成器
    • 6.5.Sway 混成器
    • 6.6.使用 Xwayland
    • 6.7.使用 VNC 进行远程连接
    • 6.8.Wayland 登录管理器
    • 6.9.实用工具
  • 第7章 网络
    • 7.1.概述
    • 7.2.设置网络
    • 7.3.有线网络
    • 7.4.无线网络
    • 7.5.主机名
    • 7.6.DNS
    • 7.7.故障排除
  • 第二部分:常见任务
  • 第8章 桌面环境
    • 8.1.概述
    • 8.2.桌面环境
    • 8.3.浏览器
    • 8.4.开发工具
    • 8.5.桌面办公应用
    • 8.6.文档阅读器
    • 8.7.财务
  • 第9章 多媒体
    • 9.1.概述
    • 9.2.设置声卡
    • 9.3.音频播放器
    • 9.4.视频播放器
    • 9.5.视频会议
    • 9.6.图像扫描仪
  • 第10章 配置 FreeBSD 内核
    • 10.1.概述
    • 10.2.为什么要构建定制内核
    • 10.3.浏览系统硬件
    • 10.4.配置文件
    • 10.5.构建并安装定制内核
    • 10.6.如果发生了错误
  • 第11章 打印
    • 11.1.快速入门
    • 11.2.连接打印机
    • 11.3.常见的页面描述语言(PDL)
    • 11.4.直接打印
    • 11.5.LPD(行式打印机程序)
    • 11.6.其他打印系统
  • 第12章 Linux 二进制兼容层
    • 12.1.概述
    • 12.2.配置 Linux 二进制兼容层
    • 12.3.Linux 用户空间
    • 12.4.高级主题
  • 第13章 WINE
    • 13.1.概述
    • 13.2.WINE 概述和概念
    • 13.3.在 FreeBSD 上安装 WINE
    • 13.4.在 FreeBSD 上运行第一个 WINE 程序
    • 13.5.配置 WINE 安装程序
    • 13.6.WINE 图形化用户管理界面
    • 13.7.多用户 FreeBSD 与 WINE
    • 13.8.FreeBSD 上的 WINE 常见问题
  • 第三部分:系统管理
  • 第14章 配置与优化
    • 14.1.概述
    • 14.2.配置文件
    • 14.3.管理 FreeBSD 中的服务
    • 14.4.Cron 和 Periodic
    • 14.5.配置系统日志
    • 14.6.电源和资源管理
    • 14.7.添加交换空间
  • 第15章 FreeBSD 的引导过程
    • 15.1.概述
    • 15.2.FreeBSD 的引导过程
    • 15.3.Device Hints
    • 15.4.关机流程
  • 第16章 安全
    • 16.1.概述
    • 16.2.简介
    • 16.3.账户安全
    • 16.4.入侵检测系统(IDS)
    • 16.5.安全等级
    • 16.6.文件标志位
    • 16.7.OpenSSH
    • 16.8.OpenSSL
    • 16.9.Kerberos
    • 16.10.TCP 封装器(TCP Wrapper)
    • 16.11.访问控制列表(ACL)
    • 16.12.Capsicum
    • 16.13.进程记账
    • 16.14.资源限制
    • 16.15.监控第三方安全问题
    • 16.16.FreeBSD 安全公告
  • 第17章 jail 与容器
    • 17.1.概述
    • 17.2.jail 的类型
    • 17.3.主机配置
    • 17.4.传统 jail(厚 jail)
    • 17.5.瘦 jail
    • 17.6.管理 jail
    • 17.7.更新 jail
    • 17.8.jail 资源限制
    • 17.9.jail 管理器与容器
  • 第18章 强制访问控制
    • 18.1.概述
    • 18.2.关键术语
    • 18.3.了解 MAC 标签
    • 18.4.规划安全配置
    • 18.5.可用的 MAC 策略
    • 18.6.用户锁定
    • 18.7.MAC Jail 中的 Nagios
    • 18.8.MAC 框架的故障排除
  • 第19章 安全事件审计
    • 19.1.概述
    • 19.2.关键术语
    • 19.3.审计配置
    • 19.4.使用审计跟踪
  • 第20章 存储
    • 20.1.概述
    • 20.2.添加磁盘
    • 20.3.调整和增加磁盘大小
    • 20.4.USB 存储设备
    • 20.5.创建和使用 CD
    • 20.6.创建和使用 DVD
    • 20.7.创建和使用软盘
    • 20.8.备份的基础知识
    • 20.9.内存盘
    • 20.10.文件系统快照
    • 20.11.磁盘配额
    • 20.12.加密磁盘分区
    • 20.13.加密交换分区
    • 20.14.高可用性存储(HAST)
  • 第21章 GEOM: 模块化磁盘转换框架
    • 21.1.概述
    • 21.2.RAID0——条带
    • 21.3.RAID1——镜像
    • 21.4.RAID3——带有专用奇偶校验的字节级条带
    • 21.5.软件 RAID 设备
    • 21.6.GEOM Gate 网络设备
    • 21.7.为磁盘设备添加卷标
    • 21.8.通过 GEOM 实现 UFS 日志
  • 第22章 Z 文件系统(ZFS)
    • 22.1.是什么使 ZFS 与众不同
    • 22.2.快速入门指南
    • 22.3.zpool 管理
    • 22.4.zfs 管理
    • 22.5.委托管理
    • 22.6.高级主题
    • 22.7.更多资源
    • 22.8.ZFS 特性和术语
  • 第23章 其他文件系统
    • 23.1.概述
    • 23.2.Linux® 文件系统
    • 23.3.Windows® 文件系统
    • 23.4.MacOS® 文件系统
  • 第24章 虚拟化
    • 24.1.概述
    • 24.2.使用 macOS® 上的 Parallels Desktop 安装 FreeBSD
    • 24.3.使用 macOS® 上的 VMware Fusion 安装 FreeBSD
    • 24.4.使用 VirtualBox™ 安装 FreeBSD
    • 24.5.在 FreeBSD 上安装 VirtualBox™
    • 24.6.使用 FreeBSD 上的 QEMU 虚拟化
    • 24.7.使用 FreeBSD 上的 bhyve 虚拟机
    • 24.8.基于 FreeBSD 的 Xen™ 虚拟机
  • 第25章 本地化——i18n/L10n 的使用和设置
    • 25.1.概述
    • 25.2.使用本地化
    • 25.3.寻找 i18n 应用程序
    • 25.4.特定语言的区域配置
  • 第26章 FreeBSD 更新与升级
    • 26.1.概述
    • 26.2.更新 FreeBSD
    • 26.3.更新 Bootcode
    • 26.4.更新文档
    • 26.5.追踪开发分支
    • 26.6.从源代码更新 FreeBSD
    • 26.7.多台机器的追踪
    • 26.8.在非 FreeBSD 主机上进行构建
  • 第27章 DTrace
    • 27.1.概述
    • 27.2.实现上的差异
    • 27.3.开启 DTrace 支持
    • 27.4.启用内核外部模块 DTrace
    • 27.5.使用 DTrace
  • 第28章 USB 设备模式/USB OTG
    • 28.1.概述
    • 28.2.USB 虚拟串行端口
    • 28.3.USB 设备模式网络接口
    • 28.4.USB 虚拟存储设备
  • 第四部分:网络通讯
  • 第29章 串行通信
    • 29.1.概述
    • 29.2.串行术语和硬件
    • 29.3.终端
    • 29.4.拨入服务
    • 29.5.拨出服务
    • 29.6.设置串行控制台
  • 第30章 PPP
    • 30.1.概述
    • 30.2.配置 PPP
    • 30.3.PPP 连接的故障排除
    • 30.4.使用以太网 PPP(PPPoE)
    • 30.5.使用 ATM 上的 PPP (PPPoA)
  • 第31章 电子邮件
    • 31.1.概述
    • 31.2.邮件组件
    • 31.3.DragonFly 邮件代理(DMA)
    • 31.4.Sendmail
    • 31.5.修改邮件传输代理
    • 31.6.邮件用户代理
    • 31.7.高级主题
  • 第32章 网络服务器
    • 32.1.概述
    • 32.2.inetd 超级服务器
    • 32.3.网络文件系统(NFS)
    • 32.4.网络信息系统(NIS)
    • 32.5.轻型目录访问协议(LDAP)
    • 32.6.动态主机设置协议(DHCP)
    • 32.7.域名系统(DNS)
    • 32.8.零配置网络(mDNS/DNS-SD)
    • 32.9.Apache HTTP 服务器
    • 32.10.文件传输协议(FTP)
    • 32.11.用于 Microsoft® Windows® 客户端的文件和打印服务(Samba)
    • 32.12.用 NTP 进行时钟同步
    • 32.13.iSCSI target 和 initiator 的配置
  • 第33章 防火墙
    • 33.1.概述
    • 33.2.防火墙的概念
    • 33.3.PF
    • 33.4.IPFW
    • 33.5.IPFILTER(IPF)
    • 33.6.Blacklistd
  • 第34章 高级网络
    • 34.1.概述
    • 34.2.网关和路由
    • 34.3.虚拟主机
    • 34.4.无线高级身份验证
    • 34.5.无线自组织(Ad-hoc)模式
    • 34.6.USB 网络共享
    • 34.7.蓝牙
    • 34.8.桥接
    • 34.9.链路聚合与故障转移
    • 34.10.使用 PXE 进行无盘操作
    • 34.11.共用地址冗余协议(CARP)
    • 34.12.VLAN
  • 第五部分:附录
  • 附录 A.获取 FreeBSD
    • A.1.镜像站
    • A.2.使用 Git
    • A.3.使用 Subversion
    • A.4.光盘
  • 附录 B.书目
    • B.1.FreeBSD 相关书籍
    • B.2.安全性参考文献
    • B.3.UNIX 历史
    • B.4.期刊与杂志
  • 附录 C.网络资源
    • C.1.网站
    • C.2.邮件列表
    • C.3.Usenet 新闻组
  • 附录 D.OpenPGP 密钥
    • D.1.官方成员
  • 术语表
  • 后记
由 GitBook 提供支持
LogoLogo

FreeBSD 中文社区(CFC) 2025

在本页
  • 25.2.1. 设置登录 shell 的区域设置
  • 25.2.1.1. 登录类方法
  • 25.2.1.2. Shell 启动文件方法
  • 25.2.2. 控制台设置
  • 25.2.3. Xorg 设置
在GitHub上编辑
导出为 PDF
  1. 第25章 本地化——i18n/L10n 的使用和设置

25.2.使用本地化

上一页25.1.概述下一页25.3.寻找 i18n 应用程序

最后更新于6天前

FreeBSD 的本地化设置基于三个组件:语言代码、区域代码和编码。区域设置名称由这些部分构成,如下所示:

语言代码_区域代码.编码

语言代码 和 区域代码 用于确定区域和特定的语言变体。 提供了一些 语言代码_区域代码 的示例:

表 1. 常见语言和区域代码

语言代码_区域代码
描述

en_US

英语,美国

ru_RU

俄语,俄罗斯

zh_TW

繁体中文,台湾

可以通过键入以下命令查看可用的完整区域设置列表:

% locale -a | more

要查看当前的区域设置:

% locale

语言特定字符集,如 ISO8859-1、ISO8859-15、KOI8-R 和 CP437,在 中有描述。活动字符集列表可以在 中找到。

一些语言,如中文或日语,不能使用 ASCII 字符表示,需要使用宽字符或多字节字符的扩展语言编码。例如,EUC 和 Big5 就是宽字符或多字节编码的例子。较旧的应用程序可能会错误地将这些编码识别为控制字符,而较新的应用程序通常可以识别这些字符。根据实现的不同,用户可能需要为应用程序编译宽字符或多字节字符支持,或正确配置它。

注意

FreeBSD 使用与 Xorg 兼容的区域编码。

本节的其余部分描述了在 FreeBSD 系统上配置区域设置的各种方法。接下来的部分将讨论如何找到和编译支持 i18n 的应用程序。

25.2.1. 设置登录 shell 的区域设置

区域设置可以在用户的 ~/.login_conf 文件中或用户 shell 的启动文件中配置:~/.profile、~/.bashrc 或 ~/.cshrc。

需要设置两个环境变量:

  • LANG:设置区域设置

  • MM_CHARSET:设置应用程序使用的 MIME 字符集

除了用户的 shell 配置外,这些变量还应为特定的应用程序配置和 Xorg 配置设置。

25.2.1.1. 登录类方法

这是推荐的方法,它为每个可能的 shell 分配所需的区域设置和 MIME 字符集环境变量。此设置可以由每个用户执行,也可以由超级用户为所有用户配置。

以下是个最简单的示例,在个人用户的 .login_conf 中为 Latin-1 编码设置两个变量:

me:\
	:charset=ISO-8859-1:\
	:lang=de_DE.ISO8859-1:

以下是一个用户的 ~/.login_conf 示例,为繁体中文 Big5 编码设置变量。由于一些应用程序没有正确遵循区域设置变量,因此需要更多的变量来确保应用程序正确工作:

# 不希望使用台湾的货币单位和时间格式的用户可以手动更改每个变量
me:\
	:lang=zh_TW.Big5:\
	:setenv=LC_ALL=zh_TW.Big5,LC_COLLATE=zh_TW.Big5,LC_CTYPE=zh_TW.Big5,LC_MESSAGES=zh_TW.Big5,LC_MONETARY=zh_TW.Big5,LC_NUMERIC=zh_TW.Big5,LC_TIME=zh_TW.Big5:\
	:charset=big5:\
	:xmodifiers="@im=gcin": # 设置 gcin 为 XIM 输入服务器

另外,超级用户可以为系统上的所有用户配置本地化设置。以下变量可以在 /etc/login.conf 中设置区域设置和 MIME 字符集:

language_name|Account Type Description:\
	:charset=MIME_charset:\
	:lang=locale_name:\
	:tc=default:

例如,之前提到的 Latin-1 示例在 /etc/login.conf 中的配置如下:

german|German Users Accounts:\
	:charset=ISO-8859-1:\
	:lang=de_DE.ISO8859-1:\
	:tc=default:

每次编辑 /etc/login.conf 后,记得执行以下命令以更新权限数据库:

# cap_mkdb /etc/login.conf

注意

对于最终用户来说,需要在 ~/.login_conf 上运行命令 cap_mkdb,才能使更改生效。

25.2.1.1.1. 更改登录类的实用程序

除了手动编辑 /etc/login.conf 外,还可以使用一些实用程序为新创建的用户设置区域设置。

使用 vipw 添加新用户时,可以指定 language 来设置区域设置:

user:password:1111:11:language:0:0:User Name:/home/user:/bin/sh

使用 adduser 添加新用户时,可以为所有新用户预配置默认语言,或为单个用户指定语言。

如果所有新用户使用相同的语言,可以在 /etc/adduser.conf 中设置 defaultclass=language。

要在创建用户时覆盖此设置,可以在此提示符处输入所需的区域设置:

Enter login class: default []:

或者在调用 adduser 时指定区域设置:

# adduser -class language

如果使用 pw 添加新用户,则按以下方式指定区域设置:

# pw useradd user_name -L language

要更改现有用户的登录类,可以使用 chpass。以超级用户身份调用并提供要编辑的用户名作为参数:

# chpass user_name

25.2.1.2. Shell 启动文件方法

不推荐使用这种方法,因为每个使用的 shell 都需要手动配置,每个 shell 有不同的配置文件和语法。例如,要为 sh shell 设置德语,可以将以下行添加到 ~/.profile 文件中,仅为该用户设置 shell。也可以将这些行添加到 /etc/profile 或 /usr/share/skel/dot.profile 中,为所有用户设置该 shell:

LANG=de_DE.ISO8859-1; export LANG
MM_CHARSET=ISO-8859-1; export MM_CHARSET

然而,csh shell 的配置文件名称和语法不同。以下是在 ~/.login、/etc/csh.login 或 /usr/share/skel/dot.login 中的等效设置:

setenv LANG de_DE.ISO8859-1
setenv MM_CHARSET ISO-8859-1

更复杂的是,配置 Xorg 的语法也取决于所使用的 shell。在 ~/.xinitrc 中,sh shell 和 csh shell 的配置示例如下:

LANG=de_DE.ISO8859-1; export LANG
setenv LANG de_DE.ISO8859-1

25.2.2. 控制台设置

控制台提供了多种本地化字体。要查看可用字体列表,可以键入 ls /usr/share/syscons/fonts。要配置控制台字体,在 /etc/rc.conf 中指定 font_name,不带 .fnt 后缀:

font8x16=font_name
font8x14=font_name
font8x8=font_name

可以通过添加以下内容到 /etc/rc.conf 来设置键盘映射和屏幕映射:

scrnmap=screenmap_name
keymap=keymap_name
keychange="fkey_number sequence"

要查看可用屏幕映射的列表,可以键入 ls /usr/share/syscons/scrnmaps。在指定 screenmap_name 时,请不要包括 .scm 后缀。通常需要一个对应的映射字体的屏幕映射作为变通方法,来扩展 VGA 适配器字体字符矩阵中的位 8 到位 9,从而使字母从伪图形区移出(如果屏幕字体使用位 8 列)。

keychange 条目通常需要用来编程功能键,以匹配所选的终端类型,因为功能键序列不能在键盘映射中定义。

表 2. 字符集的定义终端类型

字符集
终端类型

ISO8859-1 或 ISO8859-15

cons25l1

ISO8859-2

cons25l2

ISO8859-7

cons25l7

KOI8-R

cons25r

KOI8-U

cons25u

CP437 (VGA 默认)

cons25

US-ASCII

cons25w

表 3. 来自 Ports 的可用控制台

语言
Port 位置

繁体中文 (BIG-5)

中文/日语/韩语

中文/日语/韩语

日语

日语

日语

mousechar_start=3

25.2.3. Xorg 设置

表 4. 可用输入法

语言
输入法

中文

中文

中文

中文

中文

中文

中文

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

日语

韩语

韩语

韩语

韩语

韩语

越南语

越南语

有两种方法可以进行所需的变量分配:推荐的方法是通过 ,另一种是通过 方法。接下来的两个小节将演示如何使用这两种方法。

有关这些变量的更多细节,请参见 。请注意,它已经包含了预定义的 russian 类。

要查看可用键盘映射的列表,可以键入 ls /usr/share/syscons/keymaps。在指定 keymap_name 时,请不要包括 .kbd 后缀。要在不重启的情况下测试键盘映射,可以使用 。

接下来,设置正确的控制台终端类型,在 /etc/ttys 中为所有虚拟终端条目配置。以下是 的总结:

对于使用宽字符或多字节字符的语言,从 FreeBSD Ports 安装相应的控制台。可用的 Port 总结在 中。安装完成后,查看端口的 pkg-message 或 man 页面以获取配置和使用说明。

如果在 /etc/rc.conf 中启用了 moused,可能还需要进行额外的配置。默认情况下, 驱动程序的鼠标光标占用字符集中的 0xd0 到 0xd3 范围。如果语言使用该范围,请通过在 /etc/rc.conf 中添加以下行来移动鼠标的字符范围:

介绍了如何安装和配置 Xorg。在为 Xorg 配置本地化时,可以从 FreeBSD Ports 获取额外的字体和输入法。应用程序特定的国际化设置,如字体和菜单,可以在 ~/.Xresources 文件中进行调整,允许用户在图形应用程序的菜单中查看所选语言。

X 输入法(XIM)协议是 Xorg 标准,用于输入非英文字符。 总结了 FreeBSD Ports 中可用的输入法应用程序。额外的 Fcitx 和 Uim 应用程序也可供使用。

常见语言和区域代码
multibyte(3)
IANA 注册表
登录类
启动文件
login.conf(5)
kbdmap(1)
定义的字符集终端类型
来自 Ports 的可用控制台
syscons(4)
The X Window System
可用输入法
chinese/big5con
chinese/cce
chinese/zhcon
chinese/kon2
japanese/kon2-14dot
japanese/kon2-16dot
chinese/gcin
chinese/ibus-chewing
chinese/ibus-pinyin
chinese/oxim
chinese/scim-fcitx
chinese/scim-pinyin
chinese/scim-tables
japanese/ibus-anthy
japanese/ibus-mozc
japanese/ibus-skk
japanese/im-ja
japanese/kinput2
japanese/scim-anthy
japanese/scim-canna
japanese/scim-honoka
japanese/scim-honoka-plugin-romkan
japanese/scim-honoka-plugin-wnn
japanese/scim-prime
japanese/scim-skk
japanese/scim-tables
japanese/scim-tomoe
japanese/scim-uim
japanese/skkinput
japanese/skkinput3
japanese/uim-anthy
korean/ibus-hangul
korean/imhangul
korean/nabi
korean/scim-hangul
korean/scim-tables
vietnamese/xvnkb
vietnamese/x-unikey