2012年4月23日 星期一

gettext 常用指令

參與開放原始碼專案的翻譯常常會用到 gettext 的各種工具。以下記錄幾個常用的命令:


從 POTFILES.in 更新 pot 檔:

在 po 資料夾裡執行 intltool-update -p

從 pot 檔更新 po 檔:

msgmerge [po file] [pot file] -o [output file]

從 po 檔產生 mo 檔:

msgfmt [po file] -o [mo file]

2012年4月1日 星期日

將 /tmp, /var/log, /var/tmp 導到 ramdisk 以後關機變慢

系統碟用 SSD 的人也許會想要把 /tmp, /var/log, /var/tmp 這些暫存區或者系統紀錄導到 ramdisk 去,以減少 SSD 的寫入次數,延長 SSD 的壽命。不過在你改了 /etc/fstab 以後可能會發現重開機時會在 sendsig 時卡很久。這是因為系統有兩個 logsave 的 process 會嘗試寫入 /var/log/fsck,而 ramdisk 每次重開資料都會消失。雖然不知道為啥在 kill logsave 的時候會 hang 住,不過只要在開機的時候幫 ramdisk 建立 /var/log/fsck 資料夾就可以讓 sendsig 正常地殺掉 logsave。

tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0