列出各Linux發行版安裝Google Chrome瀏覽器的方法,還有一些Ivon的使用經驗談。
「Google Chrome」是Google公司基於開源的「Chromium」專案所開發的瀏覽器。
Google Chrome對Linux系統的支援度很不錯,用法跟Windows和macOS系統一樣,開啟後登入Google帳號便可將書籤與擴充套件同步過來。Google Chrome針對Linux系統提供了完整的DRM支援,以及H.264解碼器。
不過Google Chrome是封閉原始碼的專有軟體,由於授權條款因素,各大Linux發行版的套件管理員通常只收錄完全開源,但是不支援同步Google帳號的上游版本「Chromium」。
因此想在Linux系統安裝Google Chrome,就得從Google Chrome網站下載安裝檔,直接從套件管理員安裝會顯示找不到套件。
本文Ivon會先介紹安裝Google Chrome的安裝方法,並分享一些常見問題的解決方案。部份內容適用其他基於Chromium開發的瀏覽器,例如Microsoft Edge、Brave、Vivaldi、Opera等等。
1. 安裝Google Chrome套件#
原生套件是Google官方推薦的安裝法,實在沒辦法再考慮使用跨發行版套件。Google Chrome的更新由Linux的系統套件管理器負責,所以你不會在瀏覽器裡面看到更新畫面。
撰文當下,Google Chrome (v.133) 官方的套件不支援ARM架構,僅提供x86架構的Linux套件。
Ubuntu與Debian#
最低需要Ubuntu 18.04或Debian 10以上系統。
- 至Google Chrome官網下載.deb安裝檔
註:你也可以用wget指令從Google的伺服器下載.deb檔
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
Ubuntu對deb按二下會跳出安裝介面,點選安裝。
如果安裝介面沒跳出來,在下載目錄按右鍵開啟終端機,輸入指令安裝.deb檔。
sudo apt install ./google-chrome-stable_current_amd64.deb
安裝後Google Chrome的套件名稱是為
google-chrome-stable
,日後Chrome會自動隨著apt upgrade
指令更新。Google Chrome資料儲存在~/.config/google-chrome/
。瀏覽器若打不開,請嘗試用命令行啟動:
google-chrome-stable
查看錯誤訊息。
Fedora與openSUSE#
最低需要Fedora Linux 39或openSUSE 15.5以上系統。
- 至Google Chrome官網下載.rpm安裝檔
註:你也可以用wget指令從Google的伺服器下載.rpm檔
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
- 在下載目錄按右鍵開啟終端機,輸入指令安裝.rpm。
sudo rpm -i google-chrome-stable_current_x86_64.rpm
安裝後Google Chrome的套件名稱是為
google-chrome-stable
,會自動隨著DNF或者Zypper的指令更新。Google Chrome資料儲存在~/.config/google-chrome/
。瀏覽器若打不開,請嘗試用命令行啟動:
google-chrome-stable
查看錯誤訊息。
Arch Linux與Manjaro#
Arch Linux要安裝Google Chrome的話,從AUR安裝即可,其實它就是拆官方.deb檔安裝的。
yay -S google-chrome
升級同樣從AUR升級。
Google Chrome資料儲存在~/.config/google-chrome/
。
瀏覽器若打不開,請嘗試用命令行啟動:google-chrome-stable
查看錯誤訊息。
跨發行版套件#
跨發行版套件適用於immutable distro用戶。或是你的Linux發行版太老,無法安裝最新的原生套件。
目前Google官方維護的Google Chrome只有.deb與.rpm版。沒有Snap或AppImage。Flatpak版Google Chrome由開源社區維護,有問題請先到Github回報。
安裝Flatpak
再用以下指令安裝Google Chrome:
flatpak install flathub com.google.Chrome
Flatpak版Google Chrome資料位於
~/.var/app/com.google.Chrome/
。Flatpak版的Google Chrome會有權限限制,安裝PWA程式可能會出問題。故需要開放以下目錄的讀取權限:
flatpak --user override --filesystem=~/.local/share/applications com.google.Chrome
flatpak --user override --filesystem=~/.local/share/icons com.google.Chrome
- 命令行啟動的指令:
flatpak run com.google.Chrome
2. 以命令行啟動Google Chrome#
除了點桌面圖示啟動以外,你也可以用指令google-chrome-stable
,從終端機啟動Google Chrome。後面可以加上命令行啟動參數。
命令行啟動參數 (flags,旗標) 定義Chrome啟動後的行為。效果等同在Google Chrome網址列打chrome://flags
所修改的設定。
比如google-chrome-stable -incognito
這個指令可以用無痕模式啟動Google Chrome。
google-chrome-stable --ozone-platform-hint=auto
則是以純Wayland模式啟動Google Chrome。
若要調整點選桌面圖示啟動Chrome之後的行為,得修改Google Chrome的Desktop Entry。該檔案位於/usr/share/applications/google-chrome.desktop
或者~/.local/share/applications/google-chrome.desktop
。
修改該檔案裡面的Exec=/usr/bin/google-chrome-stable
就能調整Google Chrome啟動後的行為,例如:
[Desktop Entry]
Name=Google Chrome
Exec=/usr/bin/google-chrome-stable %U -incognito
另外,在~/.config/chrome-flags.conf
檔案填入命令行參數的作法僅限Arch Linux有效。
3. 安裝Chrome遠端桌面#
Google官方經營的遠端桌面服務,讓使用者可以用Chrome瀏覽器遠端連線到另一部電腦。
參見Linux設定Chrome Remote Desktop的作法
4. 設定Google Chrome為預設瀏覽器#
Google Chrome的設定裡面可以將Google Chrome設定為開啟網頁連結的預設瀏覽器。
若無效就得手動設定。通常Linux桌面環境會遵守XDG MIME Apps標準來設定預設瀏覽器。
用這個指令設定預設瀏覽器為Google Chrome:
xdg-settings set default-web-browser google-chrome.desktop
5. Google Chrome儲存密碼的鑰匙圈#
Google Chrome會嘗試利用Linux桌面環境的服務來儲存密碼。
譬如GNOME桌面,Google Chrome會使用GNOME Keyring
服務儲存密碼;KDE Plasma桌面則是KWallet
服務。
有時候登入桌面之後,Google Chrome的鑰匙圈不會自動跟著解鎖。若要防止這種情況,請刪除原本的鑰匙圈,或者將密碼設定為空白。
GNOME:開啟Seahorse(套件名稱seahorse
)程式設定。
KDE Plasma:開啟KWalletManager(套件名稱kwalletmanager
)設定。
假若更換桌面環境登入,例如從GNOME切換到KDE Plasma,開啟Google Chrome後儲存的密碼就會噴掉(依然會同步到Google帳戶,但是本機儲存的密碼會消失)。變通方法是修改Google Chrome儲存密碼的服務,改成basic:google-chrome-stable --password-store=basic
6. 使用Google Chrome放大與上一頁手勢#
放大螢幕手勢(pinch to zoom),在筆電觸控板或者觸控螢幕兩指捏合放大的技術,無需使用Ctrl與+。
上一頁手勢(swipe to back),二指左右滑動回上一頁的手勢。
需要切換到Wayland工作階段,X11工作階段不支援。
以這個參數啟動Google Chrome:google-chrome-stable --ozone-platform-hint=auto
即可使用。
7. 啟用Google Chrome硬體加速編解碼#
這裡討論的是硬體加速編解碼,不是圖形加速,勿跟WebGL搞混。如果Linux的GPU驅動正常,則Google Chrome啟動之後WebGL就會正常,例如WebGL Aquarium應能跑滿60FPS。
但是影片編解碼卻不是如此。硬體加速編解碼能讓瀏覽器在播放Youtube影片的時候使用GPU計算,減少CPU負擔。對筆電用戶來說也能節省耗電量。
目前Google Chrome (v.133) 的硬體加速解碼非開箱即用,主要依賴VA-API技術,Vulkan尚不成熟。
但是,我試著按照Chromium的文件調整,但依然無法給Google Chrome啟用硬體加速編解碼。以下內容只適用Chromium (v.133)。
Intel和AMD GPU的硬體解碼依賴Mesa驅動。Nvidia請記得安裝專有驅動。
使用
vainfo
指令確認VA-API狀態。依照GPU品牌設定啟動參數:
# Intel
google-chrome-stable --enable-features=AcceleratedVideoDecodeLinuxZeroCopyGL,AcceleratedVideoDecodeLinuxGL,AcceleratedVideoEncoder
# AMD
google-chrome-stable --enable-features=AcceleratedVideoDecodeLinuxZeroCopyGL,AcceleratedVideoDecodeLinuxGL,VaapiIgnoreDriverChecks
# Nvidia
google-chrome-stable --enable-features=AcceleratedVideoDecodeLinuxZeroCopyGL,AcceleratedVideoDecodeLinuxGL,VaapiIgnoreDriverChecks,VaapiOnNvidiaGPUs
開啟Google Chrome的設定頁面,開啟圖形加速。
網址列輸入
chrome://gpu
查看硬體加速是否正常。只要Vulkan以外都有顯示Enabled就代表有了。嘗試以Google Chrome播放Youtube 4K畫質影片,再用統計GPU資訊的工具查看Google Chrome是否有用上GPU解碼。
Intel以指令intel_gpu_top
查看GPU使用率,AMD與Nvidia則是使用nvtop
指令。裡面Video
欄位的使用率應該會在播放4K影片的時候上升。
搭配htop
指令一併觀察CPU使用率。
8. Wayland工作階段的問題#
如何確認自己是使用Wayland工作階段?使用echo $XDG_SESSION_TYPE
即可得知是x11
還是wayland
。
Google Chrome (v.133) 預設使用XWayland啟動,在Wayland工作階段可能會導致效能不彰,並導致共享畫面黑畫面。
使用
google-chrome-stable --ozone-platform-hint=auto
引數啟動Google Chrome,進入純Wayland模式。反之,以google-chrome-stable --ozone-platform-hint=x11
引數啟動,強制以XWayland模式啟動。使用以下指令可得知是否正在使用Wayland:
strings `which google-chrome-stable` | grep WAYLAND_DISPLAY
- 然後要解決Fcitx5 Wayland無法輸入中文的問題。嘗試在
/etc/environment
加入環境變數,重開機。
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus
在Google Chrome的啟動引數加上
--ozone-platform-hint=auto --gtk-version=4 --enable-wayland-ime
。才能於Google Chrome瀏覽器的Wayland工作階段喚醒Fcitx5輸入法。解決Wayland Google Meet共享畫面黑螢幕。確認有無安裝
Pipewire
套件,以及xdg-desktop-portal-gnome
或xdg-desktop-portal-kde
套件,讓瀏覽器能透過XDG Portal存取螢幕。