星期五, 4月 18, 2014

用 mutt 閱讀 Thunderbird 郵件

上網找了不少資料,終於試出來方法:
  1. 安裝 mutt
  2. 將目前目錄切換到 $HOME/.thunderbird/xxxx.default/Mail 下
  3. 輸 入 mutt -R -f Inbox 即可。如果你在 Thunderbird 裡有多個資料夾,你會發現在目前的目錄下就有對應的檔案或資料夾,將 Inbox 替換為你要閱讀的資料夾名稱即可。用 -f 是指定檔案;用 -R 是表示以唯讀開啟,如果不用 -R,像是刪除或修改什麼的,mutt 是會真的去處理的。
有附件時,按 v  會讓你選擇檔案,這時就可以選 s 另存新檔,或是按 enter 以 mailcap 來顯示。用 mailcap 的話,可以在 $HOME/.mailcap 裡定義 content type 與其對應的處理。但是在命令列模式下,mailcap 能做的有限就是。
PDF 的話,可以用 pdftotext/pdftohtml 來處理,如果轉成 html 的話,就可以再用 w3m 來顯示。老話一句,在命令列下,像這種很需要圖形介面的,能做的真的有限。

星期二, 4月 15, 2014

電影流水帳(2014/3/20~2014/4/1)

pr006 Georgie Henley,飾演納尼亞傳奇裡的 Lucy,從第1集到現在,轉眼也過了5年,每次看這種主角是小女孩的系列電影,都會有「啊~長大了啊」的感嘆。
  • Iron Man 3 (IMDB, Wikipedia), 中譯:鋼鐵人3。Tony 閒閒沒事幹,做了好多鋼鐵人。其實 Tony 在復仇者聯盟紐約一戰之後心裡很害怕,開始有恐慌症,這也是為什麼做鋼鐵人的原因。這次的對手是多年前被 Tony 放鴿子的 Aldrich 博士, Aldrich 在被確定放鴿子之後,本來想自殺了,後來想開了,發奮圖強,跟 Maya 一起發明了很威的東西。這次就是 Aldrich 的復仇,他利用電影特效以及一個演員創造了十環幫與神祕的首腦,威脅全世界與 Tony,背地裡,其實是他的武器在威脅世界。Maya 跑去找 Tony 要說出真相,這時 Tony 的房子被攻擊了,Tony 在救出 Pepper 跟 Maya 之後,展開反擊,之後人就不見了。Pepper 帶著 Maya 逃走,並且聽 Maya 說故事,然後 Aldrich 就跑出來把兩人帶走了。Tony 意外掉到某個小鎮,遇到了小男孩,兩人建立起奇妙的友情,Tony 並因此領悟到他其實不需要恐慌,有問題,解決就好了,反正工程師雙手萬能。透過萬能的電腦,Tony 也拼湊出 Aldrich 就是幕後主使者。Aldrich 也趁 Tony 不在的時候綁架了總統,並且收買了副總統,打算掌權。Pepper 被 Aldrich 改造,Tony 為了救他,與 Aldrich 展開決戰。大戰到最後,眼看 Tony 就要落敗,被改造過的 Pepper 大展神威,把 Aldrich 打趴。故事的最後,Pepper 得到醫療,變回原來的樣子;Tony 拿掉了身體裡的碎片,也不再恐慌;鋼鐵人三部曲算是告一個段落。
    這 部電影的精彩刺激程度沒有前兩部來的好看,比較偏向於交代鋼鐵人的心病,我覺得這樣很好。超級英雄也是人,人的喜怒哀樂、心情的高低起伏,他們都有,如果 完全強調他們強的那一面,那就不好看了。另外一個亮點是馬克 47 號,可以遙控組合真的很酷,但經常性的失靈也很逗趣,為電影增添不少樂趣。
  • The Chronicles of Narnia: The Voyage of the Dawn Treader (IMDB, Wikipedia),中譯:納尼亞傳奇-黎明行者號。哥哥跟姊姊跑去美國了,只剩下弟弟跟妹妹在倫敦,寄住在親戚家裡,跟表弟處的不是很愉快。某天,三 人又快要吵起來的時候,牆上畫裡的海水突然動了起來,海上的船也隨著海浪搖搖擺擺,風浪越來越大、越來越大,海水流出了畫框,淹沒了整個房間。這三個人就 隨著海水流到了納尼亞去,並且遇到了賈思潘王子。他們就跟著王子航行到了一個島,發現這裡有怪霧會把人帶走。接著就進行調查,在路上遇到一個巫師,好心的 跟他們說明了是哪裡有問題,要把七把劍都收集到放到亞斯蘭桌上才能解決,然後就出發跟隨著晨星去冒險了。在航海的途中,表弟變成飛龍,這讓表弟非常沮喪與 害怕,但經過老鼠劍士的鼓勵,他們繼續航行。最後終於要對付大魔王了,他們陷入了苦戰,飛龍表弟被打落,但卻意外恢復人形,把所有的劍都放到了亞斯蘭桌上,打敗了大魔王。打敗大魔王之後,他們一起見到了亞斯蘭並且談話,之後,老鼠劍士到了亞斯蘭的國度,賈斯潘認清了自己該做納尼亞的王,而三人則是回到倫敦,結束這場冒險。回到倫敦後,表弟對納尼亞完全改觀,常跟表哥表姊聊起納尼亞的事情。
    就蠻普通,維持跟前兩部一樣的風格。我沒看賈斯潘王子那一集,但看起來似乎沒什麼影響,有機會再來看好了。

電影流水帳(2014/4/2~2014/4/14)

她是寂寞拍賣師的女主角 Sylvia Hoeks,在片中飾演一個有人群恐懼症的女人,讓人憐愛,也因此主角 Virgil 才會上勾。


  • The best offer / La migliore offerta (IMDB, Wikipedia),中譯:寂寞拍賣師。Virgil 是個知名的拍賣師,某天他接到了神祕女子 Claire 打來的電話,要請他去大宅裡估價。幾次電話下來,他被勾起了好奇心,於是前往一探究竟。幾次交手下來,他慢慢的愛上了 Claire。再加上機械人的組件與工匠 Robert 的推波助瀾,他成功的讓有人群恐懼症的 Claire 擺脫了恐懼,決定兩人廝守。換言之,他無可自拔地陷入了這場愛情騙局。同居以後,他去倫敦進行最後一次的拍賣,回來卻是人去樓空,他珍藏的畫不見了,心也跟著死了。我覺得最後的這段劇情雖然都沒有說話,但是很清楚的表達了 Virgil 心裡的那種空洞感、失落感與被欺騙的心痛。

    男主角是由 Geoffry Rush 飾演的,跟之前 The book thief 的感覺又是截然不同。看完這部電影最大的感想就是要多陪陪獨居的長輩,免得他們不小心因為寂寞而受騙。寫著寫著,我不知怎麼地想起之前李安拍的飲食男女裡的一場戲,老朱最後也是宣佈結婚,豈料對象竟是錦榮,而非年紀相當的梁媽媽,當場讓梁媽媽氣的暈倒。

  • Saving Mr. Banks (IMDB, Wikipedia),中譯:大夢想家。嚴格來說,這應該是 Mrs. Travers 的故事才是,Disney 只是配角。話說,Disney 想用 Mrs. Travers 筆下的 Mary Poppins 故事來拍電影,前前後後花了二十年時間,終於請到 Mrs. Travers 來到 Disney 公司討論劇本並希望能簽下合同。然而,Mrs. Travers 打的卻不是這個主意,她來到美國 Disney 公司,是想要讓他們碰軟釘子,自己知難而退。之後,Mrs. Travers 撕破臉打道回倫敦,Disney 鍥而不捨追到倫敦,終於以誠意說服了 Mrs. Travers 簽下合同,順利拍出 Mary Poppins 這部電影。

    飾演主角 Mrs. Travers 的 Emma Thompson 演技非常的令人注目,讓其他演員相形失色,幸好飾演 Disney 的 Tom Hanks 能與之抗衡,要不然可能就是她唱獨角戲了。電影裡交錯著 Mrs. Travers 的童年,讓人能理解為什麼他會寫出 Mary Poppins 的故事以及最後在戲院痛哭的原因,劇情很圓滿。電影的最後有播出 Mrs. Travers 與劇本小組討論的錄音,那個口音乍聽之下會讓人以為是戲裡的 Emma Thompson 在講話,真的是佩服 Emma Thompson,不過或許這也是故意找有英國口音的 Emma Thompson 來演的原因吧。

星期二, 4月 08, 2014

PHP Cannot create references to/from string offsets

之前在自家的 wordpress 上用了 muki-tag-cloud ,在翻 apache log 時,發現常會出現這錯誤:
PHP Fatal error: Cannot create references to/from string offsets nor overloaded objects in wp-content/plugins/muki-tag-cloud/widget.php on line 230
今天發狠找出原因了,首先還是要先瞭解 PHP 的 reference 是幹嘛的,我覺得這篇 PHP Reference 測試 不錯,裡面沒什麼解說,就是幾個範例與執行結果,看完大概可以了解到 PHP 的 reference 的行為是什麼。
接著就是試著寫小程式複製出錯誤。
可以複製出來之後,就知道問題在哪裡了 (好吧,我知道 log 的訊息其實很清楚,但我對 PHP 不熟,所以...),PHP 不允許建立字串中字元的參考。知道問題了,就可以解決了,後來就簡單加上判斷,如果發現 $widget['callback'] 是字串的話,就跳過,不建立 $widget['callback'][0] 的參考,如此一來就解決問題了。
順手發了 pull request 給作者,希望是會改,要不然每次更新這 plugin 時,都要再改一次。

星期日, 4月 06, 2014

awk 的 pipe

之前都很笨,用 awk 處理完,還是都先用 printf 輸出到檔案,再用 sh 去執行。今天終於去查了 awk script 裡是否有類似 system() 的用法,果然 awk manual 裡就有提到 system() ,不過該小節建議了更好的做法,就是直接用 | 把輸出的指令 pipe 到 sh 去。
作法大致是這樣:
awk '{printf("cp %s /media/usbdisk%s\n", $1, $1) | "/bin/sh" }' files-list.txt

loopback device

要掛載一個 image,就得利用到 loopback device,一般來說只要在 mount 時,指定 -o loop 跟 image 檔名就可以了,例如:sudo mount -o loop your_image /mnt

但是,我遇到 image 檔案無法掛載的情況。用 file 指令去看,發現到 image 檔裡有多個 partition 。

precise-desktop.img: x86 boot sector; partition 1: ID=0xc, active, starthead 1, startsector 32, 147424 sectors; partition 2: ID=0x83, starthead 45, startsector 147456, 4864000 sectors, code offset 0x0

後來想起多年前看過的 losetup,就看了一下 losetup 的使用說明,裏面提到 -o 這個參數,這是用來指定 offset 的,也就是說,可以把 image 檔案裡從指定 offset 開始的地方指派到某個 loopback device 去。於是根據 file 的資訊,算出 offset 是 147456*512 = 75497472,然後用 sudo losetup -o 75497472 /dev/loop0 precise-desktop.img 去指定,這樣 /dev/loop0 就對應到 precise-desktop.img 檔案裡的第二個 partition ,最後就可以用 sudo mount /dev/loop0 /mnt 掛載了。

反過來,也可以對一個檔案做 fdisk。這時要先預先用 dd 幫檔案配置空間,例如要配置一個 512M 的檔案:dd if=/dev/zero of=my.img bs=1M count=512 。接著一樣用 losetup 把 image 檔指派到 loopback device:sudo losetup /dev/loop1 my.img ,最後就可以用 fdisk 來分割了。

星期四, 4月 03, 2014

debian package 的相依性圖形

找了半天找不到適當的指令顯示套件的相依套件,想起之前無意找到的 apt-cache dotty,就想說用圖形來看套件的相依性還是最快的。

產生圖形的方法:

  • apt-cache:apt-cache 本身就有提供 dotty command 可以產生,用法是 apt-cache dotty your_package > out.dot

  • debtree:debtree 需要另外安裝,好處是有提供更多額外的參數來產生圖形,用法是 debtree your_package > out.dot

接著就可以利用 dot 指令來產生圖形了,dot 是 graphviz 套件提供的指令,可以根據 dot 語法來產生圖形,用法是 dot -T png -o out.png out.dot。用 apt-cache dotty 產生的 dot 語法,會讓 dot 產生圖形的速度變得非常慢;而 debtree 所產生出來的 dot 語法,就不會如此。我猜想是 debtree 有預先排除掉 libc6, libstdc++6 與 zlib1g 的關係吧。

星期一, 3月 24, 2014

電影流水帳(2014/3/4~2014/3/19)

Stars Geoffrey Rush and Sophie Nélisse of "The Book Thief" at the opening reception at the Mill Valley Film Festival 在偷書賊裡飾演養父女的 Geoffry Rush 與 Sophie Nélisse,兩人的互動流露出真摯的情感,很難想像 Geoffry Rush 會是神鬼奇航裡那個亦正亦邪的 Barbossa 船長。


  • The book thief (IMDB, Wikipedia),中譯:偷書賊。小說改編的電影,改編的不錯,故事溫馨。但我覺得比較奇妙的是,作者刻意以死神來講述一些段落,讀起來會有刻意的感覺。電影倒是還好,只有在片頭跟片尾才有死神的旁白出來,但在小說裡就很多地方了。

    故事主要是講小女孩 Liesel 的故事,小女孩 Liesel 的母親很窮,只能把 Liesel 跟弟弟送給人收養,在路上,弟弟死去,只剩下 Liesel。到了收養家庭以後,養父很慈愛,養母嘴巴刻薄,鄰居 Rudy 也對她很好,接著就是講 Liesel 的生活點滴了。說她為了想認字,去偷取書來看,在深夜跟養父一起念。生活裡也有遇到不一樣的人,例如被迫害的猶太人 Max。就這樣直到被空襲轟炸為止,在這個時間點,死神到來,並且帶走了所有 Liesel 才剛喜歡上的人與事。Liesel 再次孤單踏上人生的旅程,直到後來又遇上 Max ,最後是死神的旁白以及隱喻的場景,說明 Liesel 到了美國,並且活的很好。

  • I, Frankenstein (IMDB, Wikipedia),中譯:科學怪人-屠魔大戰。我覺得這部電影真的是不怎麼樣,劇情普普通通。

    Adam 被 Frankenstein 製造出來以後,沒多久就跟 Frankenstein 反目,所以就殺了 Frankenstein 的太太,Frankenstein 就追著 Adam 想復仇,後來在極地被冷死。Adam 帶著屍體回來埋葬時,遇到了惡魔,還好 Gargoyle 在附近,救了 Adam。Gargoyle 跟 Adam 解說了惡魔與 Gargoyle 的情況,可是因為 Adam 有感覺到被歧視,選擇離開。Adam 孤身一人生活了兩百多年,直到現代,才決定把所有惡魔都幹掉。於是,惡魔、Gargoyle 跟 Adams 這三方開始進行角力,這次的角力有人類科學家加入,他們是受雇於惡魔,在進行讓死人復活的科學研究。總之,打的亂七八糟之後,最後就是 Adams 跟 Gargoyle 一起把惡魔以及他們的意圖都消滅掉這樣。

  • 僵屍 (IMDB, Wikipedia),英譯:Rigor Mortis。劇情很簡單的鬼片,導演拍的很到位。與其說是鬼片,我覺得導演想拍的是眷念與不捨,梅姨對丈夫的不捨,錢小豪對自己孩子的不捨,九叔對自己身體的眷念,阿鳳對房子的不捨…,這些串起了整部電影。

    錢小豪是過氣的武打明星,搬到這舊大樓去住,才剛搬進去,就遇到了雙生女鬼,差點就沒了命,幸好阿友出手幫忙。後來梅姨的老公冬叔失足跌落而死去,梅姨想冬叔繼續陪她,就請道士九叔幫忙,看是否能讓冬叔復活。豈料九叔居心叵測,幫忙養出僵屍,在連續的死人之後,阿友跟小豪就只能聯手解決僵屍。

星期五, 3月 14, 2014

MMS 與 SMIL 小記

SMIL 是 MMS 在使用的格式,其實就是類似 HTML/XML 的文字檔案,還蠻容易了解的,比較詳細的介紹可以參考這篇文章:SMIL Guide
  • 在 Android 裡,可以把下列的檔案複製出來,然後用 sqlite3 打開,輸入 select * from part; 就可以看到
    • /data/data/com.android.providers.telephony/databases/mmssms.db
    • /data/data/com.android.providers.telephony/databases/mmssms.db-journal
  • 基本上只要在簡訊裡附加圖片並輸入文字,也就是 MMS ,就可能會使用到 SMIL 。
  • SMIL 的 layout 放在 head tag 裡,也就是說,假若有多個 slide,都會是同一個 layout,因為一份 SMIL 文件只會有一個 head tag。而 body tag 裡的 par tag 代表一張 slide,這裡可以利用 dur attribute 指定播放的時間。slide 可能不只一張,所以可以有多個 par tag。
  • 電信營運商 (Carrier)  的不同有可能會導致送出的 SMIL 與收到的 SMIL 不一樣,目前我有遇到的情況是,營運商是遠傳,送出文字在上、圖片在下的 Slide 以後,收到會是圖片在上、文字在下的 Slide;中華電信的話,就沒問題。
  • 傳送 3gp 的影片,傳送以後,收到時會是一個 GIF 圖片以及一個 AMR 音效檔,Android 並沒有做轉換的工作,轉換是在運營商那邊完成的。

星期五, 3月 07, 2014

AngularJS 起手式

我是參考這篇教學:Learn to Build Modern Web Apps with the AngularJS Tutorial

教學裡使用的是 yeoman ,這真的有方便。首先要安裝 nodejs 跟 npm,在 Ubuntu 13.10 裡,就用 sudo apt-get install nodejs npm 就行了,如果是 Ubuntu 12.04,得另外裝 chris lea 的 PPA,再 update/install。教學裡的第一步,就是安裝 yeoman,用 sudo npm install -g yo 來安裝,可是我不太喜歡直接裝到 /usr 系統資料夾去,所以找了一下,看能不能像 Python 的 pip install xxx –user 一樣裝到使用者目錄下。

搜尋的結果是可以的,但需要做些設定。設定值大致如下:
這樣就可以不用 sudo,然後用 npm install yo 就可以把相關模組都裝到使用者目錄下了,而且相關的指令也都可以用。

參考資料:

星期四, 3月 06, 2014

電影流水帳(2014/2/19~2014/3/3)



完全找不到想放的照片,只好放電影海報囉。


  • 私人訂制 (IMDB, Wikipedia)。電影裡有三個故事,還蠻好笑的。

    片頭一開始的年代竟然是年初,一個軍閥抓住一個女孩子,但女孩子寧死不屈,即使有人求情,她都不肯屈服。到後來有人劫大牢,跟她說關卡都打通了,可以救走他,一直到大門,幾乎關關通過,每次小白都說是自己人,結果最後,她說我不走了,既然都是自己人,那幹麼還要逃走。

    說穿了,私人訂製是一個公司,一個可以配合你演出非現實劇情的公司;想當領導,可以;想當有錢人,可以;所以他們可以配合你演戲。甚至你的錢不夠,他們都可以幫忙跟其他人的戲湊到一起,讓你儘可能過足癮。第一段是一個領導的司機想試著當領導看看,看為什麼他之前跟過的領導會頂不住誘惑而被抓去關,他是衝過不少誘惑關卡,但後來還是過不了色關。第二段是個低俗的導演,想要不俗,後來是真的不俗了,結果卻得了高雅過敏症,最後仍是到酒店解決過敏問題。第三段比較溫馨,是讓小馬救命恩人當有錢人,這一天可真的是風光極了,到了晚上,還讓北京城關了燈,說有關燈的地方就是你的物業。

    片子的最後用了一個笑話當收尾,有記者訪問葛優飾演的楊老師,問說你有一千萬捐不捐?捐。有一億捐不捐?捐。到了問有一輛車,你捐不捐的時候,楊老師說不捐了。原因為什麼呢?因為楊老師真的有輛車。

  • Small timers (IMDB),中譯:定時器。真難得,可以找到一個電影是維基百科裡沒有的。小品的喜劇電影,我個人覺得不是那麼好笑,普普通通。不過 IMDB 給 7.5 分是怎麼回事??

    劇情敘述三個笨賊因為失業與金錢的壓力,決定去搶銀行。原本預定是使用麻醉氣體將所有人都麻醉,然後把錢奪走,想不到卻拿到笑氣,於是就在銀行裡的人都在笑的時候,順利把錢拿走了,在這同時,其中一個人也無意拿走了一個公事包,裏面裝的是鑲滿鑽石的情趣玩具。拿到錢以後,他們很開心,結果一打開,卻被防盜漆噴的滿身都是,錢沒辦法用了。另外一個人打開公事包,發現了好東西,於是三人打電話給銀行老闆,要把這情趣玩具拿來換現金。老闆其實就是黑道,開銀行算是副業而已。老闆跟他們三人虛與委蛇,私底下派出殺手。三人講完電話,想說可以拿到現金了,很開心,決定先把漆洗掉。去洗掉漆的時候,殺手來到家中,把情趣玩具取走,並且也綁走三人其中一人的太太。三人回來發現東西沒了,人被綁走,老闆又打電話來,要他們快交出情趣玩具。三人沒辦法,決定潛入老闆家中去救人。最後在老闆家中以皆大歡喜的方式收尾,老闆被指證逮捕,三人也因此免去搶銀行的罪刑。

星期日, 3月 02, 2014

systemd

最近 Debian 宣佈以後改用 systemd,Canonical 也隨之跟進,所以之後衍生的 distribution 應該也都會跟進。Arch 是已經改用 systemd 了,CentOS/RHEL 應該是到 7 以後才會可能會用 systemd。

看到這兒就想到目前在用的 Ubuntu 12.04 應該也可以改用 systemd 吧~目前先找到這兩篇:
基本上都是要特定 ppa (上面這兩篇提到的 ppa 還都不同,到時候再來看那邊比較新就用哪個),安裝 systemd 以後,然後改 grub ,大概就這樣。可能遇到的問題是 /etc/mtab 問題以及一些服務可能會無法啟動。從 Ubuntu Wiki 對 systemd 的說明裡 看起來缺的東西不少,我想最好是先拿 VM 的機器來試驗,不要拿工作機來試驗,免得把自己搞得焦頭爛額。

星期二, 2月 25, 2014

電影流水帳(2014/2/14~2014/2/18)

Nylon_Guys_TV- Dianna_Agron-005 Dianna Agron ,飾演 The family 裡的女兒,為愛本來要尋死,後來看到來追殺的人,為了家人,就放棄自殺,回去幫忙了。


  • Frozen (IMDB, Wikipedia),中譯:冰雪奇緣。很棒的動畫片,有十幾年前看迪士尼動畫片的感覺,有劇情,裏面的歌也好聽。

    Elsa 有與生俱來的魔力,跟妹妹 Anna 感情很好,但是在某次玩耍時,出了意外。Elsa 的魔法不小心打到 Anna,後來雖然被矮人救回來,可是 Anna 這部份的記憶被抹去,Elsa 則是被父母告誡,禁止繼續使用魔法,也不能跟 Anna 一起玩。父母有次出外航海的時候,船沈了,雙雙身亡,只留下 Elsa 與 Anna 。時間一天天過去,兩人都長大了,Elsa 繼位為女王,Anna 則是在女王繼位那天認識了一個王子 Hans,並且一見鍾情。兩人跟 Elsa 說要結婚,Elsa 為了保護妹妹,當然是不允許妹妹就這樣跟一個只認識一天的男人結婚。兩人吵起來,Elsa 的魔法隨著 Elsa 的情緒而失控,整個城市變得冰天雪地。Elsa 很害怕繼續傷害到妹妹跟大家,就逃走了。Anna 跟著追去,想要把話說清楚。Elsa 在離開家之後,整個視界開闊了,不再害怕自己的魔法,並且開始試著運用自己的魔法,就在這時唱出 Let it go 這首歌。Anna 在追趕 Elsa 的路上,遇到 Kristoff ,請求他幫忙,展開冒險。經過一番跋涉,Anna 與 Kristoff 滋生出愛苗,也見到了 Elsa,兩人的談話並不順利,Anna 再次意外地被 Elsa 的魔法打到,並被 Elsa 趕走。Hans 發現 Anna 的馬跑回來,就帶著人馬找到 Elsa,經過一番打鬥,成功的將 Elsa 帶回,並關在城堡的大牢裡。Anna 被 Elsa 魔法打到之後,全身冰冷,Kristoff 帶 Anna 去找矮人,想請矮人解救 Anna ,矮人表示沒辦法了,等心冷到底就沒救了,只能以真愛來解決問題。Kristoff 趕緊帶 Anna 回城堡,要讓 Hans 以真愛之吻救 Anna。回到城堡以後,Kristoff 黯然離去,Anna 卻發現了驚人的真相。原來 Hans 是假裝愛上 Anna 的,為的就是要以結婚之名來奪取王國。Elsa 以她的魔法逃出城堡大牢,在漫天風雪裡漫無目的的走著;而 Anna 也透過雪人 Olaf 順利逃出,想要找 Kristoff 求取真愛之吻。Anna 在護城河的冰面上,看到了回頭來找她的 Kristoff,也看到了即將被傾倒的船壓到的 Elsa,這時候 Anna 做出了選擇,她選擇提醒姊姊 Elsa,讓 Elsa 免於傷害。就在這時 Anna 的心冷到了底,全身被冰凍了起來。Kristoff, Elsa 跟 Olaf 看到變成冰塊的 Anna 都非常的悲傷,但是 Disney 的卡通不會讓主角 Anna 就這樣死去,就在此時,Anna 因為她對姊姊的愛,解除了姊姊的冰凍魔法,也讓姊姊了解了「水能載舟亦能覆舟」的道理,於是 Elsa 讓魔法再次升級,解凍了整個王國,以歡樂的喜劇收場。

  • The family (IMDB, Wikipedia),中譯:黑幫追殺令。黑色喜劇,蠻有趣的,但是說很好笑,其實也還好,劇情倒是不會讓人枯燥。一家人的互動倒是很溫馨,像是媽媽會提醒女兒記得帶保險套、嘮叨說不要再講髒話、媽媽希望一家人平平安安、兒子會抱怨為什麼只有老爸可以講髒話…等等的,看的出來家人都會相互關照,兒子跟女兒之後看到殺手來了,也會回家去幫忙。

    故事大概是這樣,就一個紐約黑幫因為出面指控而加入了証人保護計劃,FBI 這一次把他一家人都送到法國諾曼第去,之前已經搬過好幾次家了,每次都是因為他們這一家搞出很多事而被迫搬家。在搬過去以後,這一家很快的融入當地,兒子迅速的在學校發展其勢力;女兒算是低調的了,只是談了師生戀;太太認識了教堂的教父,準備要辦歡迎會;父親意外當了作家,低調的在家裡。之後,女兒為老師獻出第一次,卻被老師拒絕繼續交往,想尋死;父親去參加電影分享會,播放的「教父」勾起黑幫日子的回憶,把自己以前的日子都大嘴巴的講出來;兒子發展黑幫勢力搞得太誇張,再加上投稿意外登上報紙,透露了行蹤。美國紐約的黑幫循蹤而來,展開殺戮。一家人團結起來,再加上 FBI 的幫忙,順利渡過難關,只是又得搬家了。

星期四, 2月 13, 2014

電影流水帳(2014/2/1~2014/2/13)

SriDevi 是 English Vinlish 的女主角,演技絲絲入扣,引人入勝,從外表很難看的出她已經 50 歲了。


  • English Vinlish (IMDB, Wikipedia),中譯:救救菜英文。Sashi 是一個傳統的印度婦女,因為老公有個不錯的工作,所以她就在家照顧孩子跟家人,同時也稍稍發展自己的廚房事業。但是,卻因為不懂英文,被家人無意的看輕。她的姊姊打電話來請 Sashi 過去美國紐約幫忙籌辦女兒的婚禮,可是懂英文的丈夫跟女兒要一段時間後才能過去,不懂英文的她只能單身一人上路。在準備出國的期間,她感到很害怕,家人也沒有給予適當的安慰跟幫忙。等到上路以後,反而是坐在她旁邊的同鄉給予她很大的幫忙跟安慰。到了紐約以後出去玩,她鼓起勇氣去咖啡店買東西,卻被店員奚落,倉皇的逃出咖啡廳。這時候,她邂逅了 Laurent ,也意外看到有英文速成班,她決定去參加。在班上,她有了一起學英文的伙伴,很巧的是,之前邂逅的 Laurent 也同班。就在看似學習一帆風順的時候,她的家人來到紐約,中斷了她的學習,還好有姪女的幫忙,讓她能繼續。到了最後,期末考試跟婚禮同一天,Sashi 再次因為甜點被打翻,無法參加考試。姪女打電話邀請老師跟同學一起來參加婚禮,讓 Sashi 能當場在老師面前演說,通過考試。最後雖然 Laurent 無法如願追到 Sashi ,但卻是一個皆大歡喜的結局。

    這部電影很好看,一開始 Sashi 在家裡被看輕其重要性的片斷,特別讓人憐惜跟深思,在一個家庭裡,應該要好好的傾聽家裡成員的話,並且給予適當的幫忙、安慰跟鼓勵,避免說出一些傷害人的話語,這樣才能避免失去自己最重要的人。

  • The karate Kid (IMDB, Wikipedia),中譯:功夫夢。故事劇情其實是依循以前功夫片的路在走,只是主角換成了 Will Smith 的兒子,以及有在好萊塢打出名號的成龍。Dre 在北京唸書,可是卻被欺負,然後他遇到一個管線維修工 – Mr. Han ,Mr. Han 救了他。Dre 知道 Mr. Han 學有功夫,就想跟他學。Mr. Han 不肯,帶著他去找欺負他的人的師傅講理,豈料師傅不講理,反倒下了挑戰書,聲明如果打贏,以後他的學生就不找 Dre 麻煩。迫於無奈,Mr. Han 答應了這條件,然後開始教導 Dre 功夫。接著的教導過程有點像是傳統功夫片,Mr. Han 一直要 Dre 做重複的動作,卻不說明為什麼,直到有一天 Dre 受不了了,Mr. Han 才出手跟他對起招,讓他明白重複的動作是為了讓他的身體記憶住當敵方出手時,該怎麼反應。等 Dre 明白了,接著才開始教授他更多的招式。最後的比賽,對方出了不光明的招式,就是故意打傷 Dre ,迫使他能放棄比賽,但 Dre 不願意放棄,請 Mr. Han 用拔罐幫他療傷,接著上場打決賽。決賽時,對手再次打傷 Dre 的腳,但 Dre 不放棄,以跟 Mr. Han 去山上悟出的應對之道打贏了比賽。故事普普,有些地方不合時宜,例如拔罐,決賽的時候是有點扯了,拔罐雖然有用,但還沒神奇到可以讓人忘記疼痛能馬上上場;另外就是故事裡有穿插 Dre 喜歡上班上女同學並且在一起的片段,女同學父親在女兒表演之後馬上要女兒離開 Dre 的部份也不合時宜,現代的大陸女性有這麼聽話嗎? 我不以為然。整部片在練功的部份拍的還可以,就打發時間囉。

  • Justice league: The New frontier (IMDB, Wikipedia),中譯:新正義聯盟-超級最前線。從中間開始看,大致就是不少超級英雄被誤會,然後接著出現了地底人的入侵。超級英雄們就奮起抵抗,扭轉了世人對他們的看法,也贏得讚揚。這集裡,綠燈俠得到了戒指,並且運用了他的能力讓爆炸免於波及人群。坦白說,不是那麼的好看。

星期三, 2月 12, 2014

The Debian Administrator’s handbook

這本電子書是免費的,你可以在 The Debian Administrator’s handbook 網站上取得。

之前在 LinuxToy 上看到這本書可以下載,有利用 git 去抓取原始碼,後來就擱在硬碟裡。最近在整理硬碟時,看到這份原始碼,看了一下,居然可以產生 epub ,又看到 publican.cfg,以為是用 Python Pelican 產生的,就想說要找一天來仔細看看。今天再仔細一看,發現這誤會可大了,原來人家是用 publican,不是 pelican。

publican 的安裝很簡單,依照原始碼裡的文件,就用 sudo apt-get install publican 就可以,但在 Ubuntu 12.04 下,並沒有 publican-debian 。執行 publican 時,會有錯誤訊息:”Failed to load brand file”。所以我修改了 publican.cfg 裡的 brand,將其改為 common 就可以順利執行。指令是這樣下的,要產生 PDF:publican build –format=pdf –langs=en-US ;要產生 epub:publican build –format=epub –langs=en-US 。看原始碼裡有簡體中文的翻譯,有試著產生一份,但是發現並沒有翻譯完全,在 gitcafe 有看到 fork 一份出來,但是一樣不全,看來是停止翻譯了。

星期二, 2月 11, 2014

innobackupex

在噗浪上看到有人分享 innobackupex 這工具,就決定來試用看看。這指令其實是被包含在 xtrabackup 工具裡,使用 Perl 寫的,所以只要安裝 xtrabackup 就可以。

CentOS 5 上的安裝可以透過 yum,步驟可以參考 Percona 上的說明,首先用 rpm -Uhv http://ift.tt/1iiiaVw 安裝 Percona 的 repo 檔案,接著用 yum install percona-xtrabackup 就可以了。

我使用的是 MariaDB 5.5,試著要備份時,卻出現沒有指定 datadir 參數的問題。innobackupex 裡實際上使用的是 xtrabackup_55 (不同的資料庫需要用不同的指令,innobackupex 是自動判斷),大致追蹤指令原始碼,發現它是讀取 my.cnf 來得知 datadir 的值; MariaDB 的 my.cnf 很簡潔,直接 include /etc/my.cnf.d 下的所有 cnf 檔案,再查看裡面各個 cnf,都非常的簡潔,看起來是都採用預設值,所以不需要額外設置。因此我在 /etc/my.cnf.d/server.cnf 的 [mysqld] 之後加上 datadir=/var/lib/mysql 以後,innobackupex 就可以順利運作了。
  • 備份:innobackupex –user=DB_USER –password=DB_PASSWORD /path/to/BACKUP-DIR
  • 回存:innobackupex –copy-back /path/to/BACKUP-DIR

extundelete

之前一直以為在 Linux 上反刪除是很麻煩的,直到過年前自己誤刪了檔案,去 Google 解法之後,才知道現在有 extundelete 這工具。
根據 extundelete 的網站說明,在反刪除之前,第一要先卸載,如果是系統分割區,那最好就是趕緊重開機,以 LiveCD 開機;第二就是用 extundelete 進行搜索被刪除的檔案。
我 自己的情況是不小心移除了系統分割區上的檔案,所以我趕緊重新開機以 Ubuntu 12.04 LiveCD 開機。重開機以後,去系統設定裡的 "Software & Updates" ,把 main, universe, restricted, multiverse 都勾選起來,接著到 terminal 裡執行 sudo apt-get udpate && sudo apt-get install extundelete ,安裝 extundelete。安裝完成後,執行 sudo extundelete --restore-all --restore-directory /home/user --after 1390881600 /dev/sda1 就會開始進行反刪除的動作,反刪除後的檔案會放置在當前目錄下的 RECOVERED_FILES 資料夾下。"--after" 表示只拯救指定日期後的檔案,而其後的數字,是用 date -d "2014-01-28 12:00" +%s 取得,extundelete 不接受日期時間字串,只能透過 date 指令取得數字來使用,這部份可以在 extundelete 的 man page 裡看到。
只 是 Ubuntu 12.04 的 extundelete 有問題,我後來再用 Ubuntu 13.10 的 LiveCD,才能正常使用。但最後還是拯救失敗,因為從刪除到重開機,我還是做了太多動作,導致一些檔案已經被覆蓋掉,殘念,只能安慰自己說那些檔案其 實不重要。
參考資料:
Related Posts Plugin for WordPress, Blogger...