發表文章

目前顯示的是 6月, 2012的文章

MiCloud系統快照測試(II)

圖片
這次來點狠的! 相信Cloud IaaS服務上的快照是針對一個VM來進行的,所以有任何閃失應該都可以回來才對! 那∼把/etc/下面檔案踡砍了好了....(一般系統可別這麼做∼這台是測試機阿!!) 動作如下:(中間下錯一行指令@@...別見怪...) 砍光之後,悲劇果然發生...連reboot都給他卡住@@ 看起來連不上了...@@ 就直接上管理平台上點選"回復"吧.. 回復比之前多了好長一段時間...(大約幾分鐘吧) 好不容易恢復到running狀態...連連看吧 一連try了好幾次連線都失敗@@ 最後終於成功了! 登入系統∼OK! 檢查/etc/下面檔案∼OK! 結論: 其實不意外,以Linux架構而言,以檔案管理裝置...理應恢復檔案就可以恢復系統狀態,而可以猜想得到這應該是虛擬平台上提供的功能,而非執行中主機(我的這台測試機器)的OS內部功能...因為全都掛了,也不可能自己回復自己拉∼(這個分析比較沒有建樹...)。不過可以推論,下次安裝重要服務或是Patch時候,先照張相准沒錯!

MiCloud系統快照

圖片
這次測試的是MiCloud主機上的系統快照功能 在這次公測的主機上也有一樣的功能,但只限一次.... 不過可以重復使用...還不錯拉 每次上程式時候記得給他照張像唷∼∼ 首先登入系統: 為了建置快照前後的差異,這邊用Node Express建立一個專案叫做"TestSnapshot" 確認專案建立之後,先做個快照∼然後就要把剛剛那個專案砍掉摟∼ 這邊廂做快照的速度滿快的! 測試主機有20G左右的大小,整個快照時間不到30秒!! 在快照建立好後,這邊把剛剛測試的那個專案砍掉∼ (這只是測試專案,如果是辛苦做了很久的專案,不能回復那就!@#$!@...) 砍摟∼砍完之後順便記錄一下時間 確定這個時間點之後的檔案匣是不存在的.... 開始做快照的回復動作,點選快照,然後執行回復: 快照的執行當下,系統會被關掉,所以這邊SSH session被踢出來了... 也OK拉∼回得還比較重要! 執行完畢回復的動作後,登入檢查一下... (有自動把系統開起來...還不錯喲∼) 仔細看一下,專案"TestSnapshot"還在,而且建立時間與剛剛建立的一樣! 總結: 快照這個功能真的是程式上線、系統更新的好幫手!有了它,上程式可以多一點放心了! 而系統快照功能在VMWare等的虛擬主機軟體上常見到,在Cloud上更是不可或缺,像AWS、Heroku、Linode上都有相似的功能,而免費提供的就....應該沒有吧!更別說HiCloud了,能手動回覆得了,就謝天謝地拉!而更可取的是整個快照的時間很短暫,看起來應該是由差異備份而來,這點有聰明噢!

實用的MySQL Function: Split String

Function CREATE FUNCTION SPLIT_STR( x VARCHAR(255), delim VARCHAR(12), pos INT ) RETURNS VARCHAR(255) RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos), LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1), delim, ''); Usage SELECT SPLIT_STR(string, delimiter, position) Example SELECT SPLIT_STR('a|bb|ccc|dd', '|', 3) as third; +-------+ | third | +-------+ | ccc | +-------+ 轉載自: http://blog.fedecarg.com/2009/02/22/mysql-split-string-function/

MiCloud公測

圖片
台灣的Cloud:MiCloud說要公測∼玩玩看... 申請就不說了∼看起來這次是要展示MiCloud可以賣多小的主機...規格比手機還要小說@@(我的Galaxy Note都有1G記憶體了!) 看看管理平台...有別於一般系統管理硬邦邦的感覺∼挺美式風格的 跟他的爸爸"Joyent"有像∼卻又有一點台灣味... 主機列表畫面中,看得到開機、關機、砍機等功能...一個月可以用∼慢慢玩! 系統快照∼嚇....是時間機器嗎!我以為只有Mac有的說∼ 不過只有一次機會....加減用@@ 發現信箱來了封信....才在想說怎麼連線主機的說∼哈 看起來是用Linux的OpenSSL產出的Key 還用Mail通知....希望他不要備份了我的Key@@ (後來發現Key可以自己上噢∼不過看了說明...Linux的Key只有開機器前的有用,開完再上Key就沒用了...也OK拉∼比AWS的好了,都不知道Key從哪裡管勒@@) 來連線看看∼ 遇到麻煩拉@@...這個他沒有說怎麼辦...還好我看得懂英文...(SSH Key的權限不對...改成600就好) 現在可以連了吧∼終於連上線了!! (說一下壞話...好長一串阿@@,而且等得有點久...是認證嗎...??) 出現了~(還外掛廣搞勒~哈!) 看看他裝了啥∼(雖然申請時候有看到,總要驗證一下嘛∼嘻) 哇勒~裝一堆~有好有不好拉~ 我還滿喜歡的(竊笑~),不用自己裝:D.... 不過預設都沒啓動~還好! 我比較關心的是這個∼Node.js有預設安裝說!讚!!而且版本還滿心的喲~ 連續裝了幾個Node的套件,還不錯∼沒有讓我失望∼ 起一下Node服務∼看得到網頁了說~ 弄幾個網頁的測試好了~ 建幾個檔案...順便看一下IO速度(雖然我沒概念拉,我夠用就好,反正免錢~有興趣可以看看) 抓一下大檔案看看... 傳輸速度...我也沒概念~反正不慢就是 不過100多K/s,有時候跳到1.5M/s...幅度給她有點大就是了 不知道是不是我電腦剛好也在抓東西造成... 來個壓力測試... 參考至

判斷某個檔案中是否有特定文字

下面是個簡單的shell,可用於判斷某個檔案中是否有特定文字出現.... #!/bin/bash n=$((`cat /tmp/test.txt| grep http | wc -l` )) if [ $n -gt 0 ] ; then   echo 'YES...' else   echo 'NO...' fi

MOTD工具

常用Linux的朋友一定會發現把訊息放置在登入系統時候顯示常常吸引到使用者的注意 BBS的愛用者應該不陌生這種顯示方式 ,---. ,---. ,-----.,--.,--. ,--------. ,--. / O \ ' .-' ' .--./| || | '--. .--',---. ,--. ,--.,-' '-. | .-. |`. `-. | | | || | | | | .-. : \ `' / '-. .-' | | | |.-' |' '--'\| || | | | \ --. / /. \ | | `--' `--'`-----' `-----'`--'`--' `--' `----''--' '--' `--' ,---. ,--. ,--. ' .-' `--' ,---. ,--,--, ,--,--.,-' '-.,--.,--.,--.--. ,---. `. `-. ,--.| .-. || \' ,-. |'-. .-'| || || .--'| .-. : .-' || |' '-' '| || |\ '-' | | | ' '' '| | \ --. `-----' `--'.`- / `--''--' `--`--' `--' `----' `--'

Node.js for SQL-Server

圖片
微軟對Node.js很用心喔∼ http://blogs.msdn.com/b/sqlphp/archive/2012/06/08/introducing-the-microsoft-driver-for-node-js-for-sql-server.aspx

ssh-keygen不用輸入passphrase的方法

下面指令可以產生SSH Key(包含私鑰跟公鑰) 且可以忽略passphrase的輸入喔∼ ssh-keygen -q -t rsa -f [檔案位置] -P '' 

Shell參數判斷

Linux Bash Shell中傳入參數常用的代表符號有: $# :代表後接的參數『個數』,以上表為例這裡顯示為『 4 』; $@ :代表『 "$1" "$2" "$3" "$4" 』之意,每個變數是獨立的(用雙引號括起來); $* :代表『 "$1c$2c$3c$4" 』,其中 c 為分隔字元,預設為空白鍵, 所以本例中代表『 "$1 $2 $3 $4" 』之意。 而當程式中需要判斷某個參數是否有傳入時可用 -z 來判斷,記得在判斷符號( [ ] )中,"$1"需要用雙引號括起來: #!/bin/bash if [ -z "$1" ] ; then   echo Please use: ./stop_cnode.sh [Your Reason] else   curl http://211.78.255.1:3000/cnodeServer/stop/$1 -X POST fi 當然,如果是要判斷是否有引數傳入(有/沒有)時候 可以使用 $# == 0 與否 來判斷