分類: 架設網站

安裝 Ubuntu Live Server 20.04

No Comments

還是有些坑(也沒那麼深,說小洞吧),是該填一填。

  • 版本 20.04.1
    在前面文章提過,unetbootin 只認得 20.04.1,故就取此版來安裝。
    ubuntu-20.04.1-live-server-amd64.iso
echo "443511f6bf12402c12503733059269a2e10dec602916c0a75263e5d990f6bb93 *ubuntu-20.04.1-live-server-amd64.iso" | shasum -a 256 --check
  • 安裝前,bios boot mode 使用 legacy mode,否則以 EFI 啟動,將難規劃硬碟。
  • 安裝時一定要插網路線,否則裝成進入系統,不知如何啟用網路。
    筆者補述:不用插網路線,則進系統後更改 netplan 即可啟用網路。
  • 安裝完成選擇略過更新,不然會等好久;事實上選略過也是要等好久好久。。。當下可打開觀看即時的 log 以消磨點時間。
  • 故就裝好了。其當中會有套件可供選擇,筆者全不選,也有 openssh-server 的安裝,先裝為佳。而之所以筆者會想裝 server,就是因為它少了 GUI 介面,其因在 desktop 版本下的系統下查看 log 發現 GUI 好似都有些 error 出現。不過,此舉該是失望了因為,我們後續仍會安裝遠端桌面,仍是免不了該裝 mate 環境(筆者按:也試裝了 openbox,xfce4,cinnamon,還是 mate 反應最快最穩定),如此,並沒有少裝了 GUI 且並沒有彌除 GUI 所帶來的問題。
  • 於此補充一點,若是裝了 server 但仍是想裝 GUI,則可參考此文章。原則上就是裝 display server 如 slim,再裝 desktop environment。而例如 slim,會控管一開始的登入畫面,所以相關的設定,例如 auto-login 就由此來修改 /etc/slim.conf。
    https://phoenixnap.com/kb/how-to-install-a-gui-on-ubuntu
  • 以下是系統啟動後。對了,若 server 不是安裝在預設的 sda,則有可能無法 boot up,則需參考 clonezilla 那篇文章讓 server 可 boot up。
  • wakeonlan 請參考前文章。查看一下狀態,或許需手動啟用。
  • 初步的設定,請參考前文章。
  • 為了遠端存取,所以 openssh 與 mate,x2go 都先裝好。
  • 因此 server 是對外的,所以盡量推到前線,不再過路由器。故 noip 也先裝起來以方便存取。ufw 也打開;記得先讓 ssh 能過,且不要在 port 22。
  • 以下遭遇到兩個問題:
  • 有線網路 mtu 一直被反覆設成 1500 1280。造成此網卡與數據機無法正常通訊而連線無法建立。無知的解法如下;尚待尋正解。
    於 /etc/netplan/00-installer-config.yaml,更改成如下:
    並下 netplan generate; netplan apply; 套用。
# This is the network config written by 'subiquity'
network:
  ethernets:
    enp1s0:
        dhcp4: true
        dhcp6: true
        match:
            macaddress: ii:ii:ii:ii:ii:ii # note, this nic mac address
        mtu: 9000
  version: 2
  • 裝了 mate 後,系統只要 idle 20 minutes/1200 seconds 便會進入 suspend。就算遠端登入有活動也必呈 idle。修改 gnome,mate 的 power 設定都無效。但記得 gnome,mate 的 power 設定都要去 survey/modify 過;安裝使用 dconf-editor。唯有強制停用 power saving 才行。當前無正解。
  • 補充:後來,硬著頭皮嘗試不再遠端登入,掛上螢幕登入,想說,必須至少本地端登入一次讓設定套用。結果,失敗。看來,很可能非 gnome/mate 的問題;此 20 分鐘便 suspend 並不因我在 gnome/mate 將時間拉長而變更。
    看似無解的參考:
    https://ubuntu-mate.community/t/ubuntu-mate-auto-suspend-20-minutes-after-it-restart/17650/5
  • 至於是 AC or Battery,因我們使用的是低耗能主機,不知 BIOS 如何設置主機角色,故兩者都要設定。
  • 設定路徑如下:
/org/gnome/settings-daemon/plugins/power/sleep-inactive-ac-type
/org/gnome/settings-daemon/plugins/power/sleep-inactive-battery-type
/org/mate/power-manager/action-sleep-type-ac
/org/mate/power-manager/action-sleep-type-battery
  • 禁用如下:
# 禁用 power saving
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
# 復用 power saving
sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target
#  File generated by update-locale
LANG="zh_TW.UTF-8"
LANGUAGE="zh_TW:zh"

20210914 更新

  • 筆者過了兩天又再重新安裝一次,並且有進展地追述如下。
  • 首先談到語言設置,同樣地在 /etc/default/locale 內改寫如前。而隨後,因為要安裝 mate desktop,所以做法如下。
    但若,有使用者不要安裝桌面,但在 terminal 底下一樣有中文語系的需求,則請參考前面貼的連結。
    於此,此時(20220106)再作補充一次:/etc/default/locale 內容可如前述,也可累贅再多加幾行如下,並且關於方塊字的顯示的排解,可使用安裝另一套 shell,zhcon。
LANG="zh_TW.UTF-8"
LANGUAGE="zh_TW.UTF-8"
LC_NUMERIC="zh_TW.UTF-8"
LC_TIME="zh_TW.UTF-8"
LC_MONETARY="zh_TW.UTF-8"
LC_PAPER="zh_TW.UTF-8"
LC_NAME="zh_TW.UTF-8"
LC_ADDRESS="zh_TW.UTF-8"
LC_TELEPHONE="zh_TW.UTF-8"
LC_MEASUREMENT="zh_TW.UTF-8"
LC_IDENTIFICATION="zh_TW.UTF-8"
# This is the network config written by 'subiquity'
network:
  renderer: networkd
  ethernets:
    enp1s0:
      dhcp4: true
      dhcp6: true
      mtu: 1280
      #    enp2s0:
      #      dhcp4: true
      #      dhcp6: true
      #    enp3s0:
      #      dhcp4: true
      #      dhcp6: true
      #    enp4s0:
      #      dhcp4: true
      #      dhcp6: true
      #    enp5s0:
      #      dhcp4: true
      #      dhcp6: true
      #    enp6s0:
      #      dhcp4: true
      #      dhcp6: true
  version: 2


# if bond is to be used, as follows.
#network:
#  version: 2
#  renderer: networkd
#  ethernets:
#    enp1s0:
#      dhcp4: false
#      dhcp6: false
#    enp2s0:
#      dhcp4: false
#      dhcp6: false
#
# note: need to add a line "bonding" in /etc/modules
#  bonds:
#    bond0:
#      macaddress: xx:xx:xx:xx:xx:00
#      interfaces:
#        - enp1s0
#        - enp2s0
#      dhcp4: true
#      dhcp6: true
#      mtu: 1500
#      parameters:
#        mode: 802.3ad
#        lacp-rate: fast
sudo -u gdm dbus-launch gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'
sudo -u gdm dbus-launch gsettings set org.mate.power-manager action-sleep-type-ac 'nothing'
sudo -u gdm dbus-launch gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'nothing'
sudo -u gdm dbus-launch gsettings set org.mate.power-manager action-sleep-type-battery 'nothing'
  • 正解二:
  • 關閉自動載入 GUI
    sudo systemctl set-default multi-user
  • 開啟自動載入 GUI
    sudo systemctl set-default graphical
  • 手動啟動 GUI
    sudo systemctl start gdm3
  • 手動關閉 GUI(登出)
    gnome-session-quit
  • 最後,停用 GUI 後,於主終端機下,發現執行指令都會 hang 住。但 SSH 登入不受影響。不知為何。留下了一絲遺憾。

移除 cloud-init

  • 抑制此 service 執行
    sudo touch /etc/cloud/cloud-init.disabled
  • 啟動變更組態,將所有選擇取消,最後一行 none checked。
    sudo dpkg-reconfigure cloud-init
  • 應是要 reboot
  • 移除套件
    sudo apt purge cloud-init
  • 清除剩下的
    sudo rm -rf /etc/cloud/ && sudo rm -rf /var/lib/cloud/
  • 重啟。

結語

  • 使用 server,筆者好像只為了不使用 GUI 介面。
  • 而 X2GO 無法使用 Gnome,原因是 Gnome 可能只能實例一份。但或許主機端不啟動桌面,則或許遠端便能使用。但按此邏輯,與 mate 的差異便是 gnome 只能遠端一人,mate 不限。所以說起來使用 server + mate 還是較符合需求。
  • 不過據觀察,server 還會多裝一些管理員的軟體,故常駐與動態行程,ubuntu server 與 ubuntu desktop 的數量還是差不多的,反倒一些必要基礎軟體,desktop 已預設有裝,server 反之。因此總結此二者還是很難取捨決擇。
  • 但令人失望的是,筆者將此網站移至新的,比原先 desktop based with caddy v1 web server 的更快的 server 新主機 with nginx,以作測。測果就是下圖最後兩行,其餘的都是前者(效率愈來愈差就是跟隨 php 版本的進展),相當意外地失望。當然有不小的原因是 php 8.0 新版效率更差了(但 desktop 亦使用 8.0,倒數三四行)。而筆者仍有感(僅供參考),那些常駐行程,server 比 desktop 耗用更多 CPU 時間。
  • 因此筆者給未來的筆者建議是,還是。。。用 desktop 吧。

再補充

  • 筆者後來又重裝了一次,改用 desktop 版本並取消進入 gui。
  • 透過 Alt + F1 to F6 切換 tty1 to tty6。
  • 在 tty 下會有亂碼,如前述,是因中文語系支援未到位。筆者並未去尋解;有需要者請自行之。故並沒有什麼問題,只是中文字顯示不正常而已。仍可盲操作。
  • 筆者將系統一安裝完,隨即安裝 ssh server,並打開 ufw,因為網路雜訊太多了。但提醒,別忘了 ssh 改 port 之餘,還要去改 sshd_config。不然就被防火牆擋住進不去了。
  • 前述的取消 gui 後,仍有相關的行程在常駐與運行,故尚需更乾淨的處置。並且 X2GO client 仍無法以 ubuntu or gnome 運作,仍需裝 mate。

20221122 再補充

  • 當我們裝完 server 版後,GUI 是不存在的,而欲安裝的 mate 是不包含 display manager 的。故裝完 mate 需再加裝 lightdm 參考如下,
  • sudo apt install mate-desktop-environment
  • sudo apt install lightdm lightdm-gtk-greeter
  • 便可由 systemd 來開關 GUI。
  • https://wiki.mate-desktop.org/introduction/installation/

Categories: Linux 架設網站

PHP Code Snippets Powered By : XYZScripts.com