将 Samba 升级成 3.0.13

为什么要将 Samba 升级成 3.0.13 呢? 唉…还不是为了 Unicode。原本的 2.2.7 版本,我再怎么设定,都无法显示 Unicode 字符。所以本来在 Windows 里显示得好好的 Unicode 档名,放到 Samba 里就破功了! 我想,这个问题应该是很难让人接受的吧?!

而最后结论就是,升级成 3.0.13 就搞定了。

升级步骤

这一次,并不能使用 Apt 来升级 Samba,必须到原始网站,下载原始码来编译,步骤如下:

  • 先到这里看看最新版的 Samba 原始档是什么,然后复制下载位址(目前看到的最新版为“samba-3.0.13-1.src.rpm”)。
  • 将原始档下载到 [/tmp],并执行编译:
cd /tmp
wget http://us2.samba.org/samba/ftp/Binary_Packages/RedHat/SRPMS/samba-3.0.13-1.src.rpm
rpm --rebuild samba-3.0.13-1.src.rpm
  • 经过一段长时间的编译之后,就可以安装 Samba 了(须先移除旧版)。
apt-get remove samba
mv /etc/samba /etc/samba2
rpm -Uvh /usr/src/redhat/RPMS/i386/samba-3.0.13-1.i386.rpm

P.S. Samba 3.0.13 安装好之后,连 samba-swat 都有了,其它设定,请看 Samba 2 的说明,但因为 Samba 本身已经支援 Unicode,所以就不用再设“client code page = 950”了。

转换编码

Samba 3.0.13 虽然已支援 Unicode 了,但我们在 Linux 下的操作接口仍然是 Big5 的编码,所以在修改完 smb.conf 之后,如果没有经过编码转换,里面有一些中文的讯息,在 Windows 下都会变成乱码。转换步骤如下:

  • 先复制一个 Big5 编码的 smb.conf:
cp /etc/samba/smb.conf /etc/samba/smb.conf.big5
  • 以后如果要编辑 smb.conf,请改为编辑 /etc/samba/smb.conf.big5,然后执行编码转换:
iconv -f big5 -t utf8 /etc/samba/smb.conf.big5 > /etc/samba/smb.conf

转换完之后,/etc/samba/smb.conf 就是 utf-8 的编码了。

相关网页

  1. No comments yet.

  1. No trackbacks yet.

return top

%d 位部落客按了赞: