正體中文的使用者在 Linux 下掛載 FAT/VFAT 的時候,要注意這樣下 mount 參數:
user,rw,fmask=133,dmask=022,codepage=950,iocharset=utf8
我想紀錄的是關於中文 Big5 字碼和 Linux 下 UTF-8 locale 的轉換。我目前的 Linux 測試環境使用 en_US.UTF-8 locale,FAT 側則有一些經過 Unicode 補完計畫 補正的亂七八糟 Big5 (先聲明,對字碼和字碼轉換我是外行人)。
codepage 指定 FAT 檔案系統內使用的 codepage。雖然 manpage 說它是
Sets the codepage for converting to shortname characters on FAT and VFAT filesystems. By default, codepage 437 is used.
不過不設的話,長檔名一樣會出問題。 iocharset=utf8 的效果則和 utf8 參數相同,不過 FAT 並沒有 utf8 這個參數的說明,VFAT 才有;它的作用是指定 Linux 側的存取字碼。我在測試的時候先笨笨地把 iocharset=big5 ,結果跑出一堆亂碼;其實是要設得和 locale 相同才對。
fmask, dmask 用來讓檔案系統的權限乾淨點。
Navigate
- Previous: 我也不要按指紋 @2005/05/18
- Next: trackless bt @2005/05/20
Add a trackback
Please send trackback to: http://blog.seety.org/everydaywork/2005/5/19/324/trackback/.
Comments
Add a comment
太遜了吧