:::

XAMPP啟用PostgreSQL功能

布丁布丁吃布丁

XAMPP啟用PostgreSQL功能

20121220-205618

XAMPP是一套以Apache、PHP、MySQL組成的開發用套裝伺服器,但它並沒有內建PostgreSQL,在設定PostgreSQL的連線上也不是這麼直覺。

最近在架設開發環境的期間遇到了XAMPP無法順利啟用PostgreSQL連線的問題。經過一番研究,總算找出了解法。這篇就是介紹如何在XAMPP中啟用PostgreSQL的方法。


作業系統說明

image

我目前使用的作業系統是Windows 7 企業版,64位元。這篇的問題主要都是發生在Windows之中,Linux使用者應該不太容易遇到這個問題喔。

XAMPP與PostgreSQL的安裝

image

XAMPP使用的是XAMPP Portable 1.8.1

必須特別註明的是,儘管這是Portable可攜版本,但是目錄必須為「xampp」並放置在磁碟分割的根目錄下,例如「C:\xampp」或「D:\xampp」。我因為想嘗試不同版本而將資料夾命名為「xampp 1.8.1」之類的名詞,xampp就無法順利啟動。

PostgreSQL使用的是9.2.2版。網路上討論這個問題時通常看到的是8.x版本,所以我想版本應該不是問題。

XAMPP的部份

20121220-223634

剛安裝好XAMPP與PostgreSQL的時候,XAMPP裡面的PHP是無法順利連上PostgreSQL的,因為它預設並沒有打開pg_sql模組。

設定php.ini

php.ini是PHP的主要設定檔,它位於以下路徑:

[xampp]\php\php.ini

請以任意的文字編輯器開啟,並找到以下兩個PostgreSQL模組的選項:(兩者位於不同行,但很相近)

;extension=php_pdo_pgsql.dll
;extension=php_pgsql.dll

開啟模組的方法就是移除前面的註解符號「;」,修改之後如下:

extension=php_pdo_pgsql.dll
extension=php_pgsql.dll

20121220-205754

修改完成,請重新啟動Apache。

用XAMPP Control Panel來啟動XAMPP

image

最近幾版的XAMPP都有一個方便的控制版:XAMPP Control Panel,位於以下路徑:

[xampp]\xampp-control.exe

開啟之後就可以看到上圖的畫面。

如果要開啟Apache,點下Apache後面的「Start」按鈕就可以了。

缺少libpq.dll的問題

照理來說,照上面的步驟啟用PostgreSQL模組之後就能正常運作。但是實際上卻遇到了錯誤訊息:

20121220-205618

無法啟動程式,因為您的電腦遺失 LIBPQ.dll。請嘗試重新安裝修正這個問題。

不僅如此,還連帶地出現以下的錯誤警告:

20121220-205650

這個錯誤就是因為XAMPP沒有載入PostgreSQL重要的函式庫libpq.dll。

找到libpq.dll的位置

我安裝的時候,赫然發現XAMPP其實已經內建了libpq.dll。檔案位置如下:

[xampp]\php\libpq.dll

但是在Windows中就是無法自動載入,必須要手動設定才行。

在httpd-xampp.conf中載入libpq.dll

要載入libpq.dll則必須在Apache設定檔中加入LoadFile選項。

20121220-222657

網路上大部分都建議修改Apache的主要設定檔httpd.conf。但是httpd.conf很長、也有一定結構,我找了幾個地方塞進LoadFile,開啟Apache時都會發生錯誤,如上圖。

後來我發現XAMPP也在他們自己的設定檔httpd-xampp.conf使用了LoadFile,我們也可以在此設定載入libpq.dll。httpd-xampp.conf的檔案位置如下:

[xampp]\apache\conf\extra\httpd-xampp.conf

找到這一行設定:

LoadFile "/xampp/php/php5ts.dll"

在前面插入載入libpq.dlll的設定:

LoadFile "/xampp/php/libpq.dll"
LoadFile "/xampp/php/php5ts.dll"

20121220-223702

設定完的httpd-xampp.conf就如上圖。

image

這樣再開啟就不會出錯了。

檢測PHP是否啟用了PostgreSQL的功能

phpinfo()

image

要知道PHP到底有沒有啟用PostgreSQL,最簡單的方式就是來看phpinfo()的訊息。XAMPP內建一個網頁專門顯示phpinfo()資訊,開啟Apache之後請開啟以下網址:

搜尋看看「pg_sql」,應該可以看到模組的相關資訊,那就表示順利啟用。

用函式檢測是否有啟用PostgreSQL

另一個方法就是檢查PostgreSQL的函式能不能使用,能夠使用就表示PostgreSQL模組有順利啟用。PHP檢查函式的語法如下:

$postgresql_is_enable = function_exists("pg_connect");

我們就能透過$postggresql_is_enable來得知PostgreSQL是否有順利啟用。


結語:PostgreSQL真是小眾

postgresql_logo-1979px

作為知名的開發環境,XAMPP在支援PostgreSQL上卻是意外地薄弱。這個問題在網路上查詢的結果,有不少人都是叫你關掉pg_sql就好,實在是令人為PostgreSQL的小眾難過。

比起流行的MySQL,我仍然覺得PostgreSQL才是大型系統應該要使用的資料庫。不光是可以用於商業行為的BSD授權(MySQL商業使用要付費的啊,希望大家要有授權的觀念),transaction功能與豐富的資料型態也都是讓人愛不釋手。

在此還是呼籲一下PostgreSQL的重要性,希望大家多多重視這個重量級的資料庫吧!

(more...)

Sublime Text 2中文化的安裝方式

布丁布丁吃布丁

Sublime Text 2中文化的安裝方式

image

Sublime Text 2是一個強大的文字編輯器,原始介面是英文的,官方沒有提供中文介面。網路上提供的中文化檔案很多,不過安裝方法都不夠詳細,沒有那麼簡單。我稍微摸索了一下,整理成這篇教學。



Sublime Text 2中文化語系檔下載

網路上許多中文化都是簡體中文,我們當然要用的是正體中文囉。令人高興的是ptt的R+在版上提供了他的Sublime Text 2中文化語系檔

下載解壓縮之後,你會看到9個以sublime-menu為副檔名的檔案,這就是Sublime Text 2的介面語系檔。這些語系檔也都是純文字,你也可以自行編輯成你習慣的用語。

安裝語系檔

由於作業系統跟安裝方式不同,語系檔要放置的位置也不盡相同,所以網路上大家的教學也都不太一樣。照我的觀察,現在Sublime Text 2似乎是統一將語系檔放在Packages資料夾中的Default資料夾裡。一般的安裝包與Portable的綠色可攜包的Packages也都在系統的不同位置,不過其實他們都可以透過Preferences > Browse Packages…來開啟Packages資料夾。

image

Browse Packages選項的位置如上圖所示。請原諒我已經中文化了,懶得改回來XD

image

接著它會開啟系統的檔案總管,你可以找到裡面的「Default」資料夾。

image

裡面也有一些副檔名為sublime-menu的檔案。此時請將剛剛下載的中文化語系檔覆蓋掉這些檔案,然後重新啟動Sublime Text 2,就可以看到中文化後介面了。

image

之後如果要調整語系檔的話,我想應該直接編輯這邊的檔案就行囉。

(more...)

PostgreSQL的備份與復原

布丁布丁吃布丁

PostgreSQL的備份與復原

120_120823175057_1

最近又回來做標註系統了,這次一樣要先建構環境。當初我寫KALS標註系統的時候使用的資料庫是PostgreSQL,它沒辦法透過檔案系統來備份跟復原,必須仰賴它的工具。這篇稍微記錄怎麼備份與還原PostgreSQL資料庫。其實不是很複雜,只是備忘而已。


備份:pg_dump

pg_dump是PostgreSQL的標準備份工具,其主要用法為:

pg_dump [資料庫名稱] -U [帳號] -f [備份檔案名稱.backup.sql]

備份檔案名稱後面的附檔名.backup.sql只是我自己的習慣而已。

舉例來說,我現在要輸出「kals」資料庫,帳號為「kals」,輸出到檔名「kals-db-20121218.backup.sql」,那麼指令如下:

pg_dump kals -U kals -f kals-db-20121218.backup.sql

你會獲得一個「kals-db-20121218.backup.sql」檔案,這個就是你整個資料庫的備份檔了。

復原(備份回存):psql

因為上面我們匯出的是sql檔案,所以這邊用psql來復原備份的資料。

psql是PostgreSQL主要的管理工具,可以執行各種工作。在這裡我們要復原SQL檔案,其用法是:

psql -f [備份檔案名稱.backup.sql] [資料庫] [帳號]

現在我們要將備份檔「kals-db-20121218.backup.sql」復原到「kals」,使用「kals」帳號進行,那麼指令如下:

psql -f kals-db-20121218.backup.sql kals kals

Windows注意路徑問題

在Windows操作的時候,要特別注意到路徑的問題。直接在命令提示字元執行「pg_dump」或「psql」都會發生錯誤,因為Windows不知道這兩個工具的位置。

一般來說,PostgreSQL工具的位置會擺在以下位置:

C:\Program Files\PostgreSQL\[PostgreSQL版本]\bin\

以9.2版的pg_dump工具來說,它的路徑就是:

C:\Program Files\PostgreSQL\9.2\bin\pg_dump.exe

指定備份檔案的時候,也要注意你的路徑是否正確喔。

備份跟還原時放棄使用pgAdmin跟phpPgAdmin吧

image

一開始我是想要用phpPgAdmin來備份,可是卻發生以下錯誤訊息:

Export error: Failed to execute pg_dump (given path in your conf/config.inc.php : /usr/bin/pg_dump). Please, fix this path in your configuration and relog.

奇怪的是,設定檔本身並沒有錯:/usr/bin/pg_dump的確是在那個位置沒錯。這個問題也有人提出來,似乎尚未解決。

然後我想用pgAdmin來連線,但PostgreSQL要從外面連進去必須做許多設定,進行的不是很順利。後來直接放棄pgAdmin,改用指令比較快。


結語:未來考慮使用SQLite

雖然大型系統需要PostgreSQL這種重量級資料庫來支援,但是這大神實在是我們小小研究者難以搬動的對象。

sqlite370_banner

比起控管嚴格以致於難以駕馭的PostgreSQL,未來我考慮使用SQLite作為主要開發的資料庫,可能會比較適合不斷調整、修改、搬移的小型研究環境吧。

(more...)

yum遇到「thread.error: can’t start new thread」錯誤的處理方法

布丁布丁吃布丁

yum遇到「thread.error: can’t start new thread」錯誤的處理方法

20121218-150819

這篇是參考Aditech Blog的Fix 'thread.error: can’t start new thread' error while yum update [Tips]作法,發現的確可行,在此做個記錄。

問題原因

這個錯誤似乎是因為yum運作的時候記憶體不足,因此fastest-mirror plugin (挑選最快站台的插件)發生錯誤。解決的方式就是關閉fastest-mirror plugin,雖然這會造成使用yum的時候會花比較多時間,但總比不能用還好。

這也是因為我是在OpenVZ虛擬機器上使用yum,所以容易遇到記憶體不足的緣故吧!

處理方式:修改fastestmirror插件的設定檔

Adithya Uday提供了兩種方式來關閉fastest-mirror plugin,一個是修改plugin的設定檔,另一個是在yum指令中加入參數「--disableplugin=fastestmirror」。

前者是一勞永逸的方法,要修改的檔案在「/etc/yum/pluginconf.d/fastestmirror.conf」:

[root@linux /]# vim /etc/yum/pluginconf.d/fastestmirror.conf

修改「enable」參數,原本是「1」

enable=1

改成「0」

enable=0

如果要再度啟用fastest-mirror plugin,再改成1就好了。

(more...)

XAMPP遇到需要驗證時該怎麼辦?

布丁布丁吃布丁

XAMPP遇到需要驗證時該怎麼辦?

20121214-133209 需要驗證 - mosic

XAMPP是一個開發用的伺服器環境,它包括PHP、MySQL、SQLite、ProFTPD等等網頁伺服器該有的伺服器都一應俱全,是我很常使用的套裝伺服器。

要進入XAMPP的管理畫面時,大多時候會跳出需要驗證的資訊,像是:「伺服器要求提供使用者名稱和密碼,伺服器訊息:xampp user」,然後要你輸入使用者名稱和密碼。

在Linux底下,XAMPP預設的帳號叫做「lampp」,密碼預設記得好像是空白。你可以用指令列來設定Linux中XAMPP的密碼,如果你的XAMPP(在Linux下叫做lampp)放在「/opt」底下,那麼指令如下:

[root@server ~]# /opt/lampp/lampp security

然後XAMPP會問你是否要修改密碼,選yes然後。接著會問你MySQL跟ProFTPD的密碼。

20121214-133250 pietty

這樣就能重新設定XAMPP的密碼了。

在Windows中的設定也是大同小異,請自行應變吧。

(more...)

mRemoteNG使用PieTTY與安裝XULrunner

mRemoteNG使用PieTTY與安裝XULrunner

mRemoteNG - mosic

作為一位網管,我時常需要遠端連線到各種伺服器。有的伺服器是Windows,那就用遠端桌面連線(Remote Desktop Protocol,RDP);有的是Linux,那就用SSH (Secure Sheel Protocol);有的則是用網頁形式操作,GUI的操作介面也很方便。

最近發現mRemoteNG可以整合上述三種連線方式,不僅可以幫我記錄各個不同伺服器的帳號密碼,也可以用資料夾將站台分門別類。

mRemoteNG有一些部分可供自訂。像是可以把SSH連線從原始的PuTTY換成國人客製化的PieTTY;網頁引擎也可以不使用IE而用Firefox的Gecko。以下我就介紹一下mRemoteNG,然後說明上述兩種自訂功能如何使用。


mRemoteNG特色

  • 支援多種連線方式:RDPVNCSSH (Version 1 & 2)Telnet、Rlogin、RAW、HTTP、HTTPS、ICA、Ext. APP
  • 伺服器資料除了記錄伺服器連線位置之外,還能夠記錄密碼、設定顯示方式等等細節。
  • 用資料夾將伺服器分門別類,方便整理。
  • 頁籤顯示各連線資料,也可以將頁籤拉出來成為獨立視窗。讓你一口氣連很多伺服器時不容易混亂。

PieTTY:替換PuTTY的SSH連線工具

PieTTY是改自於PuTTY,並做了亞洲多國語系字元的調整。以下是PieTTY網頁的介紹:

PuTTY 是個小巧方便的 Telnet/SSH 安全遠端連線程式, 但用於非英語系文字時有非常多的問題, 而且它對於初學者來說過於複雜的使用界面也為人詬病已久。 PieTTY 則是源自於 PuTTY ,修正與完整支援亞洲等多國語系字元、 並在使用界面上大幅改進、易學易用的版本。

下載PieTTY
擺放PieTTY

下載PieTTY的之後,請放到以下資料夾:

  • <mRemoteNG-Portable下載位置>\

放置之後PieTTY會在以下路徑:

  • <mRemoteNG-Portable下載位置>\pietty0400b14.exe

20121207-170157 下載pietty - draw

舉例來說,我的mRemoteNG擺在D:\ Program Files (x86)裡面,實際路徑就會變成:

  • D:\Program Files (x86)\mRemoteNG-Portable\pietty0400b14.exe

Gecko:替換Internet Explorer的Firefox使用排版引擎

mRemoteNG預設使用Internet Explorer來開啟網頁,可是我個人比較偏好使用Firefox的網頁排版引擎Gecko(當然,如果有Google Chrome的WebKit就更好了)。

下載XULrunner

要讓mRemoteNG使用Gecko開啟網頁,你必須下載XULrunner

擺放XULrunner

下載XULrunner的之後,請放到以下資料夾:

  • <mRemoteNG-Portable下載位置>\xulrunner

放置之後PieTTY會在以下路徑:

  • <mRemoteNG-Portable下載位置>\xulrunner\xulrunner

舉例來說,我的mRemoteNG擺在D:\ Program Files (x86)裡面,實際路徑就會變成:

  • D:\Program Files (x86)\mRemoteNG-Portable\xulrunner\xulrunner

    設定mRemoteNG

    20121207-170632 options - draw

    將檔案就定位之後,接下來我們回到mRemoeNG設定。請到Tools裡面的Options,打開左邊導覽的Advanced,你會看到上圖的畫面。

    接著勾選「Use custom Putty path:」,輸入PieTTY的位置:「<mRemoteNG-Portable下載位置>\pietty0400b14.exe」(例如:D:\Program Files (x86)\mRemoteNG-Portable\pietty0400b14.exe)

    然後在「XULrunner path:」輸入XULrunner的位置:「<mRemoteNG-Portable下載位置>\xulrunner\xulrunner」(例如:D:\Program Files (x86)\mRemoteNG-Portable\xulrunner\xulrunner)

    檢查設定是否成功

    image

    首先我們先來檢查PieTTY是否設定妥當。當你連線到SSH網站時,如果發現上面多一排「連線(C) 編輯(E) 檢視(V) 視窗(W) 選項(O) 說明(H)」,那就是已經是在PieTTY底下連線囉。

    image

    然後我們來看看XULrunner是否設置成功。回到mRemoteNG一開始的Components Check,按下右下角的「Refresh」,你就會看到Gecko (Firefox) Rendering Engine (HTTP/S) Check變成綠色的,表示設定妥當。

    使用Gecko開啟網頁

    20121207-171849 Gecko - draw

    就算安裝好Gecko,mRemoteNG預設依然是用Internet Explorer來連線。你必須在建立HTTP或HTTPS站台的時候,在左下角的Rendering Engine改成「Gecko (Firefox)」才行,請參見上圖。


    結語:mRemoteNG不足之處

    支援的連線方式不夠全面

    雖然mRemoteNG已經支援許多種連線方式,但是對我們來說仍有幾個不足之處,像是不支援FTP、SFTP檔案傳輸(現在我主要依賴FileZilla Portable在使用FTP);不支援流行的遠端連線TeamViewer。另外一個類似mRemoteNG的工具軟體 Remote Desktop Manager就有支援上述的功能,可惜是收費軟體就是。

    網頁沒有密碼記憶功能

    mRemoteNG雖然提供了HTTP/HTTPS網頁開啟的連線方式,可是沒有記憶密碼的功能,所以每次都要重新輸入。

    缺乏中文化

    另一方面就是mRemoteNG並沒有中文化語系,而且他的語系檔編譯成了dll動態連結檔,要自行中文化並沒有這麼簡單。這都是比較可惜的地方。

    儘管mRemoteNG不盡完美,但對於一個開放原始碼的工具來說,已經算是幫得上許多忙了,在此推薦給大家!

    (more...)

    SSD固態硬碟使用感想

    布丁布丁吃布丁

    SSD固態硬碟使用感想

    DSC_0062

    SSD固態硬碟,這可能是近年來個人電腦最為革命性的元件。跟傳統內建磁盤的硬碟不同,固態硬碟SSD(Solid State Disk、Solid State Drive)的構成更類似記憶卡之類的記憶體技術。SSD改善傳統機械磁盤硬碟速度上的限制,以電子傳輸大幅提高存取的效率,而且沒有任何噪音。

    現在SSD發展蓬勃,不僅速度上已經完全超越傳統硬碟,而儲存容量與價格更是低到一般人所能接受的程度。就在各家3C新聞雜誌都在大力鼓吹換上SSD改善老電腦的風氣下,我也趁著退伍在家的期間把家裡電腦裝上了SSD。

    這一篇來記錄這段期間裝上SSD的一些使用感想,作為大家換裝SSD的參考。


    我對SSD的選擇

    一開始選擇SSD的時候,我就將預算限制在2000元以內。這個選擇有幾個考量:

    1. 不需要大硬碟我會將系統與個人資料分離,所以60GB的大小已經足夠。
    2. 不需要高速:高速SSD多標榜支援SATA3等級(6Gb/s)的傳輸速度,但對舊電腦來說,通常都只有支援到SATA2(3Gb/s)或甚至是SATA1(1.5Gb/s),買SATA3來裝在舊電腦上也只是浪費。(儘管如此,還是比傳統硬碟PATA最高用的133MB/s高得多)

    在這個條件下,走訪NOVA店家詢問之後,大致上有兩顆硬碟可以選擇:

    選擇出乎意外地比我想像中的少。其他大部分的SSD都是在兩千以上,或是容量只有32GB,不能達到我的最低需求。

    最後我選擇的是Kingston V+200,理由是主要是價格低,其他的條件都能滿足我的基本需求,我也不奢求太多了。

    2.5吋轉3.5吋的硬碟支架:40元

    現在的SSD多做成2.5吋硬碟的尺寸,無法直接裝在桌上型電腦的3.5吋機架中,它需要額外的一個2.5吋轉成3.5吋的硬碟支架。

    11091030785139_275

    (圖片來源:klkl_725的露天賣場

    這又是另一個意外:轉接架的選擇非常多,而價位從40元到近300元都有。店家販售SSD的時候也會一併搭售轉接架,但是價位居然要90元!還不如到隔壁電腦零件店去購買,功能最基本的轉接架也只要40元而已,別買貴了。

    作為系統碟,60GB一不注意就捉襟見肘

    我的第一台實驗品是家裡的電腦,2010年初購買,Intel Core i3、12GB DDR3記憶體,雖然說不上是最新等級,但也還算好用了。在換上SSD之前,操作的時候常常會感到硬碟讀寫上的延遲,這也是我想靠SSD改善的主因。

    經過簡單的重灌、安裝成Windows 7之後,現在這台電腦用起來是相當順暢的。順暢到我甚至連Office 2010都灌在SSD上,跑起來非常地流暢。但是使用一段時間之後,幾個問題就浮現出來了:

    休眠佔用大量硬碟空間

    在大記憶體的電腦中使用休眠功能,會在硬碟裡面寫入與記憶體同樣大小的暫存檔。我的電腦安插了12GB的記憶體,所以SSD馬上就被佔用了12GB的大小。

    除非不用休眠,不然這個限制無解。

    安裝的軟體佔用硬碟空間

    雖然我會將軟體安裝指定到D磁碟中,以避免佔用SSD的C磁碟,但仍是有些軟體無法指定安裝位置,必須強制佔用C磁碟。

    另一個就是iPhone在iTune上的備份預設就是存在C磁碟中,必須要靠Junction連結才能騙過iTune。許多人都深受系統碟被iPhone備份塞爆的困擾,我也是受害者之一。

    硬碟空間不足的時候,速度就會變慢

    以上幾個問題下來,60GB的SSD逐漸面臨空間不足的難處。到了這時候,系統就會在一些存取的時候變得比較慢,讓人有種頓一下的感覺。

    然而這比起傳統硬碟來說還是非常地快,只是用習慣了流暢的系統,你就會覺得這個頓一下真是特別的礙眼。

    小結:SSD還是很好用

    就這邊為止,SSD還是非常地好用。不僅開關機速度快,許多電腦操作也幾乎感覺不到硬碟讀寫的延遲。特別是使用Google Chrome的時候,再也不會因為我開啟大量二十幾個網頁的時候而遲緩了。

    SSD不見得能夠改善舊電腦的效能

    因為Core i3電腦裝上SSD之後改善的幅度相當大,這就讓我食髓知味地為另一台老電腦裝了同樣一顆的SSD。

    DSC_0058

    這台老電腦大概是2006年購買的,Pentium 4 2.6G、2GB DDR400,這等級跟第一台裝的Core i3可說是天差地遠。它跑起來本來就不能期待說有多快,但是換上SSD之後,是否會比較好用呢?

    一開Chrome,CPU就紅字

    一開始我安裝Windows 7時跑起來還算是順暢,不過當我一開啟Google Chrome的時候,問題就來了。Chrome不僅僅只是存取硬碟,它還要連網路、大量計算等工作,讓CPU三不五時就跑到100%,電腦整個就變得很慢。

    我懷疑這是不是Windows 7的問題,畢竟老電腦安裝Windows 7總是令人有點不安。後來我又把它灌為原本的Windows XP,但是使用Google Chrome時依然碰到了同樣的問題。每次一開大量網頁,電腦就很頓。雖然不能說是無法工作的程度,但是每個動作都要等待的耐性還是要有的。

    問題不在於SSD,在於整個硬體

    這個節骨眼已經很明顯了,SSD就算改善了硬碟存取的問題,仍然無法提昇CPU運算跟記憶體速度上的瓶頸。當然,就算裝了SSD,遊戲也不見得會比較流暢。

    這次賭在SSD能改善舊電腦效能這點明顯是壓錯寶了,不過既來之則安之,就這樣用下去吧。

    調教SSD

    將SSD作為一般硬碟一樣地安裝,其實是無法發揮SSD原有的功能。這是因為作業系統預設還是給傳統硬碟使用,而預設不支援SSD的一些特性。

    T客邦有一連串的SSD新手使用新知,在安裝SSD的時候最重要的就是兩個工作:開啟AHCI與4K對齊。

    開啟AHCI

    詳細原文請看SSD 進階調校須知:開啟AHCI,改善讀取效率,以下我摘述重點:

    SATA2以上的硬碟可以藉由開啟電腦的AHCI(Advanced Host Controller Interface,進階主機控制器介面)來大幅提昇硬碟在讀取細碎檔案時的效能。這個動作最好是在安裝作業系統前就先開啟喔!

    4K對齊

    詳細原文請看SSD 新手使用須知:4K 對齊調教實戰,提昇 SSD 效能,以下我摘述重點:

    傳統硬碟儲存單位是512Byte,但是SSD則是4KB。當作業系統用傳統硬碟的儲存方式來存放SSD時,往往會因為空間不對齊而一次寫入兩個block,導致系統效能下降。

    Windows 7安裝光碟內建了對齊工具,不然也可以靠Paragon Alignment Tool來對齊──只是這是付費工具就是了。

    使用SSD的隱憂:不適合存放重要資料

    在使用SSD的時候,你一定要知道SSD有著壽命的限制。雖然傳統硬碟也是有磁區壞掉而無法讀取的問題,但是大部分的技術看來還是有挽救的可能。而SSD有的先天上的記憶體讀寫次數限制,次數一到就無法再使用,當然也無法救回這些資料。

    所以SSD的保固一般都不長,上述兩顆硬碟也都只有保固3年。在使用的時候請務必注意到。

    不過就我來看,這個隱憂不算是隱憂。這主要是因為我會將個人資料存放在另一顆硬碟,作為系統碟的SSD就算壞掉了,我也能夠很簡單地再還原一顆一樣的環境。

    系統碟裡面不要保存重要的個人資料,希望大家能夠養成這個觀念。


    結語:SSD還是很值得作為系統磁碟

    現在我回到實驗室配置工作環境的時候,也為電腦裝上了SSD。換完之後現在操作起來很流暢、很好用,但只是這是對新電腦而言。至於對舊電腦(像是上述P4等級的電腦)來說,你可能就沒必要花錢幫他換上SSD。

    換上SSD之後,又會面臨到多年前使用80GB硬碟常見的空間限制問題。許多人都被現在動輒1TB以上的傳統硬碟養大了胃口,回到這種一不小心就捉襟見肘的小容量SSD時,你需要更用心地管理硬碟空間。

    而SSD本身也有些小撇步可以使用,希望你在換上SSD之前可以先讀過T客邦那幾篇SSD新手須知再行下手。

    至於SSD的購買選擇上,因為SSD發展如日中天、一日千里,過沒多久我猜同樣價位又能買到更大、更快的SSD。有需要、有時間安裝的話,那就買吧。

    對新電腦來說,系統碟安裝SSD更是不二選擇。至於你還要第二顆的傳統硬碟,不妨購買拍賣上的二手品即可,不一定要買新品。我一顆80GB賣你139元,夠便宜了吧XD

    (more...)

    開啟Windows XP的「休眠」按鈕

    布丁布丁吃布丁

    開啟Windows XP的「休眠」按鈕

    image

    預設要啟動Windows XP休眠功能的話,通常是按下電腦主機的電源鍵。但我喜歡更簡單的方法,那就是從「電腦關機」的選單中選擇「休眠」的功能。

    這個方法只要修改登錄檔就可以了。網路上講述修改登錄檔的介紹很多,但是卻很少直接放.reg檔案出來讓人更容易修改。這篇稍微講述一下Windows XP如何開啟休眠功能、在「電腦關機」選單中增加「休眠」選項、以及使用休眠需要注意的事情。


    什麼是「休眠」?

    image

    以前我也講過一篇「休眠與待命的差別」,微軟的說明是這樣定義休眠模式的:

    休眠模式會將您桌面所有開啟的文件和檔案的狀態儲存為影像檔,然後關機。 您開啟電源後,檔案和文件會以關機前的狀態在桌面開啟。

    簡單來說,休眠做的事情是:

    1. 將電腦狀態(也就是記憶體的資料)存入硬碟中。
    2. 電腦關機。
    3. 開機時,從硬碟讀取上次的電腦狀態,於是電腦又恢復到關機前做的所有工作。

    對我這種每次都開許多視窗、不想要因為關機而中斷原本的工作的人來說,休眠是很好用的功能。

    開啟Windows XP的休眠功能

    Windows XP預設並沒有開啟休眠功能,這必須靠你手動開啟才行。

    image

    請進入「控制台」 > 「電源選項」 > 「休眠」當中,勾選「啟用休眠」。

    image

    光是啟用休眠還不夠,你還必須想辦法進入休眠模式。預設可以進入休眠模式的方法是到「進階」選項中,在電源按鈕的「當我按下電腦的電源按鈕時」的選項中,選擇「休眠」。這樣你按下電腦的電源時,Windows XP才會進入「休眠模式」。

    DSC_0136

    進入休眠模式的話,會看到這個畫面。這是Windows XP正在把記憶體的資料寫入硬碟的訊息。

    DSC_0140

    下次開機的時候就會看到這個畫面,表示Windows XP正在從硬碟中讀取記憶體的資料,讓電腦恢復到上次關機前的狀態。

    在「電腦關機」選單中加入「休眠」按鈕

    image

    比起從電腦硬體上去按下關機按鈕,我更偏向直覺地在「開始」 > 「電腦關機」中選擇「休眠」。預設的「電腦關機」選單中只有「睡眠」、「關機」跟「重新啟動」三個選項,要加入「休眠」選項就必須修改Windows XP的登錄檔。

    開啟「休眠」選項的登錄檔內容如下。你可以自行建立一個show_hibernate.reg並輸入以下內容:

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\system]
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\system\shutdown] 
    "HibernateAsDefault"=dword:00000001 
    "ShowHibernateButton"=dword:00000001

    或是下載我建立好的show_hibernate.reg:

    image

    下載之後直接執行show_hibernate.reg,Windows會跟你確認是否要修改登錄檔,按下「是」即可。

    image

    這樣「電腦關機」選單中,最左邊就會出現「休眠」的選項了。

    使用休眠的注意事項:大記憶體的困擾

    剛剛介紹休眠的作法是將記憶體的資料寫入硬碟,而這對現在記憶體動輒4GB以上的電腦來說,進入休眠模式與下次開機時不僅相當花時間,而且硬碟也會佔用同等於記憶體大小的休眠暫存檔。

    image

    休眠暫存檔一般放置在C:\hiberfil.sys。因為是系統隱藏檔案,預設不會顯示。以我電腦2GB的記憶體來說,hiberfil.sys就有2GB之大。只要使用「休眠」功能就會存在這個檔案,而且不能修改它的位置;反之,關閉休眠功能之後,hiberfil.sys就會自動刪除。

    開關機的時間上,以現在我使用的SSD硬碟來說,2GB的寫入與讀取作業倒是相當短暫。雖然並沒辦法跟現在Ultrabook喜歡強調的數秒內從休眠恢復的速度相比,但也不會覺得太久。但是在家中用12GB記憶體的電腦時,還是明顯感覺得到電腦將12GB記憶體資料寫入硬碟時需要花上不少時間。

    這是使用休眠功能時需要注意的事項,希望大家不要被弄糊塗了。

    結語:節能減碳,請關機

    雖然對大記憶體的電腦來說休眠有些困擾,但我還是很鼓勵大家使用休眠功能,不使用電腦時就將它徹底關機吧。對於筆電來說休眠功能更是重要,畢竟只有真正進入休眠──也就是關機狀態──才能大幅度地降低耗電量。希望藉由開啟休眠按鈕這個小功能,能讓大家更方便地使用休眠模式。

    (more...)

    Windows 7改變「桌面」、「我的文件」等個人資料夾的位置

    布丁布丁吃布丁

    Windows 7改變「桌面」、「我的文件」等個人資料夾的位置

    image

    當Windows 7安裝完成時,預設大部分的個人資料夾,例如「桌面」與「我的文件」,都是擺在跟系統同一個磁碟分割裡面,像是C磁碟(俗稱「C槽」)。

    然而,有許多理由會讓你需要把這些個人資料存放在其他磁碟。像是重灌的時候,不希望因為擺在同一個磁碟而導致「桌面」跟「我的文件」消失;或是系統碟使用的是空間不大的SSD,拿來安裝Windows還可以,但是擺放「我的文件」中的音樂、影片就嫌不夠用了。

    我在之前寫過一篇「WindowsXP改變我的文件與桌面的儲存資料夾」,現在時代來到了Windows 7(雖然Windows 8也推出了,但我還沒打算使用),而我最近又常常在做重灌Windows 7的工作,所以這篇就是我是怎麼修改這些個人資料夾的記錄。


    磁碟配置規劃

    什麼樣的電腦會適用這篇的目的呢?你的電腦至少要有兩個磁碟分割──也就是裝著Windows的C磁碟,以及用來擺放個人資料的D磁碟。以下說明這兩種磁碟的差異:

    C磁碟:Windows系統
    • 存放內容:Windows資料夾、Program Files程式集、各種Cookie跟暫存檔案
    • 建議大小:120GB以上

    關於C磁碟最好在120GB以上的建議。如果你有養成把程式都安裝到D磁碟的習慣、並且常使用綠色可攜軟體的習慣以減少C磁碟的Program Files佔用區的話,那我的經驗中60GB也能夠順利運作。

    D磁碟:個人資料夾
    • 存放內容:桌面、我的文件、另外安裝的Program Files程式集
    • 建議大小:256GB以上,越大越好

    要修改哪些個人資料夾?

    除了比較常用的「桌面」跟「我的文件」之外,其實還有「開始程式集(Start Menu)」、「下載」等常常用到的個人資料。至於要怎麼修改,其實是看個人的規劃。在此我提出我個人建議的修改位置:「桌面」跟「我的文件」擺在D磁碟根目錄底下「下載」擺在「桌面」底下其他的個人資料夾擺在「我的文件」底下

    以下說明中,原始位置往往包含著使用者帳號,在此以<User>取代:

    桌面(Desktop)

    原始位置:C:\Users\<User>\Desktop

    修改位置:D:\Desktop

    我的文件(Documents)
    • 原始位置:C:\Users\<User>\Documents
    • 修改位置:D:\Documents

    裡面還有存放許多個人資料夾,也是要一一修改。

    下載(Downloads)
    • 原始位置:C:\Users\<User>\Documents\Downloads
    • 修改位置:D:\Documents\Downloads
    我的音樂(Music)
    • 原始位置:C:\Users\<User>\Documents\Music
    • 修改位置:D:\Documents\Music
    我的最愛(Favorites)
    • 原始位置:C:\Users\<User>\Documents\Favorites
    • 修改位置:D:\Documents\Favorites

    這個我的最愛只能用在IE上,跟Google Chrome或Firefox等其他瀏覽器無關。

    我的圖片(Pictures)
    • 原始位置:C:\Users\<User>\Documents\Pictures
    • 修改位置:D:\Documents\Pictures
    我的影片(Videos)
    • 原始位置:C:\Users\<User>\Documents\Videos
    • 修改位置:D:\Documents\Videos
    連絡(Links)
    • 原始位置:C:\Users\<User>\Documents\Links
    • 修改位置:D:\Documents\Links
    連絡人(Contacts)
    • 原始位置:C:\Users\<User>\Documents\Contacts
    • 修改位置:D:\Documents\Contacts
    搜尋(Searches)
    • 原始位置:C:\Users\<User>\Documents\Searches
    • 修改位置:D:\Documents\Searches
    儲存的遊戲(Saved Games)
    • 原始位置:C:\Users\<User>\Documents\Saved Games
    • 修改位置:D:\Documents\Saved Games
    所有程式(Start Menu)
    • 原始位置:C:\Users\<User>\Start Menu
    • 修改位置:D:\Documents\Start Menu

    要注意的是,這邊的「所有程式」捷徑只能修改使用者自己帳號底下的資料。所有使用者的「所有程式」用普通的方法無法修改。使用所有程式的時候,Windows 7會把使用者個人的跟所有使用者的程式自動混在一起顯示,所以倒也不用太在意。

    如何修改個人資料夾?

    很簡單,只要在資料夾內容中設定位置就可以了。

    因為我的個人資料夾都搬完了,所以以下舉例圖片中的路徑都不是上述的原始路徑與修改路徑,請自行應用。

    image

    首先,到該資料夾的原始位置上,按右鍵進入「內容」。

    image

    在內容的上方標籤中進入「位置」,裡面就可以填入你想要修改的新位置。

    image

    如果該修改路徑沒有資料夾,那麼Windows會提示自動建立新的資料夾。

    然後Windows會問「您是否要將所有檔案從舊位置移到新位置?」請按「是」,Windows會自動幫你搬好檔案。

    這樣子,修改一個資料夾路徑的工作就完成了。

    至於詳細的作法,可以看微軟技術支援「如何在 Windows 7 中更改“我的文件、我的圖片、我的最愛”...等的目的位置」的教學。


    結語:你真的需要這樣修改個人資料夾嗎?

    早期我在Windows XP時候是用修改登錄檔的方式來修改個人資料夾路徑,一開始換到Windows 7的時候我也如法炮製,然後Windows 7就整個怪怪的。

    後來才發現到原來Windows 7可以直接在內容中修改資料夾位置,這種方便性讓我感到微軟是真的有在改善系統。但是由於Windows 7權限設定比較嚴格的關係,很多資料夾仍然無法修改,像是所有使用者的「桌面」、「所有程式」的捷徑等等。這篇列出的個人資料夾中,只有使用者自己能夠修改的部份而已。

    然而,寫到這裡的時候,我忽然開始懷疑起,你真的需要這樣子大費周章地設定你的個人資料夾嗎?

    即使是空間昂貴的SSD,現在128GB的大小也成了市場普遍的水準。而雲端技術的發展,個人資料可以備份在遠端的伺服器,下次在重灌的時候再同步即可取回。到最後何須在意你的「桌面」跟「我的文件」到底有沒有被格式化?

    image[7]

    (圖片來源:在 Windwos 8 移除 Windows Live ID 綁定同步

    Windows 8推出了用Windows Live ID來同步多平台同一帳號的個人資料,可以同步個人化主題背景、輸入法、應用程式、瀏覽器、系統設定等等。而個人資料的部份則可以用DropboxGoogle DriveSkyDrive這些雲端硬碟來同步。儘管這些雲端硬碟通常不大,而且同步速度也很緩慢,但是科技進步的情況下,空間問題遲早會被解決。

    總而言之,不必設定個人資料夾,不必重灌一台電腦就要弄個人化弄老半天,我期待這種時候能夠早日來臨。

    (more...)