2017/10/30

LXC Ubuntu 17.10 Desktop on QNAP NAS via Container Station


Ubuntu 17.10 在前幾天發行了,此版本是 Ubuntu 第一次使用 GNOME 當做預載的桌面系統。Doro 花了點時間將 Ubuntu 17.10 轉成 LXC Container,並能透過內建的網頁版 VNC 直接存取桌面系統,再包裝成能在 QNAP NAS 能直接使用的格式。隨後,此文將針對 gnome-shell 做了一些調效,並簡單試用了一下 snap 安裝殺手級應用 nextcloud。

Ubuntu 17.10 Desktop on LXC Container


在任意 QNAP x86 NAS 下開啓 Container Station,進入 Preference → Application Repository,將 Owner 改成 fcwu 後按下 Apply。


進入 Create Container 便能發現 Ubuntu 17.10 Desktop,按下 Install。


在 Port forwarding 的地方注意一下,看要使用那個 port 存取網頁 VNC 功能,這裡我用 port 5950。



經過好一陣子下載及建立,終於完成,進到剛才建立的 Container 直接按連結,便能看到 Ubuntu 桌面,預設的帳密為 ubuntu/ubuntu。


登入畫面已是 GDM,使用預設密碼 ubuntu 進入。


真的是 Ubuntu 17.10 喔。


開了幾個 App,點擊左上會把所有視窗給平鋪出來了,右邊目前有看到 2 個 workspace ,可以直接把視窗拉到不同的 workspace。


點擊左下角會出現目前有安裝的 Apps。


點擊正上方的日期,會有日曆以及通知。


右上則是音量,網路,設定等功能。


gnome-shell extension

gnome-shell 好玩的地方在很多 extension 可以安裝,我本身還是習慣以前的 Unity 使用方式,所以重新找了一些 extension。

要裝 extension 前建議先裝 Chrome or Chromium。


用 Chrome 開啟 https://extensions.gnome.org 會提示有些 packages 要安裝,按照指示 apt install chrome-gnome-shell 後,便可直接用該網站安裝 gnome-shell extensions。



我安裝了以下 extensions
  1. Dash to Dock - 左邊的 docker
  2. Frippery Move Clock - 時鐘移到右邊
  3. Gnome Global Application Menu - 整合 menu 至上方 panel
  4. Pixel Saver - title bar 放在 panel
  5. system-monitor - 系統資源監控
  6. User Themes - 方便安裝 themes


theme 的部分,我是直接 apt install gnome-tweak-tool numix-*,隨後再開 gnome-tweak-tool 來調整。

 


 安裝 Nextcloud


自從 Canonical 有了 snap,安裝這些應用真的很容易,指令就 snap install nextcloud,或是 UI 開 Ubuntu Software 也可點一點就裝完。



裝完後,第一次會要求你建立管理員帳號。



因為在 LXC Container 內使用,所以得進到 Container Station UI 上,設一下轉埠,我這裡用 18080。


從別台機器存取,nextcloud 會要求將此 IP/Domain 加入信任網域,照著指示在同台機器開那個網址便設定完成。



後記


要在 GNOME (wayland) 裡跑這種虛擬桌面真的有不少 know how,從 systemd, systemd-logind, xdummy or xvfb 選擇, novnc package, 以前桌面開在 tty7 現在是 tty1 for greeter, tty2… for session,LXC 權限究竟要開那些等等,整體來說是個很有趣的經驗。

2017/06/26

QNAP Browser Station: 免安裝直接使用 NAS 成連線跳板

太久沒寫文章,代表敝部門很久沒產品了嗎?其實不盡然,Container Station 現在是很多 App 的核心,這部分做了很多的努力,這些改進就留到下次想起來再寫。

這次是要介紹最近也是敝部門的新產品 Browser Station,2 個月內下載次數破萬(開心),這項產品的使用情境就是把 NAS 當跳板,像身處中國想用 FB,此時只有家裡有台 NAS 裝上 Browser Station 想連到那都可以,又或是說在家裡很想連到公司的某個網頁服務,這時只要確保你可以連到公司任一台 NAS,便可開啟虛擬的 Browser,讓你從 NAS 直接上網,使用起來像下圖,Chrome in Firefox


有在 follow 我的 github 的人,大概知道我有個星星很多的 project Docker VNC Ubuntu Desktop,原理大概就是那樣,Xvfb, x11vnc, noVNC 等等。

當然 QNAP 這版有一些特殊功能,像是

可打中文,輸入法是直接用外面的 (host)


視窗大小是可以隨意調整的 (不要以為這很好做,超難的)


複製貼上是必備的 


其他使用者的登入情境就不截圖了,就技術上還有 host 上該使用者可存取的 folder 會即時同步到 container 內,這用了 bindfs and inotify 來達成。

另外寫了個 Chrome extension 來替換原本的 Chrome 首頁。

一個有趣的 project...