2012年12月31日 星期一

VMware Virtual Disk Shrink 將vmdk檔案縮小

VMware Virtual Disk Shrink 將vmdk檔案縮小

有使用VMware Workstation 或是Fusion 的使用者一定會遇到一個令人頭痛的問題,就是vmdk的檔案大小只會增加不會減少,如果用在硬碟上可能還不會太有感覺,但如果是使用速度等級+9,容量大小-10的SSD裝備,那真的就要特別的注意,以免一不小心就超崩,但如果你是屬於田橋仔,用的SSD容量都是1TB起跳的+20神裝,那這篇文章可以跳過了。

為何vmdk只會增加不會減少呢? vmdk在Virtual Machine裡面就是代表真正的硬碟,只要對硬碟稍有認識的都知道,作業系統刪除檔案的時候並沒有真正把的資料刪除,只是讓使用者看不到而已,所以救援軟體才可以把資料救回來,這也驗證了資料並沒有真正的被刪除。

由以上得知vmdk為何只會增加不會減少了,但真的沒有辦法了嗎? 耐屋口寧,今天就要是把這個小問題解決!

千萬別覺得原廠的設計很白癡,VMware是商業公司,軟體本來就是針對商業化,如果軟體設計檔案刪除就真的刪除的話,那才真的會出問題。在正式運行的環境當中,假設有檔案被誤刪,而軟體設計又直接delete的話,那不雞飛狗跳才怪,連救援的機會都沒有,保證會被罵到臭頭。

所以原廠目前的考量是給使用者自行決定,只要照著步驟應該都可以成功。分成兩個階段,為Guest OS和Host OS。


先從Guest OS來說好了,這裡用3種比較常見的OS來說明如何達成縮小之術。


Guest OS

Windows XP
1.到Microsoft官網下載SDelete v1.6版 http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx
這個軟體主要的功能是把未使用到的空間全部清除,原理應該是全部填入0,也就是剛入手磁碟機的狀態,但針對的是未使用的空間,這步驟很重要,如果沒有執行這段,後面的指令還是會無效,因為vmdk未使用的空間並未被清除,軟體會當成還有資料在裡面,就沒有辦法把未使用的空間真正清除掉。
2.解壓縮把 SDelete.exe 放在C:\Windows\System32底下。
3.按Win+R呼叫出執行的視窗,或是點開始>執行也可以,輸入cmd後按Enter鍵。
4.輸入指令 sdelete -c -z c:\,假設你的Guest OS的Partition不只一個,最後面的c:\改成對應的磁碟機代號即可,例如d:\e:\


Linux
非常簡單,只要一行指令就搞定! 熟悉Linux的一看就知道,把zero.dat這個檔案填入無限的0,直到硬碟空間滿了就會自動停止,再把zero.dat這個檔案刪除。因為內容全都是0,所以軟體判斷未使用空間的內容都是空的,自然就可以正確釋放。
sudo dd if=/dev/zero of=zero.dat ; rm -f zero.dat 一行搞定
cat /dev/zero > zero.dat; rm -f zero.dat 這行指令也可以


Mac OS X
也只需要幾個動作而已,

2012年11月17日 星期六

Linux 多線下載的神兵利器 aria2

在Linux底下,如果想下載檔案可以用wget指令,但wget並沒有支援像FlashGet迅雷這類軟體主打的功能「多線下載」以及「BitTorrent」。

在這網路需求急速提升的世代,以及迷片量暴增的時代,沒支援多線下載還說得過去,但沒支援BT可就沒辦法讓鄉民大力支持了。 (沒辦法讓搖桿驅動起來,誰還會想用阿)

Linux系統下載BT軟體最出名的應該就是Transmission了,這玩意兒可厲害了,不但有提供GUI模式使用,還有提供網頁可讓遠端的電腦操控。更夭壽的是,文字介面下一樣也可以安裝使用,透過網頁就可以操作,大大的節省CPU資源,所以有許多NAS直接內建,不但快而且有效,加上配溫開水,保證15分鐘OUT! (拍謝,廣告看太多了........)

但畢竟Transmission只能下載BT,但是Http(s)、Ftp、Metalink這些會用到的協定都沒支援,在重要時刻無法發揮戰力,於是宣告退場。


在一場詭譎多變的因緣際會之下(好複雜喔 = ="),找尋到了aria2這套神兵利器,是堪稱盤古開天==>女媧補洞==>有史以來最強的Linux下載軟體? 以目前而言啦。(逃.....)

aria2有什麼過人之處呢? 我想應該是它有45CM吧,比鄉民平均30CM還要長,所以才有這麼多人支持它和推薦它。

靠! 阿不是啦,上面說的隨便看看就好(低頭看ing..........),會被這麼多朋友推崇的原因有很多。

它有著有以下的優點:

1.程式容量小,佔不到3MB的空間。
2.軟體資源需求低,不需要x-windows就能執行。
3.目前支援的協定有Http(s)、Ftp、BitTorrent、Metalink。
4.支援多線下載、續傳的功能。
5.GUI(圖形使用者介面)有支援Linux和Windows,非常方便,不用背指令。
6.支援Web GUI,可使用網頁新增、暫停、移除、管理,幾乎和GUI一樣。
7.想到在寫。


但也不是沒有缺點,像是:

1.目前不支援迅雷的下載協定。
2.某些web操控需要安裝LAMP(Linux、Apache、MySQL、PHP)。
3.沒辦法讓我用10G/10G的速度下載和上傳(這......會被打吧)。


先撇除缺點來看,aria2的確是非常理想的Download Manager,GUI可應用於一般平台上,遇到不支援的OS也可用網頁來操控,例如PAD、SmartPhone,使得aria2可用的層面就比其它相同類型的軟體還要多很多。


好了,前面屁了這麼多,也該進入主題了吧!

小弟目前的OS:Ubuntu Server 12.10

如何安裝aria2? 先上官網 http://aria2.sourceforge.net/ 抓取最新版的軟體,目前最新的版本是1.15.2,可以到 http://sourceforge.net/projects/aria2/files/stable/aria2-1.15.2/ 這裡下載。

可先用wget下載,等等設定好之後就可以體會到aria2的方便和快速了。 什麼,你該不會是開Server的文字介面在那邊一個字一個字慢慢敲? 孩子,別傻了,Windows底下有Putty、Pietty之類的ssh軟體可以連到Server,Linux就直接開啟Terminal執行ssh命令連接,直接複製貼上網址就好了咩,麥擱亂阿。

下載後請隨便找個地方把它埋了吧。 阿!  打錯,是把它解壓縮才對,解壓縮之後會看到一堆阿里不答的檔案,等等會用到。





使用aria2的方式可參考官網

Download from WEB:
$ aria2c http://example.org/mylinux.iso
Download from 2 sources:
$ aria2c http://a/f.iso ftp://b/f.iso
Download using 2 connections per host:
$ aria2c -x2 http://a/f.iso
BitTorrent:
$ aria2c http://example.org/mylinux.torrent
BitTorrent Magnet URI:
$ aria2c 'magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C'
Metalink:
$ aria2c http://example.org/mylinux.metalink
Download URIs found in text file:
$ aria2c -i uris.txt

官網詳細命令解說


如果想要用網頁控制下載,或是通過GUI控制使用,那就得要讓aria2以背景運作的方式執行才可以,以小弟自己的主機為例。

linux@linux:/$ aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all --dir=/mnt/download --file-allocation=none -s 5 -j 10 -x 5 -c -D

--dir= 這個參數後面接的是下載的目錄夾,請用絕對路徑。
-D 這個參數是背景執行。

其它的參數請參考官網的解說,在此不累贅,但要注意一點的是,執行aria2的身分不要是root,否則下載的檔案權限會變成是root,別的帳戶要使用可就麻煩囉!



正確啟動aria2後,接下來就是Web GUI的設定,主機請先安裝LAMP。裝好之後系統預設的路徑是 /var/www ,權限記得要開放給一般使用者。


介紹幾個Web GUI

1.webui-aria2,官網推薦。
https://github.com/ziahamza/webui-aria2

2.yaaw,這個也是許多朋友的選擇,而且還有chrome的plugin可安裝。
https://github.com/binux/yaaw

3.Aria2Web
http://aria2web.sourceforge.net/

4.ziahamza,和第1是同一個作者,不需要安裝LAMP就可使用,但要記得開6800port。
http://ziahamza.github.com/webui-aria2/

2012年10月23日 星期二

MacBook Air 2012 安裝 Linux Ubuntu 作業系統

對於手上的東西總是想惡搞一番,例如把PC安裝OS X(俗稱黑蘋果),把MacBook Air安裝Windows、Linux之類的動作。

Apple的架構以前是PowerPC,由IBM生產,和一般x86 PC不相容,後來在2006年的時候推出Intel為平台的MacBook (之前的名稱為iBook),既然是x86 的Intel CPU,那安裝Windows的成功機率應該是非常高了,於是Mac皮Windows骨的NB就開始慢慢流行了(Mac產品的外表真的不錯)。

但是Mac的開機控制權和一般的PC不太一樣(雖然是Intel x86),一般PC的開機控制權限是BIOS > Boot Loader,也就是說BIOS的權限是優先


一、準備的道具如下

1.MacBook Air 一台 (廢話.......)

2.rEFIt 讓Mac有多重開機的選單(這個非常重要,沒有它就無法安裝和進入Linux了)
官網 http://refit.sourceforge.net/

3.Ubuntu 的iso光碟映像檔(選64位元的效能會比較好)
官網 http://www.ubuntu.com/

4.UNetbootin (把ISO安裝在USB隨身碟上,Windows、Linux、Mac都有支援)
官網 http://unetbootin.sourceforge.net/

5.隨身碟一隻,容量有超過ISO的大小就可以。

6.如果想把Ubuntu安裝在外接的Storage上面(Air的SSD更換不易,而PRO可以把光碟機換成硬碟),那就多準備一個USB硬碟或是隨身碟,容量最少要8GB,建議是選高速的會比較好,如果是SSD就更讚了。



二、建立Ubuntu安裝隨身碟

1.把隨身碟格式化成FAT32,磁碟區標籤填寫以方便開機的時候辨識。


2.開啟UNetbootin,選擇映像檔ISO,ISO當然是選則下載的Ubuntu ISO,類型選擇USB磁碟機,磁碟機的代號要注意別選錯了,點選「確定」後會開始複製,完成後選「退出」就好了。




3.把剛才做好的隨身碟拿到PC上測試是否可以進入Ubuntu的安裝畫面,如果可以就OK。



三、安裝Mac的多重開機引導

1.安裝rEFIt,打開rEFIt.dmg,點擊rEFIt.mpkg安裝。
 



2.把Ubuntu隨身碟插上USB之後重開機,如果畫面自動出現rEFIt的開機選單就代表成功。

2012年9月19日 星期三

Linux 大量更改檔名

Linux 大量更改檔名

在Windows 的系統底下,如果要更改檔名或是副檔名都算是蠻簡單的動作,只要開啟cmd.exe,輸入指令就會把全部的jpg都改成gif,簡單的一行指令就搞定。

c:\>ren *.jpg *.gif



但是在Linux下呢,"*" 這個符號在使用mv指令的時候並無法當成萬用字元來看待,假設我用一樣的語法更改附檔名,會得到什麼結果呢?


ls(小寫的LS)的指令查詢看有哪些檔案,得知在這個目錄下有a-01.jpg ~ a-10.jpg
-----------------------------------------------------------------------------------------------------------
linux@linux:/$ ls 
a-01.jpg  a-03.jpg  a-05.jpg  a-07.jpg  a-09.jpg
a-02.jpg  a-04.jpg  a-06.jpg  a-08.jpg  a-10.jpg
-----------------------------------------------------------------------------------------------------------


用一樣的語法執行mv
-----------------------------------------------------------------------------------------------------------
linux@linux:/$  mv *.jpg *.gif
mv: cannot stat `*.jpg': No such file or directory
-----------------------------------------------------------------------------------------------------------
mv表示:無法確認 *.jpg 是一個檔案或是目錄夾,我不能下一步了。(廢話.........)


為什麼會變成這樣呢? 剛才已經說過了,"*" 這個符號在使用mv指令的時候並無法當成萬用字元來看待,*會變成普通字元,在目錄下並沒有 *.jpg 這個檔案存在,所以mv指令宣告失敗!

假設檔案數量很少,可能在10以下,那用手動更改還說的過去,但如果今天是50個,甚至到100個、1000個呢?難道也要一一更改嗎? 還沒等你改完,老闆的眼神就會像海上的探照燈一樣直直的投射在你身上。


廢話不多說,既然mv指令不管用,生命總是會自動找到出路的(喂,這是哪招阿!)。
歐,不! 我的意思是說山不轉路轉,mv不管用就改用rename吧。

rename表示:躺著也被挖出來....................


先看一下說明和使用的語法
-----------------------------------------------------------------------------------------------------------
linux@linux:/$ man rename
-----------------------------------------------------------------------------------------------------------


rename的使用說明內容
-----------------------------------------------------------------------------------------------------------

RENAME(1)              Perl Programmers Reference Guide              RENAME(1)

NAME
       rename - renames multiple files

SYNOPSIS
       rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]

DESCRIPTION
       "rename" renames the filenames supplied according to the rule specified
       as the first argument.  The perlexpr argument is a Perl expression
       which is expected to modify the $_ string in Perl for at least some of
       the filenames specified.  If a given filename is not modified by the
       expression, it will not be renamed.  If no filenames are given on the
       command line, filenames will be read via standard input.

       For example, to rename all files matching "*.bak" to strip the
       extension, you might say

               rename 's/\.bak$//' *.bak


       To translate uppercase names to lower, you'd use


               rename 'y/A-Z/a-z/' *


OPTIONS
       -v, --verbose
               Verbose: print names of files successfully renamed.

       -n, --no-act
               No Action: show what files would have been renamed.

       -f, --force
               Force: overwrite existing files.
-----------------------------------------------------------------------------------------------------------

參數 -v:會把更改成功的檔名顯示在螢幕上
參數 -n
參數 -f:假設有一樣檔名的檔案存在,會強制複寫檔案(小心使用)。


標示紅色的地方是重點,按照範例來看的話,我們要更改副檔名用的指令是
rename 's/原字元/新字元/' *.副檔名把指令改成我們想要的jpg變成gif

-----------------------------------------------------------------------------------------------------------
linux@linux:/$ rename 's/\.jpg$/\.gif/' *.jpg
linux@linux:/$ ls
a-01.gif  a-03.gif  a-05.gif  a-07.gif  a-09.gif
a-02.gif  a-04.gif  a-06.gif  a-08.gif  a-10.gif
-----------------------------------------------------------------------------------------------------------
更改完畢!

或許有人會會覺得奇怪,為什麼在.(點)的前面會多一個\的符號呢?
這是因為.(點)是屬於特殊字元,而\這個是屬於跳脫字元的符號,用途是在\後面的第一個字元都會變成普通字元,例如!' " |$%&* -()[ ] {}?+這些符號是有特殊意義的,一般使用的時候只要前面加一個\符號就會當成一般字元來看待。

還有為什麼.jpg的後面要一個$的符號呢,是$因為代表字尾的意思,假設檔名之中有.jpg才不會一起更改,因為這個範例更改的是副檔名,當然是以最後的為主。


除了更改副檔名之外,也可以改主檔名喔,例如a-01 ~ a-10.gif,我想改成ZZZ01.gif
-----------------------------------------------------------------------------------------------------------
linux@linux:/$ rename 's/a\-/ZZZ/' *.gif
linux@linux:/$ ls
ZZZ01.gif  ZZZ03.gif  ZZZ05.gif  ZZZ07.gif  ZZZ09.gif
ZZZ02.gif  ZZZ04.gif  ZZZ06.gif  ZZZ08.gif  ZZZ10.gif
-----------------------------------------------------------------------------------------------------------


rename還有另一個用途,可以把檔案名稱改成全部大寫或是全部小寫,例如我要全部改成大寫,那麼下的指令就是
-----------------------------------------------------------------------------------------------------------
linux@linux:/$ rename 'y/a-z/A-Z/' *
linux@linux:/$ ls
ZZZ01.GIF  ZZZ03.GIF  ZZZ05.GIF  ZZZ07.GIF  ZZZ09.GIF
ZZZ02.GIF  ZZZ04.GIF  ZZZ06.GIF  ZZZ08.GIF  ZZZ10.GIF
-----------------------------------------------------------------------------------------------------------



全部改成小寫,那麼下的指令就是
-----------------------------------------------------------------------------------------------------------
linux@linux:/$ rename 'y/A-Z/a-z/' *
linux@linux:/$ ls
zzz01.gif  zzz03.gif  zzz05.gif  zzz07.gif  zzz09.gif
zzz02.gif  zzz04.gif  zzz06.gif  zzz08.gif  zzz10.gif
-----------------------------------------------------------------------------------------------------------

2012年9月18日 星期二

Linux 檔案整理的 shell script

緣起:同一個目錄夾有許多avi +jpg(巷子內的應該知道我在說啥),每次都要手動更改檔名和移動到相對應的目錄夾,一個目錄可能就有數十個檔案,長期下來覺的自己很白痴,幹嘛不寫個shell script來執行就好。

功能:
1.建立和主檔名一樣的目錄夾,例如檔名是ABS-001.avi,那麼建立的目錄夾就會是ABS-001,大寫都會一樣喔!

2.會把相同檔名的所有檔案都移動到相對名稱的目錄夾,例如ABS-001.avi和ABS-001.jpg都會移動到ABS-001的目錄夾裡面。



步驟:

1.建立一個可執行的shell script
Linux@Linux:/$ touch createfolder.sh ; chmod +x createfolder.sh
Linux@Linux:/$ vi createfolder.sh

把紅字全部都複製貼上後儲存離開
-------------------------------------------------------------------------
#!/bin/bash
read -p "Please input subname : " subname
for i in *.$subname; do
if [ "$i" != "*.[$subname]" ]; then
filename="`echo $i | sed -e s/\.${subname}$//`"
mkdir ${filename}
mv ${filename}.* ${filename}
fi
done
-------------------------------------------------------------------------

2.接下來把剛剛新增好的createfolder.sh複製到/bin裡面,這是因為/bin是在$PATH的預設值內,放在這裡可以隨時執行。
Linux@Linux:/$ sudo cp createfolder.sh /bin


PS:目前這支shell script的缺點
1.需要自行輸入副檔名的名字,譬如avi或是jpg(大小寫有差別)。
2.主檔名要是大小寫不同,那建立的目錄夾也會不同,例如檔名是ABCDEF.avi和abcdef.jpg,那麼系統就會建立ABCDEF和abcdef兩個資料夾。

2012年8月16日 星期四

Video Streaming Server 架設影音串流伺服器

  拜現在科技之賜,手機的效能和支援性已經和電腦越來越接近了,不管是Android、iOS、Windows Phone,這三大平台上面均有不少軟體可供使用。

  手機最重要的當然就是通話,剩下的都是屬於附屬功能,但多元化的今天,想在手機上面看照片、聽音樂、看影片,這些都不是問題,反正可以上網的話,有太多類似的網站提供這些服務了。


但有沒有想過,在外面的時候如果想要看自己家裡電腦內部的影片、音樂、照片的時候呢?

可能會有很多人想說:那我就帶大一點的隨身硬碟就好了阿,愛放多少就有多少。

  沒有錯! 這個的確是方法之一,但比較適合筆電(Notebook),目前的智慧型手機 (Smart Phone) 或是平版 (Pad) 可能都不支援外接USB硬碟(USB隨身碟有的可以),是因為供電量目前無法突破,或許以後科技發展有突破的時候,以上將不成問題,但就現在而言,手機的電池續航力都還有待加強,要連續使用一整天都還很困難。


  就目前而言,針對手機和平版而定,兩樣產品就是要輕、薄、攜帶方便,如果撇開耗電量和外接的問題,要再多攜帶一個外接式硬碟那多不方便,要是忘記帶出門豈不麻煩。

  更何況,你希望你在使用手機或平版的時候,後面還拖著一條長長的USB線,連接著頗有重量的硬碟嗎? 拿給旁邊的朋友玩的時候還要記得提醒他:要小心硬碟喔,這個不耐摔耶!


這......不是很煞風景嗎? 不用這麼累吧,只想單純的享受科技帶來的方便有這麼麻煩嗎?


當然有阿,這就是今天的重點,架設一個屬於自己的影音串流伺服器吧!


  聽到架設伺服器,很多人都會先有個刻版印象:我又不是專業的工程師,也沒有任何的架站經驗,聽起來感覺就是非常的困難,還是算了吧!

  這也沒錯,以同理心來看的話,這的確是很多對電腦不熟悉的朋友們會遇到的問題,對於自己不熟的領域總是會有一點點膽怯的成分存在,但人總是要有突破,不踏出這關,永遠也無法享受科技所帶來的甜美的果實,您說是嗎?


  好了,廢話也不多說,趕快來看怎麼架設自己的影音伺服器吧!


條件

1.電腦一台 (這不是廢話嗎?)
2.作業系統 Windwos、Linux、Mac OS X,主要的3大作業系統上面都有相對應的軟體可供使用,但會建議用Windows比較簡單,而且支援度也比較高,以下範例都是用Windows來示範。
3.Server軟體,這個可就得仔細挑選,因為每個軟體對應的Client Device(客戶端裝置)都不太一樣,有的只支援Android,有的只有在iOS上才有支援,要每種都有支援的非常少,但也不是沒有,只是相對的操作起來會較為複雜。


Video Streaming 軟體目前常見的有

1.Air Video

2.Air playit

3.qiss Qloud Server

4.Subsonic

5.StreamToMe

6.Air Media Center








AirVideo Subtitles 字幕亂碼 解決方法

開啟Air Video Server,進入Subtitles。

修改以下幾點

1.Subtitle Font = 微軟正黑體 、新細明體 (反正就是中文字體啦!)
2.Default Encoding = Chinese Traditional (Windows)




2012年7月10日 星期二

DIY NAS (Network Attached Storage)


以一般市售的NAS成品來看,通常在台幣萬元以下的產品效能都只能算一般(這點會隨著硬體進步而提升),要同時應付多一些的運算可能就會捉襟見肘。

如果要達到效能有一定水準的NAS的話,那價格肯定是水漲船高,隨便破台幣二萬都是稀鬆平常的事情,但真的要論效能還是比不過PC等級的配備。

那麼市場上的NAS為何還是賣的這麼好呢? 當然是有它的好處,才會有這麼多的用戶購買。

一.、省電,NAS目前而言幾乎都是採用ARM架構的CPU居多,整台主機不含硬碟可能耗電不到20W而已,相對的PC光開機耗電量可能就要50W ~ 60W,以節能省碳和省錢為前提之下,這的確是不得不注意的重點之一。

二、 軟體優勢,一個好的NAS絕對不光是硬體強就會賣的好,相對的軟體也要能夠端的上檯面才夠看。 NAS原廠所提供的系統、應用軟體、周邊硬體整合、硬體相容性提升、智慧型裝置的結合,這些都是靠開發人員的努力才能享有的成果。而DIY的NAS軟體全都得靠自己,必須要有相當的程度才能打造接近市售的NAS一般的軟體環境。

三、體積,這點應該就很明顯了,一般的NAS結構幾乎都是主機板+外殼+風扇而已,小小的主機板上面就已經包含CPU+RAM+Storage Controller,電源的部分都是外接變壓器,使得內部的空間大為提高。 PC要找到類似的產品雖也不難,但售價和效能不太成正比。

四、維護,NAS有問題找原廠就對了,不管是軟體、硬體、相容性,甚至是你覺得外觀不好看或是散熱有待加強之類的鳥問題都可以和原廠反應,好的廠商會認真的分析消費者的需求進而改善。 反觀,DIY除了硬體故障可以找原廠維修之外,剩下的都是要自己搞定,軟體有問題? 效能低落? 這些阿里不答的麻煩事情請找道行高深的朋友或是Google。


看起來似乎DIY NAS好像弊多於利? 倒也不,DIY的精神就是一切自己來,如果想要獲得比一般NAS更好的效能,更多的擴充性,軟體隨你裝,不必被侷限於原廠的規定,甚至是...............老闆交代以省錢為最高原則的情況下,DIY NAS似乎是唯一選擇的崎嶇之路了。

如果是閒閒沒事做只想單純研究的話,那這條路非常適合你,不管是硬體的挑選或是軟體的安裝、測試都是會花費大量的時間。



由於硬體變化實在是太快,只能略說大概的挑選方式,但這是屬於個人喜好問題,沒有一定要按照規範走,DIY考量的點不外乎是省電、體積、擴充性、效能,能夠找到接近的配備是最好不過,不能的話也可以找舊的主機來玩玩,不過省電方面可能就談不上邊了。


軟體的部分先從OS開始,就以看過或用過的列上來分享,而這部分會不定時更新,畢竟軟體更新是隨時都有可能發生的事情。

1.FreeNAS
能見度超高,以FreeBSD為基礎再修改的OS,佔用的CPU資源非常低,安裝的空間也非常少。

2.NAS4Free
原本的FreeNAS開發者說沒時間維護,iXsystems聽到了便自告奮勇的接手,可能後來又有時間了吧,但原本的名字無法沿用,便用NAS4Free當成名字囉,特性同上。

3.Nexenta
Nexenta Community + Napp IT

4.Windows Home Server
微軟的軟體實力不用多說,軟硬體的相容性很少有廠商可與它為之匹敵。

2012年5月27日 星期日

VM (Virtual Machine) 虛擬化電腦

VM (Virtual machine)
什麼是虛擬化? 用白話一點的方式就是在電腦裡面安裝一種以上的作業系統,而且可以同使用,不用再重開機切換,如果機器規格好一點的話,還可以同時開4-5個以上的作業系統(OS)。


把OS虛擬化有很多好處,最常見的功能就是測試了,假設今天有某些軟體是目前的OS無法執行的,或是軟體環境需要比較舊的話(例如Win 98甚至是dos),VM軟體就派上用場了。


VM除了拿來測試之外,還有非常多的用途,像企業環境裡面,早期的做法都是使用多台伺服器(Server),每台Server負責的作用都是不同,例如Web Server、File Server、Mail Server之類的,看起來是各司其職,但有沒有想過,每台伺服器並不是全天候24小時100%運轉,有可能在某些時段附載比較高而已,剩下的都是閒閒在那邊沒事做,浪費了許多系統資源,而且Server多的話,維護又是個麻煩了。


那如何把多台Server整合在同一台以節省寶貴的企業資源(空間、電費、散熱、維護)呢?
或許會有人覺得說,那把需要的軟體都針對一個平台開發就好了呀。 的確! 這是非常理想化的情形,但是軟體發展至今,已經無法一統江湖了,每個平台上都有重量級軟體存在,當軟體開發公司不願意在其他平台上著手的時候,也只能乖乖的照步驟走。


當然,如果你的智慧有如東尼·史塔克(Tony Stark)的話,以上這些問題對你而言絕對都不成問題。 


那把多台Server整合在一台有什麼好處? 
1.節省經費:類似性質的服務都可由同一台機器提供。
2.資源共享:機器空閒的時間將會變少,有多台的Server同時執行,享有機器強大的運算功能。
3.維護較易:至少有問題的時候可以針對這台Server做檢測維護,不用東奔西跑的累死自己。
4.啪啦啪啦啪啦啪啦啪啦啪啦啪啦啪啦啪啦.............................
反正還有很多好處啦,只是一時忘記寫不出來罷了!






常見的VM軟體

1.VMware (Windows、Linux)
http://www.vmware.com/


2.VirtualBox (Windows、Linux、Mac OS X)
https://www.virtualbox.org/


3.Parallels (Windows、Linux、Mac OS X)
http://www.parallels.com/


4.Proxmox
http://www.proxmox.com/


5.Virtual PC、Virtual Server、Hyper-V
http://www.microsoft.com


6.Xen
http://xen.org/




同類型的VM Software還有很多,想到繼續補充。




有關VM的概念要先稍微解釋一下,在機器上安裝的主要作業系統,例如Windows、Linux、Mac OS X、FreeBSD之類OS稱之為Host OS,在這些作業系統執行VM,使之可以跑更多不同的OS,這些在VM底下跑的OS稱之為Guest OS


例如
主系統:Window 7 (Host OS)
VM軟體:VMware Workstation
虛擬OS:Windows XP (Guest OS)




阿捏乾屋撩蓋?