<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Life - WeiG &#187; utf8</title>
	<atom:link href="http://www.weigblog.com/tag/utf8/feed" rel="self" type="application/rss+xml" />
	<link>http://www.weigblog.com</link>
	<description>Yet another Life</description>
	<lastBuildDate>Thu, 05 Jan 2012 03:13:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>QNAP TS-409 Pro添加中文UTF8 locale</title>
		<link>http://www.weigblog.com/2009/10/24/qnap-ts-409-pro-nas-locale.html</link>
		<comments>http://www.weigblog.com/2009/10/24/qnap-ts-409-pro-nas-locale.html#comments</comments>
		<pubDate>Sat, 24 Oct 2009 13:34:11 +0000</pubDate>
		<dc:creator>Wei</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[locale]]></category>
		<category><![CDATA[nas]]></category>
		<category><![CDATA[pro]]></category>
		<category><![CDATA[qnap]]></category>
		<category><![CDATA[ts-409]]></category>
		<category><![CDATA[utf8]]></category>
		<category><![CDATA[zh-cn]]></category>

		<guid isPermaLink="false">http://www.weigblog.com/2009/10/24/qnap-ts-409-pro-nas-locale.html</guid>
		<description><![CDATA[QNAP TS-409 Pro NAS中除了C和POSIX以外，不包含utf8的locale，PHP中也不包含iconv。即使是最新版本的3.0.1 Build 0708T也是如此。最直接的结果就是MLDonkey等软件的下载文件名出现乱码或者“_”符号。但QNAP却提供了手工安装locale的方法。但最新的3.0.1版本中，却没有locale和localedef文件，导致按照官方安装locale的方法，无法操作。经过论坛上的各种讨论，可以采用如下的方法来实现。 首先通过SSH登录NAS，找到locale和localedef命令，并创建对应的符号链接： 接下来下载Posix-locale文件（下载地址：http://wiki.qnap.com/w/images/7/77/Posix-locales.rar），解压后，上传到任意目录，并将LOCALES重命名为locales。为了节省系统盘空间，推荐在/share/HDA_DATA（或/share/MD0_DATA）中创建一个目录。 创建/usr/lib/locale目录，该目录用于存储locale-archive文件（也可以使用符号链接） 剩下的步骤就可以创建新的locale了 如果需要其他的locale，只需要将zh_CN、UTF-8更换为其他的locale即可，具体的参数，可以查看/usr/share/i18n/locales和/usr/share/i18n/charmaps中的文件列表，最后的zh_CN.utf8可以自己指定。 检查新的locale 此时即可生成新的zh_CN.utf8的locale，剩下的工作可以为locale-archive创一个符号链接，以便节省/分区的空间。 特别说明 QNAP NAS会在每次升级之后，重新在硬盘中写入操作系统，所以此过程需要在每次升级版本的时候操作一次。 为了避免在UTF8编码无效时，某些软件（如MLDonkey）出现乱码的问题，在操作/升级前，请先关闭所有的QPKG。 HDA_DATA为不使用RAID配置的路径，如果启用RAID，则将更换为MD0_DATA。 关于MLDonkey MLDonkey的启动脚本位于/share/HDA_DATA/.qpkg/MLDonkey/mldonkey.sh。该脚本通过/usr/bin/locale取得当前环境的LANG环境变量。我图省事儿，直接将此修改为：]]></description>
			<content:encoded><![CDATA[<p>QNAP TS-409 Pro NAS中除了C和POSIX以外，不包含utf8的locale，PHP中也不包含iconv。即使是最新版本的3.0.1 Build 0708T也是如此。最直接的结果就是MLDonkey等软件的下载文件名出现乱码或者“_”符号。但QNAP却提供了手工安装locale的方法。但最新的3.0.1版本中，却没有locale和localedef文件，导致按照官方<a href="http://wiki.qnap.com/wiki/Country_Locale">安装locale</a>的方法，无法操作。经过论坛上的各种讨论，可以采用如下的方法来实现。</p>
<p>首先通过SSH登录NAS，找到locale和localedef命令，并创建对应的符号链接：</p>
<pre class="brush: bash; title: ; notranslate">
ll /mnt/HDA_ROOT/rootfs_2_3_6/usr/bin/locale*
ln –s /mnt/HDA_ROOT/rootfs_2_3_6/usr/bin/locale /usr/sbin/locale
ln –s /mnt/HDA_ROOT/rootfs_2_3_6/usr/bin/localedef /usr/sbin/localedef
ll /usr/sbin/locale*
</pre>
<p>接下来下载Posix-locale文件（下载地址：<a title="http://wiki.qnap.com/w/images/7/77/Posix-locales.rar" href="http://wiki.qnap.com/w/images/7/77/Posix-locales.rar">http://wiki.qnap.com/w/images/7/77/Posix-locales.rar</a>），解压后，上传到任意目录，并将LOCALES重命名为locales。为了节省系统盘空间，推荐在/share/HDA_DATA（或/share/MD0_DATA）中创建一个目录。</p>
<pre class="brush: bash; title: ; notranslate">
mkdir /share/HDA_DATA/i18n
ln –s /share/HDA_DATA/i18n /usr/share/i18n
cd /usr/share/i18n
wget http://wiki.qnap.com/w/images/7/77/Posix-locales.rar
unrar Posix-locales.rar
mv LOCALES locales
</pre>
<p>创建/usr/lib/locale目录，该目录用于存储locale-archive文件（也可以使用符号链接）</p>
<p>剩下的步骤就可以创建新的locale了</p>
<pre class="brush: bash; title: ; notranslate">
localedef –i zh_CN –f UTF-8 zh_CN.utf8
</pre>
<p>如果需要其他的locale，只需要将zh_CN、UTF-8更换为其他的locale即可，具体的参数，可以查看/usr/share/i18n/locales和/usr/share/i18n/charmaps中的文件列表，最后的zh_CN.utf8可以自己指定。</p>
<p>检查新的locale</p>
<pre class="brush: bash; title: ; notranslate">
locale -a
</pre>
<p>此时即可生成新的zh_CN.utf8的locale，剩下的工作可以为locale-archive创一个符号链接，以便节省/分区的空间。</p>
<pre class="brush: bash; title: ; notranslate">
mv /usr/lib/locale/locale-archive /share/HDA_DATA/locale-archive
ln –s /share/HDA_DATA/locale-archive /usr/lib/locale/locale-archive
</pre>
<p><strong>特别说明</strong></p>
<ol>
<li>QNAP NAS会在每次升级之后，重新在硬盘中写入操作系统，所以此过程需要在每次升级版本的时候操作一次。</li>
<li>为了避免在UTF8编码无效时，某些软件（如MLDonkey）出现乱码的问题，在操作/升级前，请先关闭所有的QPKG。</li>
<li>HDA_DATA为不使用RAID配置的路径，如果启用RAID，则将更换为MD0_DATA。</li>
</ol>
<p><strong>关于MLDonkey</strong></p>
<p>MLDonkey的启动脚本位于/share/HDA_DATA/.qpkg/MLDonkey/mldonkey.sh。该脚本通过/usr/bin/locale取得当前环境的LANG环境变量。我图省事儿，直接将此修改为：</p>
<pre class="brush: bash; title: ; notranslate">
export LANG=zh_CN.utf8
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.weigblog.com/2009/10/24/qnap-ts-409-pro-nas-locale.html/feed</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
	</channel>
</rss>

