Pages

Subscribe:

Ads 468x60px

Labels

2015年9月1日 星期二

DRBL+winroll可以自動加入AD了

資料來源


DRBL+winroll可以自動加入AD了

文章由 bunker9075 » 週二 11月 08, 2011 2:27 pm
各位原台中縣的資訊夥伴:
大家好!原來我們的資訊環境很多都是:REMBO+WIN2003+WINXP+AD管理電腦教室(其實真的是一個很完美的環境),後來因為REMBO被併走,再加上CLIENT端的os漸漸換成win7,所以作業系統大量部署這一塊大家都自己想辦法解決!為了解決rembo不再支援win7這個問題,我決定不再求助付費軟體,怕的就是以後又像rembo一樣,控制權操在他人手裡,這幾個月來一直鑽研國網中心的drbl,發現他的效能真的很好,唯一無法與rembo相比的是client端無法自動加入ad,所以從今年六月開始,就不斷的寫email去盧國網中心的開發人員,想不到他們竟然會理我這個無名小卒,經過數個月的郵件溝通,現在DRBL+winroll也可以做到像rembo一樣自動加入ad了 :lol: !目前我的測試環境如下:
server端:ubuntu10.10_server版+drbl_stable版
client端:winxp+winroll-v1.3.0-149
AD:WIN2003_SERVER
早上用acerpower_m6作大量部署的測試已經成功,真的可以像rembo一樣派送了!目前還有一些系統依序要做測試,:
WIN2008+WIN7環境
WIN2003+WINXP環境
WIN2003+WIN7環境
2008+WINXP環境
如果也想走此一解決方案的夥伴,建議您裝DRBL的server最好採用ubuntu,因為drbl是去找os裡的網卡驅動來做pxe動作(路徑:/lib/modules/2.6.35-22-generic-pae(實際到該路徑看核心名稱為何?)/kernel/drivers/net,一般我們習慣用的centos包的網卡驅動太少了)
最後,不知各位資訊夥伴需不需要我再提供進一步的drbl經驗,也許各位都已經用三個小朋友解決作業系統大量部署問題了,畢竟作這種系統的廠商很多,只是明年開始就沒有電腦維護費了,而drbl效能又很好,不用實在可惜!
bunker9075
 
文章: 477
註冊時間: 週三 3月 03, 2004 8:16 pm
來自: 社口國小

在硬碟上一次安裝ezgo、win7、conezilla live及一鍵還原備份功能選單

資料來源

我的電腦教室系統主要是利用phantosys來管理,phantosys的好處是支援win xp ,win 7 32bits 、win7 64 bits及Linux,因為我們的電腦教室授權是phantosys lite版,只能支援2個主要的root 映像檔,每個root可以分4層分支系統,所以我們的電腦教室一個root映像檔是win7,一個root 映像是ezgo9,phantosys的server用的等級不用太高,像我們是server是用core 2 duo,硬碟也是一般的硬碟,網卡也是內建的Giga,交換器是全giga,線是用cate6,這樣環境下,跑得還變順的。
client可以無硬碟方式執行,或是利用硬碟建cache,不過有建cache的話開機速度會比較快。

雖然這樣的系統好管理,但是很怕哪一天server掛點或交換器出包,那電腦課就準備開天窗了,所以我一直在想硬碟的系統要如何建置,除了方便我派送外也要方便我管理,那clonezilla和DRBL當然是不二人選。

首先,我規畫至少要安裝二個作業系統,一個是linux,一個是windows,另外也要在硬碟安裝clonezilla live,這樣我就不需要用光碟或usb開機載入clonezilla live,最好開機選單也做個即時還原功能,若系統亂了就請學生選還原,就可以將系統還原。

所以,我的硬碟規畫是:
sda1:win7
sda2:win7的儲存空間
sda3:linux的 /
sda5:linux的/home
sda6:linux的swap
sda7:clonezilla live安裝區

另外,也要留至少30GB的未配置區給phantosys作cache用

安裝順序是:
  1. 先用Gparted Live分割磁區,但要注意先不要留未配置區,因為win7安裝時會在未配置區安裝100MB的資料,這對於到時要建立還原映像檔時會很麻煩,所以我會只建二個partition,第一個是給win7
  2. 安裝win7到第一個分割區
  3. 然後,會再用Gparted Live 將第二分割區拿掉,再建立主分割區[sda2,sda3],延伸分割區[sda5,sda6,sda7]
  4. 將sda2格式化為ntfs
  5. 安裝ezgo9,sda3為/,sda5為/home,sda6為swap,sda7格式化ext3並留待安裝clonezilla live
  6. 安裝ezgo9後,系統就會建立一份多重開機選單
  7. 進入ezgo9後:修改root密碼,並設定開機預設項目,參考http://kuotzurung.blogspot.tw/2012/03/ezgo9clonezilla-live.html
  8. 安裝clonezilla live 到sda7, mount /dev/sda7 /mnt , 下載Clonezilla live的zip檔,將所有檔案解開到/mnt, 將/mnt/下的目錄"live"改成"live-hd"
  9. 修改 /etc/grub.d/40_custom,將clonezilla live加到開機選單
    ================================================menuentry "Clonezilla" {set root=(hd0,7)linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset
    ocs_live_run=\"ocs-live-general\" ocs_live_extra_param=\"\" ocs_live_keymap=\"\"
    ocs_live_batch=\"no\" ocs_lang=\"\" vga=788 ip=frommedia nosplash 
    live-media-path=/live-hd bootfrom=/dev/sda7 toram=filesystem.squashfsinitrd /live-hd/initrd.img}================================================注意: 這邊grub 2的開機參數,為了要顯示雙引號"在/proc/cmdline 中,雙引號"前面都要加上\。接著重跑update-grub2,不過我在執行上遇到要先執行update-grub2再執行update-grub 
  10. 重開機後,就可以在選單選clonezilla live開機,建立win7的映像檔到/sda2,映像檔我命名為win7-backup,同樣的方式再建立ezgo9的映像檔到/sda2,映像檔我命名為linux-backup
  11. 準備修改  /etc/grub.d/40_custom 並建立win7還原指令選單,我參考了新莊中信國小蔡明貴主任的文件 http://auto.ezschool.tw/ ,及 http://jainan.blogspot.tw/2011/09/196-for-acer-veriton-m490.html 可是因為他們的還原映像檔是和clonezilla live放在同一個磁區,所以在還原上不會有問題,但我的映像檔是放在/sda2,而clonezilla live是放在/sda7,所以原本我的 /etc/grub.d/40_custom是修改成這樣,修改完後執行update-grub2及update-grub------------------------------------------------------------------------------------------------------
    #!/bin/sh
    exec tail -n +3 $0
    # This file provides an easy way to add custom menu entries.  Simply type the
    # menu entries you want to add after this comment.  Be careful not to change
    # the 'exec tail' line above.
    menuentry "Clonezilla" {
    set root=(hd0,7)
    linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run=\"ocs-live-general\" ocs_live_extra_param=\"\" ocs_live_keymap=\"\" ocs_live_batch=\"no\" ocs_lang=\"\" vga=788 ip=frommedia nosplash live-media-path=/live-hd bootfrom=/dev/sda7 toram=filesystem.squashfs
    initrd /live-hd/initrd.img
    }
    menuentry "Recovery Win7" {
    set root=(hd0,7)
    linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset  ocs_live_run=\"ocs-live-restore\" ocs_live_extra_param=\"-g auto -e1 auto -e2 -c -r -j2 -k -p true restoreparts win7-backup sda1\" ocs_live_keymap=\"NONE\" ocs_live_batch=\"yes\" ocs_lang=\"\" vga=788 ip=frommedia nolocales live-media-path=/live-hd bootfrom=/dev/sda7
    initrd /live-hd/initrd.img
    }
    -------------------------------------------------------------------------------------------------
  12. 但是開機後,選 Recovery Win7 執行後會出現 The directory /home/partimag/win7-backup for the inputed name does NOT exist!
  13. 後來找到clonezilla live的開機參數說明http://clonezilla.nchc.org.tw/clonezilla-live/doc/fine-print.php?path=./99_Misc/00_live-initramfs-manual.doc提到ocs_prerun, ocs_prerun1, ocs_prerun2... 等參數讓你可以在Clonezilla主程式被執行前,執行相關指令,例如ocs_prerun="/live/image/myscript.sh"
  14. 因此加入了ocs_prerun=\"sudo mount /dev/sda2 /live/image/home/partimag\" 這行,所以再重新修改了/etc/grub.d/40_custom
    ------------------------------------------------------------------------------------------------------
    #!/bin/sh
    exec tail -n +3 $0
    # This file provides an easy way to add custom menu entries.  Simply type the
    # menu entries you want to add after this comment.  Be careful not to change
    # the 'exec tail' line above.
    menuentry "Clonezilla" {
    set root=(hd0,7)
    linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run=\"ocs-live-general\" ocs_live_extra_param=\"\" ocs_live_keymap=\"\" ocs_live_batch=\"no\" ocs_lang=\"\" vga=788 ip=frommedia nosplash live-media-path=/live-hd bootfrom=/dev/sda7 toram=filesystem.squashfs
    initrd /live-hd/initrd.img
    }
    menuentry "Recovery Win7" {
    set root=(hd0,7)
    linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset  ocs_prerun=\"sudo mount /dev/sda2 /live/image/home/partimag\" ocs_live_run=\"ocs-live-restore\" ocs_live_extra_param=\"-g auto -e1 auto -e2 -c -r -j2 -k -p true restoreparts win7-backup sda1\" ocs_live_keymap=\"NONE\" ocs_live_batch=\"yes\" ocs_lang=\"\" vga=788 ip=frommedia nolocales live-media-path=/live-hd bootfrom=/dev/sda7
    initrd /live-hd/initrd.img
    }
    -------------------------------------------------------------------------------------------------
    再重新執行
     update-grub2及update-grub
  15. 終於…可以直接在選單上執行還原功能了


  16. 之後再找時間安裝winroll,再用DRBL派送系統,我理想中的電腦教室系統就可以大功告成了!
為什麼我要這麼麻煩做這個還原功能呢,直接用DRBL派就好了呀,其實這是為了配合phantosys的cache,因為只要重派送,動到未配置區,phantosys就需要在學生機一台一台重建cache,那可真是煩人的事呀,而且之後要還原,就可以請學生直接按選單上的還原,再教他們按y就可以囉!
--------------------------------------------------------------------------------------------------

加入一鍵備份功能:
修改/etc/grub.d/40_custom
加入

menuentry "Backup Win7" {
set root=(hd0,7)
linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset   ocs_prerun=\"sudo mount /dev/sda2 /live/image/home/partimag\" ocs_live_run=\"ocs-live-restore\" ocs_live_extra_param=\"-q2 -c -j2 -z1p -i 2000 -p true saveparts win7-backup sda1\" ocs_live_keymap=\"NONE\" ocs_live_batch=\"yes\" ocs_lang=\"\" vga=788 ip=frommedia nolocales live-media-path=/live-hd bootfrom=/dev/sda7
initrd /live-hd/initrd.img
} 
主要就是修改ocs_live_extra_param這個參數,變成
ocs_live_extra_param=\"-q2 -c -j2 -z1p -i 2000 -p true saveparts win7-backup sda1\"

意思就是將sda1分割區存成名稱為win7-backup的映像檔

------------------------------------------------------------------------------------------------------
安裝winroll
若啟用sshd服務,服務所用的帳號為cyg_server,密碼存放在c:\cygwin\drbl_winroll-config\SSHD_SERVER_PW.txt

艾摩杰: Synology NAS + PXE 掛載iSCSI 打造無硬碟系統 啟動WinXP,Win7

艾摩杰: Synology NAS + PXE 掛載iSCSI 打造無硬碟系統 啟動WinXP,Win7: 須準備的硬軟體 1. iSCSI伺服器 (本篇使用Synology NAS DS1813+ DSM4.3-3776-2 示範) 2. Boot loader (筆者已經打包好檔案供下載) 3. 一台支援網路開機的電腦一台 (筆者使用intel PRO/1000 MT de...

2015年8月19日 星期三

[分享]Windows & Mac Mini的雙向網路磁碟共享之經驗分享(圖文並茂版)

資料來源

既然買了Mac Mini, 但是工作又丟不掉PC
檔案分享透過網路是必要條件

所以我早早就架設好網路架構

看到有朋友在問一些網路共享的設定問題

在此就把畫面整理一下
順便將我的經驗分享給大家

幾個動作就可以設定好了
在開始前, 各位只要確認兩台電腦的IP位址

因為透過[網路群組名稱]來設定實在有點很麻煩
因為像我在公司跟家裡的群組都不同
而且我常帶著NB跑來跑去
每個都要設群組就太麻煩了

所以後來我都用IP位址直接對應

簡單又好用!!

在此分享我的經驗:


先在Windows上打開檔案總館或是我的電腦, 在要分享的磁碟上按滑鼠右鍵

選擇[內容]

設定[共用]功能

將[在網路上共用這個資料夾]打開, 也可以將[允許網路使用者變更我的檔案]

接下來就可以回到Mac Mini了!!

到桌面上拉下[前往]選單的[連接伺服器]


輸入[SMB://192.168.123.138/] 除了 SMB:// 外的數字請改成你Windows的IP位址

然後按下[+] 新增到清單, 下次就不用再輸入了!!
輸入好按下[連接]

這時候就會出現讓你選擇資料夾, 如果你一台電腦設定很多分享資料夾
這時候就可以選很多個....

選一個吧!!

選好後, 你的桌面上就會出現一個玻璃裝個地球的新資料夾

這就是另一台Windows電腦上的檔案夾了

打開來看看吧!!你要的檔案就在裡面唷!!哈哈!!

很簡單吧!!
從Mac要讀取WIndows的檔案其實沒有很難!!


如果想在Windows電腦上讀Mac mini的檔案就更簡單了!!
看看下面幾個設定, 你一定也可以馬上就上手!!

先打開[系統偏好設定]中的[共享]

切到【服務】會有下面這樣的設定畫面

打開[Windows共享]功能
下面還有提示你, 該輸入蝦米樣的網址, 不過不重要...
只要記住最後的電腦名稱就可以了...

然後到Windows電腦中, 打開[檔案總管]

在[網址]輸入 \\192.168.150\jerry
就可以連上啦!!

很簡單吧!!

2015年8月5日 星期三

RWD響應式網頁設計

HTML5 UP
http://html5up.net/

煦婚嫁 Frei Bridal
http://www.fbridal.com.tw/

https://www.freshdesignweb.com/free-html5-css3-templates/

http://designscrazed.org/free-responsive-html5-css3-templates/

http://w3layouts.com/free-responsive-html5-css3-website-templates/

玉荷軒 http://www.yuihoshien.com/index.php


DW網頁設計商業應用學習流程_RWD響應式網頁設計模版套修階段學習方法

2015年7月31日 星期五

Acer Chromebook 13 Ubuntu (Chrubuntu)

資料來源



前言:
Google提供了我們Linux Geek一個好玩具。

Acer在去年底推出Acer Chromebook 13這台Chromebook,
我看了規格後覺得,這台非常適合Linux玩家,未來不知道,
但過去要找到這樣的玩具,還台灣廠商做的,很少很少(根本是沒有啦.....)

Acer Chromebook 13我是透過網拍買的二手機(我是12月中旬買的),
但因為距離上市日期不長,加上它的特性,我相信機器都還很乾淨,
要被操到硬體問題一堆,難度很高,
在這裡要感謝賣家,用不錯的價格提供了一台好玩具。

規格:
Acer Chromebook 13的規格如下:
  • CPU:ARM Cortex-A15 4核心 (Nvidia Tegra K1)
  • Video:Nvidia Kepler架構192核心
  • LCD:13.3吋LED背光LCD (1366x768)
  • RAM:4GB DDR3 (不可擴充)
  • Storage:32GB eMMC
  • Webcam:前置Webcam (1280x720)
  • WiFi:802.11ac
  • Bluetooth:Bluetooth 4.0
  • Card Reader:SD-Card
  • Battery:3220 mAh
看到第1條相信就傻了,再看第2條,更傻。
這台Notebook,使用的是ARM處理器,而且是Nvidia出的ARM處理器,所以內含Nvidia顯示。

這台機器非常有趣,它的真身其實是:
Tegra-K1
原價屋NVIDIA Jetson TK1開箱

它是Nvidia針對行動平台出的ARM處理器,
除了Acer Chromebook 13外,還使用在下面幾個產品上:
此外,Nvidia提供的車用電腦開發平台,也是使用這塊Nvidia Tegra K1。


機器問題點:
問題1:無法安裝Windows
Acer Chromebook 13最大的問題,正是它的特色所在,
它使用的是Nvidia ARM處理器,因此無法在上面安裝Windows,
這對於大部分玩家而言,就會是個大問題,
無法安裝Windows,表示無法隨心所欲的安裝程式、系統。

問題2:ChromeOS有夠難用
ChromeOS的主要問題是,它全部功能都要透過網路,
你要寫Word、Excel、PowerPoint:Google Document
你要記事本:Google Keep
你要儲存檔案:Google Drive
你要看影片聽音樂:一個簡易的播放器,並整合Google Drive

那如果現在沒有網路呢?
你要寫Word、Excel、PowerPoint:.........
你要記事本:..........
你要看影片聽音樂:..........

那不用說了,這根本就是垃圾,沒有使用者會買單的。



當上述2個問題同時存在,你買了一台Chromebook,
只能使用Google線上服務,離線後通通不能用,
又不准你安裝其他作業系統,
請問你下個動作是什麼?

我猜:
1. 退貨
2. 網拍賣掉
3. 丟角落堆灰塵

ChromeOS的設計有其特色,但目前設計有瑕疵,實用性很糟糕,
關於它的設計理念,我放在最下面附註。

Linux Geek禮物:
雖然機器有上述2個怪問題,但對於Linux Geek來說,這些問題都不是問題。

Chromebook有2個特別計畫:
  • chrubuntu
  • crouton
這2個計畫都能讓Chromebook不再用ChromeOS,而改用Ubuntu或其他Linux distribution。

這2個的區別是:
  • chrubuntu:是「安裝」一個獨立的Ubuntu,開機就直接進入Ubuntu
  • crouton:是「放置」一個Ubuntu,由ChromeOS切換進Ubuntu桌面環境
2個我都使用過了,crouton不好用,
而且在Acer Chromebook 13上,crouton無法使用顯示晶片硬體能力,
我自己是沒有嘗試過,國外網友的意思是,
Nvidia K1 X11 Driver只能被載入1次,重複載入時,第2次載入無法使用硬體能力。

目前我是使用chrubuntu的方式,系統運作相當不錯。

Acer Chromebook 13 Linux軟體(含作業系統)支援情況:
針對Linux軟體支援情況,我們概括簡單的按下面分類:
  • 硬體驅動與Linux Kernel
  • Linux軟體、Library與ARM

硬體驅動與Linux Kernel:
Acer Chromebook 13出廠就是Linux,因此內部的硬體沒有Linux驅動的問題。
這非常難得,大部分Notebook要裝Linux,都會遇到很多驅動程式不支援或支援不好的情況,
但在Chromebook上,不會有這樣的問題。

額外驅動程式,
Google有提供各Chromebook的Kernel SourceCode,額外裝置的Kernel Module SourceCode只要支援ARM,就可以編譯出Kernel Module。

這點Google做得相當好,它針對所有Chromebook型號,有提供一整棵Kernel SourceCode Tree,
我們可以直接根據Chromebook型號,下載到相對應的Kernel SourceCode,也有提供目前使用的config(ChromeOS預載Kernel,直接有/proc/config.gz),可以自己修改Kernel,或編譯Module。

因為它沒有RJ-45有線網路,我另外插一張USB3.0 Gigabit網路卡,
驅動程式直接有module可以使用,連build都不用。
哪一張?
USB3.0 gigabit網路卡晶片大概只有1、2家,可以直接用的是Axis的晶片,
很神奇,Axis本業是IP Camera,但竟然業外搞了一顆少見的USB3.0 gigabit chip。

Linux軟體、Library與ARM:
目前Ubuntu ARM(當然應該也包括Debian ARM)的套件完整度相當高,
除了專門針對x86的軟體(例如:wine、VM)沒有之外,
目前使用上,還沒遇到沒提供的OpenSource軟體或Library,
哪些叫做有提供的?
Java、FlashPlayer(Google包在Chromebook內)、GNOME、MPlayer、VLC、Firefox、Chromium、Qt Library、GTK+ Library、python...等,常見的軟體、Library都支援。

到目前,只遇過一套程式可以裝,但執行會Crash,是畫3D的blender。

所以使用上幾乎沒遇到問題,目前唯一的問題是,
它的硬解Nvidia是用OpenMAX,提供的是GStreamer模組,
MPlayer、VLC不支援OpenMAX,目前還只能ARM軟解。

但這台ARM四核心很強大,除了H.264不行外,MPEG4以下等級,ARM軟解都直接ok。

所以結論是,這台Chromebook 13,改用Ubuntu(Chrubuntu)後,整個頭好壯狀,考試都得100分。

特色與優勢:
1. 非常省電 (除動態時脈調整外,還動態開啟關閉CPU核心)
這台是ARM系統,使用起來真的是很省電,
Nvidia對Tegra K1的支援相當不錯,
它因為是專門用在手機、平板的行動平台,對於省電有特殊設計。

根據Tegra-K1描述,
「理論上」它應該是NVIDIA 4-Plus-1 Quad-Core ARM Cortex-A15,
這裡指的NVIDIA 4-Plus-1是說,
「理論上」它應該有2顆ARM,
1顆是4核心高階高時脈ARM,另一顆是單核心低時脈ARM,稱為LP :p,
「理論上」它應該可以在閒置時,關閉4核心高階ARM,切換成使用LP ARM。

「實務上」我找不到文獻說的參數來切換CPU,沒辦法很屌的做到切換成LP ARM,
原因我有3個猜測:
1. 我猜Google或Acer測試時發現不穩,把這功能關閉
2. 這款SoC是閹割版,沒有額外這顆LP    ARM
3. 工程師研發時,沒注意到這功能,沒開

但除了這點有點可惜外,這台Chromebook的ARM直接build-in省電module,
它除了一般PC動態時脈調整外,它可以動態的開啟、關閉CPU核心,
當CPU工作量低時,就會先關閉1個核心,還是很低就關第2個核心,
陸續關到剩下單核心。
當CPU工作量增加時,時脈先拉高,然後開第2個核心,
還是很高,開第3個核心,最終4個全開。

開/關的切換過程完全不會有感覺,不會頓也沒遇過程式因為切換發生問題。

2. 強大顯示運算
買小筆電,看高解析度影片真的是慘,
「號稱」可以硬解1080p影片,
實際情況是,高bitrate影片就是解不動。

這台是Nvidia血統的SoC,不用說,顯示晶片超強,
Nvidia主打的特點就是超強繪圖運算,
Tegra-K1的介紹中描述,它的應用環境包括:
  • 車用電腦中的環境辨識 (包括自動煞車的車前障礙物辨識、循跡系統的標線偵測...等)
  • 機器人的機器視覺 (障礙物辨識、物件辨識)
所以這台有CUDA,可以直接用這台開發CUDA程式做顯示卡運算,
雖然不知道意義在哪........

播放影片部份,如果MPlayer、VLC能支援OpenMAX(正在研究中),
那就可以丟掉爛爛的播放器,直接用MPlayer、VLC順暢播放H.264影片。

3. 高CP值
這台就算是原價,價格也相當實惠。
客官啊.......
它的雙胞胎兄弟NVIDIA Jetson TK1原價屋目前特價一塊還要NT 6090,
你買這台NB,Acer附上13.3吋LCD、3220mAh電池、802.11ac WiFi、藍芽、32GB eMMC,
只多賣你不到NT 4000,這樣的商品和價格,去哪找啊。

怎麼改機成Ubuntu (Chrubuntu):
我完全瞭解,介紹了半天,卻不提供安裝方式,根本是炫耀文,擺明找打。

我還沒完全把Chrubuntu的script修改完,
沒辦法提供出簡單、完整的安裝方式出來,
不過,這裡我先把參考資料,目前建好的檔案放出來,
高手高手高高手先自己試試看吧!

參考資料:
ChrUbuntu on Acer Chromebook 13

上述參考資料的位址是最關鍵的,裡面開版大大實際上已經把7成的工作完成了,
他做了下列事情:
1. Ubuntu放上Acer Chromebook 13
2. 整合了Nvidia在Linux For Tegra R19提供的Library
3. 把Google改過針對Acer Chromebook 13的FlashPlayer移入Ubuntu
4. 放上支援硬解的播放器(可能也是從Google的ChromeOS搬出來的)
5. 將ChromeOS內的Kernel和modules複製到Ubuntu中

其他網友在版上補充:
1. Ubuntu NetworkManager在WiFi運作不正常的修正
2. 音量快速鍵設定
3. 開機後預設關閉藍芽
4. Ubuntu 14.10無法順利安裝和使用,需使用Ubuntu 14.04

自己安裝心得:
我自己實際安裝,第1次安裝滿辛苦的,因為它下載網站設到歐洲,很慢.......
過程失敗,就要重新開機,整個script重跑......很久.....
所以最後script還自己邊try邊改......直到安裝成功......
再之後,直接把安裝好,ok得版本tar起來,直接tar解開......

另外,我自己修正包括:
1. 修正按Power睡眠後起不來
2. 除Xfce4外,安裝GNOME Fallback
3. 輸入法加入新酷音輸入法
4. 除音量快速鍵外,加入顯示器亮度快速鍵 (針對GNOME設定,Xfce4我不會設自定義快速鍵)
5. 直接安裝好修正過的NetworkManager
6. Nvidia的Linux For Tegra(L4T)改用R21.2版 (R21.2版支援CUDA 6.5,R19只支援到CUDA 6.0)
7. 修正切換耳機沒聲音
8. 加入CIFS和NFS的modules
9. 開機後直接設定啟用動態開啟/關閉CPU核心的能力
10. 安裝、設定思源黑體(Noto Sans)中文字型
11. 開機後,顯示器亮度設為50%(預設是最亮)
12. 安裝好Java、Firefox、Chromium、LibreOffice、MPlayer、VLC、aptitude

我直接將改過得整個系統打包成tar檔案,
省去chrubuntu script上網下載一堆套件安裝成系統的時間,
高手高手高高手只需要:
Step 1. 按chrubuntu教學,將Acer Chromebook 13設成Develop Mode
Step 2. 按ChrUbuntu on Acer Chromebook 13執行chrubuntu.sh,變更Partition Size並Format成ext4
Step 3. 將我改過的系統tar檔傳上去(我自己是用wget放到home目錄),解開到chrubuntu Partition
Step 4. ChrUbuntu on Acer Chromebook 13,切換開機載入系統的Partition

打完收工

預設的帳號密碼和原來chrubuntu一樣:
帳號:user
密碼:user

root預設禁用無法登入,使用sudo su變更後再改密碼。

檔案壓縮後有1.35GB目前我放在MEGA上,
未來歡迎幫我分流,或提供給我空間放置,連結如下:
xubuntu-desktop_lazchrubuntu_l4tr21.tar.bz2

下一篇,我希望可以修改完針對這個檔案安裝的chrubuntu.sh,
再把完整步驟寫出來。

目前使用上尚待解決的問題:
1. MPlayer、VLC OpenMAX移植和硬解(如果用gstreamer base的播放器,如:totem,可以直接硬解)
2. 睡眠後可能是顯示晶片沒停止很耗電,我電腦睡眠後丟著,白天上班晚上回來電池竟然沒電了
3. 闔上螢幕不會關機;但睡眠後,闔上螢幕反而會開機
4. GNOME環境下,System tray的電池開機後不會顯示;點設定->電源叫出後,睡眠->醒來後又會消失
5. 睡眠醒來時,畫面會閃3下
6. Firefox支援Java Plugin不支援FlashPlayer (這是個大哉問,跟Firefox要支援Chrome Plugin格式有關)
7. Chromium支援FlashPlayer不支援Java Plugin (這是個大哉問,跟Java Plugin格式有關)
8. 變更alsamixer設定後,切換到耳機模式,耳機有聲音喇叭沒聲音(正常);但在喇叭模式,耳機和喇叭都有聲音(不正常)
9. 鍵盤沒有Del,同位置是電源,經常按錯啊 (這問題是來鬧的嗎....)
10. 極少數時候,睡眠醒來後,執行中程式會Crash

目前注意到大部分問題都發生在睡眠或睡眠醒來,
我十分懷疑問題點在Systemd和UPower,
事實上我發現到,Ubuntu預設睡醒的行為,都是針對x86或intel的動作,
這台是Nvidia ARM,相關的動作都沒有或可能不完全,
但目前我對Systemd和UPower都不算熟,chubuntu又算是改機成品,
沒有正常的Ubuntu 14.04對照,不確定正確動作流程。

題外話之ChromeOS設計理念:
Google的Android在手機上異常成功的關鍵之一,就是捨棄了傳統的手機平台設計,
傳統手機平台,都是一般作業系統搭配一個特殊的環境和特殊的SDK,
像是OpenMoko
在那個年代,我還在用PocketPC,最方便開發的系統是WinCE,使用VisualC++ Embedded。

你要開發者在開發App前,要先經過一個複雜的「儀式」,
才能把開發環境建置出來,環境內的桌面系統可能是Qt Library、GTK+ Library,
又因為是手機平台,SDK還不大一樣,這開發者怎麼買單?

Google的創舉在於,你不需要那個複雜的「儀式」,
你也不需要學習離譜的SDK,你只要會「Java」,而且注意,
不是Sun設計得莫名其妙的JavaME,而是直接用JavaSE就能開發,
只要最後經過一道「詭異程序」,就能把Java程式放在Android上執行。
所以就成功了...........

Google的作法是,
它把手機底層全部用一個Google的JavaVM包裹(JavaVM的設計公司是被Google買斷的),
開發者不需要知道底層在幹嘛,只需要Java程式這個JavaVM能看懂,就能執行,
那個「詭異程序」,就是負責將一般的Java程式,
轉換成這個小型化JavaVM能看懂的格式,附帶包入安裝資訊...等。
Google這作法當時,Java已經是熱門語言,程式開發者多,
直接用現成語言和現成SDK就能開發,
加上Google的名號,和當時hTC獨家的硬體工藝,使用者和開發者就買單了。

事實上,當時Google還是擔心和其他同質平台遇到一樣的問題,
因此發表前還搞了個Android前100大創意App徵選,
除了搞聲勢外,就是要讓開發者能認識、熟悉這個平台的開發環境和模式。

Google聽到有人在PC上,用「瀏覽器」當核心開發OS,
手法和它在Android上一樣,差別是,
一個用JavaVM,一個用瀏覽器的WebKit + JavaScript解譯器
(瀏覽器在現代,幾乎可以視為一種Html + JavaScript語言的VM),
直接就想複製這樣的模式到PC,要把Windows幹掉,這就是ChromeOS。

ChromeOS的設計理念不錯,也很特別,
但它的設計,只整合了網路服務,沒有整合本機程式,
這讓整個ChromeOS變得失敗。

我描述個對比,你在Android手機上操作,
會因為是網路手機,所以沒辦法讀取手機內的影片、聲音、聯絡人、簡訊嗎?
這當然不會發生吧.......

但在ChromeOS上,竟然是搞成這樣,這真的是失敗設計,
你要同一個架構這麼搞,你可以寫個獨立的Local WebServer,
所有本機相關的操作,都透過Local WebServer呼叫執行。

更簡單的作法,你直接在架構上開洞,在ChromeOS的SDK上開個API,
能直接開啟本機程式,同樣可以引入檔案總管、小畫家、MPlayer、VLC...等,
就不會搞成現在這樣,有新意但不好用。