「Chromium」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(2人の利用者による、間の22版が非表示)
1行目: 1行目:
 
[[Category:ウェブブラウザ]]
 
[[Category:ウェブブラウザ]]
  +
[[Category:Google]]
 
[[de:Chromium]]
 
[[de:Chromium]]
 
[[en:Chromium]]
 
[[en:Chromium]]
[[es:Chromium]]
 
[[fr:chromium]]
 
[[it:Chromium]]
 
[[ru:Chromium]]
 
 
[[zh-hans:Chromium]]
 
[[zh-hans:Chromium]]
 
{{Related articles start}}
 
{{Related articles start}}
{{Related|Chromium 設定}}
 
 
{{Related|ブラウザ拡張機能}}
 
{{Related|ブラウザ拡張機能}}
 
{{Related|Firefox}}
 
{{Related|Firefox}}
{{Related|Opera}}
 
 
{{Related|Vivaldi}}
 
{{Related|Vivaldi}}
 
{{Related articles end}}
 
{{Related articles end}}
   
[[Wikipedia:ja:Chromium|Chromium]] は Google によるオープンソースのグラフィカルウェブブラウザです。[[Wikipedia:ja:Blink (レンダリングエンジン)|Blink]] レンダリングエンジンを使用しています。
+
[[Wikipedia:ja:Chromium|Chromium]] は[[Wikipedia:ja:Blink (レンダリングエンジン)|Blink]] レンダリングエンジンをベースとた、オープンソースなグラフィカルウェブブラウザです。プロプライエタリな Google Chrome ブラウザの基礎となっています。
   
 
Chromium と Google Chrome との違いについては [https://chromium.googlesource.com/chromium/src/+/master/docs/chromium_browser_vs_google_chrome.md このページ] を見てください。さらに:
 
Chromium と Google Chrome との違いについては [https://chromium.googlesource.com/chromium/src/+/master/docs/chromium_browser_vs_google_chrome.md このページ] を見てください。さらに:
21行目: 16行目:
 
* 同期は Chromium 89 以上 (2021-03-02) で利用できません。[https://archlinux.org/news/chromium-losing-sync-support-in-early-march/]
 
* 同期は Chromium 89 以上 (2021-03-02) で利用できません。[https://archlinux.org/news/chromium-losing-sync-support-in-early-march/]
   
{{Note|同期は、[https://gist.github.com/foutrelis/14e339596b89813aa9c37fd1b4e5d9d5 Chrome の OAuth2 認証情報を使用する]か、[https://www.chromium.org/developers/how-tos/api-keys 自分の認証情報を取得する]ことで一時的に利用可能にできますが、免責事項に注意し、この方法を長期的な解決策と考えないでください。長期的な解決策としては、ブックマークの同期するために [https://www.xbrowsersync.org xbrowsersync] に移行することを検討してください。
+
{{Note|同期は、[https://gist.github.com/foutrelis/14e339596b89813aa9c37fd1b4e5d9d5 Chrome の OAuth2 認証情報を使用する]か、[https://www.chromium.org/developers/how-tos/api-keys 自分の認証情報を取得する]ことで一時的に利用可能にできますが、免責事項に注意し、この方法を長期的な解決策と考えないでください。
  +
長期的な解決策としては、ブックマークの同期するための [https://www.xbrowsersync.org xbrowsersync] に移行することを検討してください。}}
}}
 
   
 
他の Chromium ベースのブラウザは [[アプリケーション一覧/インターネット#Blink ベース]] を見てください。
 
他の Chromium ベースのブラウザは [[アプリケーション一覧/インターネット#Blink ベース]] を見てください。
30行目: 25行目:
 
Chromium を[[インストール]]できるパッケージがいくつか存在します:
 
Chromium を[[インストール]]できるパッケージがいくつか存在します:
   
* {{Pkg|chromium}} — 安定版;
+
* {{Pkg|chromium}} — 安定版
* {{AUR|chromium-dev}} — 開発版;
+
* {{AUR|chromium-dev}} — 開発版
* {{AUR|chromium-snapshot-bin}} — nightly ビルド.
+
* {{AUR|chromium-snapshot-bin}} — nightly ビルド
   
 
Google Chrome のパッケージは:
 
Google Chrome のパッケージは:
   
* {{AUR|google-chrome}} — 安定版;
+
* {{AUR|google-chrome}} — 安定版
* {{AUR|google-chrome-beta}} — ベータ版;
+
* {{AUR|google-chrome-beta}} — ベータ版
* {{AUR|google-chrome-dev}} — 開発版.
+
* {{AUR|google-chrome-dev}} — 開発版
   
 
{{Note|[https://www.chromium.org/Home/chromium-privacy Chromium プライバシーページ]によると(日本語訳):「Chromium のソースコードをコンパイルすることで利用可能になる Google と通信する機能は、[https://www.google.com/policies/privacy/ Google プライバシーポリシー]に従います。」Google サービスとの統合をすべて避けたい人向けに[[アプリケーション一覧/インターネット#プライバシー重視の chromium 派生版|プライバシー重視の Chromium 派生版]]があります。}}
 
{{Note|[https://www.chromium.org/Home/chromium-privacy Chromium プライバシーページ]によると(日本語訳):「Chromium のソースコードをコンパイルすることで利用可能になる Google と通信する機能は、[https://www.google.com/policies/privacy/ Google プライバシーポリシー]に従います。」Google サービスとの統合をすべて避けたい人向けに[[アプリケーション一覧/インターネット#プライバシー重視の chromium 派生版|プライバシー重視の Chromium 派生版]]があります。}}
50行目: 45行目:
 
=== 証明書 ===
 
=== 証明書 ===
   
Chromium は証明書の管理に [[Network Security Services|NSS]] を使っています。{{ic|chrome://settings/certificates}} で証明書を管理できます。
+
Chromium は証明書の管理に [[Network Security Services]] を使っています。{{ic|chrome://settings/certificates}} で証明書を管理できます。
   
 
=== フラグを永続化する ===
 
=== フラグを永続化する ===
   
{{Note|{{ic|chromium-flags.conf}} ファイルとそれに付随するカスタムランチャースクリプトは Arch Linux の {{Pkg|chromium}} パッケージに固有のものです。{{AUR|google-chrome}} {{AUR|google-chrome-dev}} では、代わりに {{ic|chrome-flags.conf}} {{ic|chrome-dev-flags.conf}} を使てください。}}
+
{{Note|{{ic|chromium-flags.conf}} ファイルとそれに付随するカスタムランチャースクリプトはArch Linux の様々な Chromium パッケージに固有のものです。Google Chrome に対しては、代わりに {{ic|chrome-flags.conf}} (開発版やベータ版の場合は {{ic|chrome-''チャネル名''-flags.conf}}) を使用してください。}}
   
フラグは {{ic|chromium-flags.conf}} ファイル内に記述して {{ic|$HOME/.config/}} に置くことができます。({{ic|$XDG_CONFIG_HOME}} 環境変数を設定した場合は、その環境変数が示すディレクトリの中ファイルを置いてください。)
+
フラグは{{ic|$HOME/.config/}} ({{ic|$XDG_CONFIG_HOME}} 環境変数を設定した場合は、その環境変数が示すディレクトリの中) の {{ic|chromium-flags.conf}} ファイルに記述することができます。グローバルに設定した場合は、{{ic|/etc/}} 内に配置できます
   
 
特別な構文は使用されず、フラグはターミナルに書き込まれるのと同じように定義されます。
 
特別な構文は使用されず、フラグはターミナルに書き込まれるのと同じように定義されます。
   
* 引数は空白で分割され、シェルのクォート規則が適用されますが、それ以上の解析は実行されません。
+
* 引数は空白で分割され、シェルの引用符の規則が適用されますが、それ以上の解析は実行されません。
* ファイル中のどこかが不適切に引用れている場合、致命的なエラーが発生します。
+
* ファイル中のどこかが不適切に引用符によって囲まれている場合、致命的なエラーが発生します。
* フラグは読みやすくするために別の行にることができますが、これは必須ではありません。
+
* フラグは読みやすくするために別の行に分けることができますが、これは必須ではありません。
* ハッシュ記号(#)で始まる行は読み飛ばされます。(これは {{Pkg|chromium}} ランチャースクリプトでのみサポートされており、{{AUR|google-chrome}} パッケージで {{ic|chrome-flags.conf}} を使用している場合は動作しません)
+
* ハッシュ記号 (#) で始まる行は読み飛ばされます。(これは Chromium ランチャースクリプトでのみサポートされており、Google Chrome を使用している場合は動作しません)
   
以下は、フラグ {{ic|--start-maximized --incognito}} を定義している {{ic|chromium-flags.conf}} ファイルの例です
+
以下は、フラグ {{ic|--start-maximized --incognito}} を定義している {{ic|chromium-flags.conf}} ファイルの例です:
   
 
{{hc|~/.config/chromium-flags.conf|
 
{{hc|~/.config/chromium-flags.conf|
  +
# この行は無視されます。
# This line will be ignored.
 
 
--start-maximized
 
--start-maximized
 
--incognito
 
--incognito
75行目: 70行目:
 
=== GPU アクセラレーションを強制する ===
 
=== GPU アクセラレーションを強制する ===
   
  +
少なくとも Chromium 110 から、ほとんどのシステムに対して GPU アクセラレーションがデフォルトで有効化されています。あなたのシステム構成が[https://chromium.googlesource.com/chromium/src/gpu/+/master/config/software_rendering_list.json ブラックリスト]と合致する場合、以下のフラグを[[#フラグを永続化する|永続的な設定]]に[[追加]]する必要があります:
{{Warning|レンダリングブラックリストを無効化すると、ホスト環境のクラッシュを含む不安定な挙動を引き起こすかもしれません。詳細については {{ic|chrome://gpu}} にあるバグレポートを見てください。}}
 
   
  +
{{Warning|レンダリングブラックリストを無効化すると、ホストのクラッシュなどの不安定な挙動を引き起こすかもしれません。詳細については {{ic|chrome://gpu}} にあるバグレポートを見てください。}}
デフォルトでは、Linux 版の Chromium は如何なる GPU アクセラレーションも使用しません。GPU アクセラレーションを強制するには、以下のフラグを[[#フラグを永続化する|永続的な設定]]に[[ヘルプ:読み方#追加, 追記, 作成, 編集|追加]]してください。
 
   
 
{{hc|~/.config/chromium-flags.conf|
 
{{hc|~/.config/chromium-flags.conf|
 
--ignore-gpu-blocklist
 
--ignore-gpu-blocklist
--enable-gpu-rasterization
 
 
--enable-zero-copy
 
--enable-zero-copy
 
}}
 
}}
 
さらに、GPU ワークアラウンドが使用されないようにするために {{ic|--disable-gpu-driver-bug-workarounds}} フラグも渡す必要があるかもしれません。フラグが設定されて利用可能になれば、{{ic|chrome://gpu}} でフラグが "Hardware accelerated" と表示されるはずです。
 
 
{{Out of date|2021年5月にバグフィックスが mesa にマージされました。[https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10850]}}
 
 
mesa 20.1.1 以降、{{ic|--enable-native-gpu-memory-buffers}} は壊れています。[https://gitlab.freedesktop.org/mesa/mesa/-/issues/3119#note_533902]
 
   
 
=== ハードウェアビデオアクセラレーション ===
 
=== ハードウェアビデオアクセラレーション ===
   
 
{{Note|1=<nowiki/>
 
{{Note|1=<nowiki/>
* この機能に対する Chromium や Arch Linux の公式サポートはありません [https://chromium.googlesource.com/chromium/src/+/master/docs/gpu/vaapi.md#vaapi-on-linux]。しかし、公式リポジトリの {{Pkg|chromium}} は VA-API サポートありでコンパイルされており、[https://bbs.archlinux.org/viewtopic.php?id=244031 専用のフォーラムスレッド]で助けを求めることができます。
+
* この機能に対する Chromium や Arch Linux からの公式サポートはありません [https://chromium.googlesource.com/chromium/src/+/master/docs/gpu/vaapi.md#vaapi-on-linux]。しかし、公式リポジトリの {{Pkg|chromium}} は VA-API サポートありでコンパイルされており、[https://bbs.archlinux.org/viewtopic.php?id=244031 専用のフォーラムスレッド]で助けを求めることができます。
* ネイティブ Wayland を使用しているときはVA-API は {{Pkg|chromium}} パッケージで機能ませんが{{AUR|chromium-wayland-vaapi}} 機能します。
+
* Chromium バージョン 122 から{{AUR|chromium-wayland-vaapi}} パッケージもはや必要なくなりました。公式リポジトリの {{Pkg|chromium}} パッケージでネイティブな Wayland バックエンドを使用ている場合VA-API動作します。
  +
* AMD GPU デバイス上では、[https://bugs.chromium.org/p/chromium/issues/detail?id=1445074&q=VAAPI&can=2 Chromium bug 1445074] により VA-API が動作しません。[https://gist.github.com/thubble/235806c4c64b159653de879173d24d9f パッチ]は存在しますが、X11/XWayland ({{ic|1=--ozone-platform-hint=x11}} フラグを使用した場合) でしか動作しません。
 
}}
 
}}
  +
  +
{{ic|1=vainfo}} ([[ハードウェアビデオアクセラレーション#VA-API の確認]] を参照) の出力を見て VA-API のサポートがあることを確認した場合は、ひとまず以下のフラグだけで試してみてください:
  +
  +
{{hc|~/.config/chromium-flags.conf|2=
  +
--enable-features=VaapiVideoDecodeLinuxGL
  +
}}
  +
  +
それ以外の場合は、以下を読んでください。
   
 
Chromium で VA-API サポートを有効にするには:
 
Chromium で VA-API サポートを有効にするには:
   
* 使用中のビデオカード用の適切な VA-API ドライバをインストールしてください。そして、VA-API が有効化されて正常に動作していることを確認してください。[[ハードウェアビデオアクセラレーション]]を見てください。プロプライエタリな NVIDIA サポートは、{{AUR|libva-vdpau-driver-chromium}} か {{AUR|libva-vdpau-driver-vp9-git}} をインストールする必要があります。
+
* 使用中のビデオカード用の適切な VA-API ドライバをインストールしてください。そして、VA-API が有効化されて正常に動作していることを確認してください。[[ハードウェアビデオアクセラレーション]]を見てください。プロプライエタリな NVIDIA サポートは、{{AUR|libva-vdpau-driver-chromium}}{{Broken package link|package not found}} か {{AUR|libva-vdpau-driver-vp9-git}} をインストールする必要があります。
 
* {{ic|1=--enable-features=VaapiVideoDecoder}} オプションを設定してください。ANGLE GL レンダラーと {{Pkg|libva-intel-driver}} を使用している場合は、これで十分です。
 
* {{ic|1=--enable-features=VaapiVideoDecoder}} オプションを設定してください。ANGLE GL レンダラーと {{Pkg|libva-intel-driver}} を使用している場合は、これで十分です。
* ANGLE を使用ている場合、Chromium は古い i965 ドライバを強制的に使用し、{{Pkg|intel-media-driver}} が使用されていると失敗します。回避策として、[[ハードウェアビデオアクセラレーション#VA-API の設定|VA-API を手動で設定]]してください。詳細については [https://github.com/intel/media-driver/issues/818] を見てください。
+
* ANGLE を使用すると、{{Pkg|intel-media-driver}} が使用されている場合、Chromium は古い i965 ドライバを強制的に使用し失敗します。回避策として、[[ハードウェアビデオアクセラレーション#VA-API の設定|VA-API を手動で設定]]してください。詳細については [https://github.com/intel/media-driver/issues/818] を見てください。
* Xorg でシステムの GL レンダラを使用するには、{{ic|1=--use-gl=egl}} か {{ic|1=--use-gl=desktop}} のどちらか一方を使用してください。XWayland では、{{ic|1=--use-gl=egl}} フラグを使用してくださ(現在一部のシステムでカつき発生します{{Bug|67035}})
+
* Xorg か Wayland でシステムの GL レンダラを使用するには、{{ic|1=--use-gl=egl}} を使用してください。Chrome 112 を使用している場合オプョンはもはや必要ないかもしれず、AMD GPU を使用している場合は GPU アセラレーションの機能壊れる場合があります。
* VA-APU がまだ動作しない場合は、{{ic|1=--disable-features=UseChromeOSDirectVideoDecoder}} フラグを試してください。[https://bbs.archlinux.org/viewtopic.php?pid=2021090#p2021090]
+
* VA-API がまだ動ない場合は、{{ic|1=--enable-features=VaapiIgnoreDriverChecks}} か {{ic|1=--disable-features=UseChromeOSDirectVideoDecoder}} フラグを試してください。
  +
* VA-API が Xorg と古い GPU 上でまだ動かない場合は、{{ic|1=LIBVA_DRI3_DISABLE=1}} [[環境変数]]を設定してください [https://www.phoronix.com/news/VA-API-libva-2.18]。
   
 
==== ヒントとテクニック ====
 
==== ヒントとテクニック ====
   
使用中の VA-API ドライバでサポートされているコーデックの動画の視聴がうまく行くかどうか確認するには(''vainfo'' はどのコーデックがサポートされているかを表示しますが、Chromium は VP9 と h264 だけをサポートします):
+
使用中の VA-API ドライバでサポートされているコーデックの動画の視聴がうまく行くかどうか確認するには (''vainfo'' はどのコーデックがサポートされているかを表示しますが、Chromium は VP9 と h264 だけをサポートします):
   
* {{ic|Ctrl+Shift+I}} を押すか、コンテキスト(右クリック)メニューの ''検証'' ボタンを押して DevTools を開いてください
+
* {{ic|Ctrl+Shift+I}} を押すか、コンテキスト (右クリック) メニューの ''検証'' ボタンを押して DevTools を開いてください
 
* Media inspection タブを追加してください: ''ハンバーガーメニュー(︙) > More tools > Media''
 
* Media inspection タブを追加してください: ''ハンバーガーメニュー(︙) > More tools > Media''
 
* 新しく開いた Media タブで、Video Decoder の Hardware decoder の状態を見てください。
 
* 新しく開いた Media タブで、Video Decoder の Hardware decoder の状態を見てください。
116行目: 114行目:
 
十分に大きな動画でテストしてください。バージョン 86 から、デスクトップ版の Chromium は [https://bugs.chromium.org/p/chromium/issues/detail?id=684792 720p よりも大きい動画でしかアクセラレーションを使用しません]。
 
十分に大きな動画でテストしてください。バージョン 86 から、デスクトップ版の Chromium は [https://bugs.chromium.org/p/chromium/issues/detail?id=684792 720p よりも大きい動画でしかアクセラレーションを使用しません]。
   
VP8/VP9 ハードウェアデコードが使用できない Youtube を視聴しているときに CPU 使用率を減らすには、[https://chrome.google.com/webstore/detail/h264ify/aleakchihdccplidncghkekgioiakgal h264ify] [https://chrome.google.com/webstore/detail/enhanced-h264ify/omkfmpieigblcllmkgbflkikinpkodlk enhanced-h264ify] 拡張機能を使用してください。
+
VP8/VP9 ハードウェアデコードが使用できない Youtube 動画を視聴しているときに CPU 使用率を減らすには、[https://chrome.google.com/webstore/detail/h264ify/aleakchihdccplidncghkekgioiakgal h264ify] [https://chrome.google.com/webstore/detail/enhanced-h264ify/omkfmpieigblcllmkgbflkikinpkodlk enhanced-h264ify]、[https://chrome.google.com/webstore/detail/not-yet-av1/dcmllfkiihingappljlkffafnlhdpbai Not yet, AV1][https://bbs.archlinux.org/viewtopic.php?pid=2039884#p2039884] 拡張機能を使用してください。
   
一部のシステム(特に XWayland)では、[[#GPU アクセラレーションを強制する|GPU アクセラレーションを強制する]]必要があるかもしれません。このセクションでの目的に対しては {{ic|--ignore-gpu-blocklist}} のみで十分です。
+
一部のシステム (特に Xwayland) では、[[#GPU アクセラレーションを強制する]] 必要があるかもしれません。このセクションでの目的に対しては {{ic|--ignore-gpu-blocklist}} のみで十分です。
   
 
Skia レンダラーは、現在ビデオデコードアクセラレーションと互換性がないので、無効化する必要があるかもしれません: {{ic|1=--disable-features=UseSkiaRenderer}}
 
Skia レンダラーは、現在ビデオデコードアクセラレーションと互換性がないので、無効化する必要があるかもしれません: {{ic|1=--disable-features=UseSkiaRenderer}}
   
=== PDF ビューアプラグイン ===
+
=== KDE 統合 ===
   
  +
[[Plasma]] との統合は {{Pkg|plasma-browser-integration}} を[[インストール]]してください。詳細は [https://community.kde.org/Plasma/Browser_Integration KDE Plasma Browser Integration] を見てください。
Chromium と Google Chrome には ''Chromium PDF Viewer'' プラグインがバンドルされています。このプラグインを使用したくない場合は、{{ic|chrome://settings/content/pdfDocuments}} 内の ''Open PDFs using a different application'' を確認してください。
 
   
=== Flash Player プラグイン ===
+
=== PDF ビューアプラグイン ===
   
  +
Chromium と Google Chrome には ''Chromium PDF Viewer'' プラグインがバンドルされています。このプラグインを使用したくない場合は、{{ic|chrome://settings/content/pdfDocuments}} 内の ''Download PDFs'' を確認してください。
Flash Player のサポートは Chromium 88 で削除されました。[https://www.chromium.org/flash-roadmap#TOC-Flash-Support-Removed-from-Chromium-Target:-Chrome-88---Jan-2021-]
 
   
=== XWayland での動作 ===
+
=== Xwayland での動作 ===
   
NVIDIA 社のプロプライエタリドライバを使用している場合、XWayland 上で Chromium を実行すると、GPU プロセスが時々クラッシュすることがあります。GPU プロセスがクラッシュしないようにするには、以下のフラグを追加してください
+
NVIDIA 社のプロプライエタリドライバを使用している場合、Xwayland 上で Chromium を実行すると、GPU プロセスが時々クラッシュすることがあります。GPU プロセスがクラッシュしないようにするには、以下のフラグを追加してください:
   
 
--use-angle=vulkan --use-cmd-decoder=passthrough
 
--use-angle=vulkan --use-cmd-decoder=passthrough
   
{{Note|これはすべての XWayland 関連のクラッシュを防止するわけではありません。}}
+
{{Note|これはすべての Xwayland 関連のクラッシュを防止するわけではありません。}}
   
 
=== ネイティブ Wayland サポート ===
 
=== ネイティブ Wayland サポート ===
144行目: 142行目:
 
--ozone-platform-hint=auto
 
--ozone-platform-hint=auto
   
  +
これがうまくいかない場合 (例えば [[Weston]] バージョン 106 以下の場合)、次を使ってください:
永続的な設定については、[[#フラグを永続化する]]を参照してください。このフラグは[[#chrome://_URLs|ブラウザのフラグメニュー]]からも設定できます。
 
  +
  +
--ozone-platform=wayland
  +
  +
永続的な設定については [[#フラグを永続化する]] を参照してください。このフラグは[[#chrome:// URL|ブラウザのフラグメニュー]]からも設定できます。
   
 
この設定により、wayland セッション内では wayland Ozone バックエンドが選択されます。なので、X11 と Wayland を頻繁に切り替える場合でも、デスクトップエントリは一つだけで大丈夫です。
 
この設定により、wayland セッション内では wayland Ozone バックエンドが選択されます。なので、X11 と Wayland を頻繁に切り替える場合でも、デスクトップエントリは一つだけで大丈夫です。
  +
  +
{{Note|ブラウザのフラグメニューで "ozone-platform-hint" を変更すると、ブラウザが再起動ボタンを表示させます。しかし、これは使用しないでください。ブラウザは、フラグが変更される前のプラットフォームで再起動されるからです。ブラウザを閉じて、その後、再び開く必要があります。}}
  +
  +
追加で、[https://bugs.chromium.org/p/chromium/issues/detail?id=1422087 インプットメソッドの問題]が発生している場合は、新しい GTK を強制すると良いかもしれません:
  +
  +
--gtk-version=4
  +
  +
==== ナビゲーションのタッチパッドジェスチャ ====
  +
  +
2本の指でスワイプすると戻ったり進んだりする機能を有効にするには、以下のフラグを使用してください:
  +
  +
--ozone-platform-hint=auto --enable-features=TouchpadOverscrollHistoryNavigation
   
 
== ヒントとテクニック ==
 
== ヒントとテクニック ==
   
  +
特に注意書きがなければ以下のヒントとテクニックは Chromium と Chrome の両方で使うことができます。
次の記事を参照してください: [[Chromium 設定]]
 
  +
  +
=== ブラウズのエクスペリエンス ===
  +
  +
==== chrome:// URL ====
  +
  +
多くの調整は Chrome の URL からアクセスすることができます。完全なリストは '''chrome://chrome-urls''' を参照してください。
  +
  +
* '''chrome://flags''' - WebGL などの実験的な機能や GPU によるウェブページのレンダリングなどにアクセスできます。
  +
* '''chrome://extensions''' - 現在使用している Chromium 拡張を表示・有効化・無効化。
  +
* '''chrome://gpu''' - 様々な GPU オプションの状態。
  +
* '''chrome://sandbox''' - サンドボックスの状態を表示。
  +
* '''chrome://version''' - バージョンや {{ic|/usr/bin/chromium}} を実行するときに使われたスイッチを表示。
  +
  +
Chromium のスイッチ (コマンドラインパラメータ) の自動的に更新される完全なリストが [https://peter.sh/experiments/chromium-command-line-switches/ こちら] にあります。
  +
  +
==== Chromium タスクマネージャ ====
  +
  +
Shift+ESC でブラウザのタスクマネージャを立ち上げることができます。メモリや CPU、ネットワークの使用量が閲覧可能です。
  +
  +
==== Chromium が Preferences ファイルを上書き/オーバーライドしてしまう ====
  +
  +
Google アカウントの同期を有効にしている場合、{{ic|~/.config/chromium/Default/Preferences}} 下の Preferences ファイルに直接編集を加えていても Chromium によって上書きされてしまいます。上書きされないようにするには、{{ic|--disable-sync-preferences}} スイッチを付けて Chromium を起動してください:
  +
$ chromium --disable-sync-preferences
  +
  +
デスクトップ環境のログイン時にバックグラウンドで Chromium を起動する場合、デスクトップ環境から使用するコマンドを以下のようにしてください:
  +
$ chromium --disable-sync-preferences --no-startup-window
  +
  +
==== 検索エンジン ====
  +
  +
[https://wiki.archlinux.org wiki.archlinux.org] や [https://en.wikipedia.org wikipedia.org] などのウェブサイトは検索を実行してから ''Settings > Search'' を選択して ''Manage search engines..'' ボタンをクリックすることで簡単に検索できるように設定できます。エントリを "Edit" してキーワードを '''w''' などに変更してください (ショートカットは自由に決めて下さい)。これでアドレスバーに "'''w arch linux'''" と入力するだけで "Arch Linux" で検索できるようになります。
  +
  +
{{Note|URL バーに何か入力すると自動的に Google 検索が使われます。また、ハードコードされたキーワードトリガとして '''?''' プレフィックスが使えます。}}
  +
  +
==== Tmpfs ====
  +
  +
===== tmpfs にキャッシュ =====
  +
  +
{{Note|Chromium はブラウザのプロファイルディレクトリとキャッシュディレクトリを分離して保存します。}}
  +
  +
物理ディスクに対する Chromium のキャッシュの書き込みを制限したい場合、{{ic|--disk-cache-dir}} フラグでキャッシュの書き込み先を変更することができます:
  +
  +
$ chromium --disk-cache-dir="$XDG_RUNTIME_DIR/chromium-cache"
  +
  +
キャッシュは一時的になり、再起動したりハードロックすると'''消えます'''。もしくは、tmpfs 領域を {{ic|/etc/fstab}} 内でセットアップすることもできます:
  +
  +
{{hc|/etc/fstab|2=
  +
tmpfs /home/''username''/.cache tmpfs noatime,nodev,nosuid,size=400M 0 0
  +
}}
  +
  +
または、{{ic|/tmp}} へのシンボリックリンクを作成してください。以下のコマンドを実行する前に、Chromium のキャッシュフォルダは削除しておいてください:
  +
  +
$ ln -s /tmp /home/''ユーザ名''/.cache/chromium
  +
  +
===== tmpfs にプロファイル =====
  +
  +
{{ic|/tmp}} や {{ic|/dev/shm}} などの [[Wikipedia:ja:Tmpfs|tmpfs]] ファイルシステムにプロファイルを保存することで、プロファイル全体が RAM 内に保存されるので、Chromium の応答性が改善されます。
  +
  +
{{Pkg|profile-sync-daemon}} などの、プロファイルを動的に管理するスクリプトを使うことで信頼性と使いやすさを最大限高めることができます。profile-sync-daemon はブラウザプロファイルのディレクトリのシンボリックリンクを作成し、定期的にメモリと同期をとります。詳細については [[Profile-sync-daemon]] の記事を参照して下さい。
  +
  +
==== 新しいブラウザインスタンスを起動 ====
  +
  +
ブラウザを起動すると、最初に同じプロファイルを使っているインスタンスが他にないか確認されます。存在する場合、新しいウィンドウは既存のインスタンスに関連付けられます。以下のように {{ic|--user-data-dir}} パラメータを使って起動することで別のプロファイルでブラウザを起動できます:
  +
  +
$ chromium --user-data-dir=''/path/to/some/directory''
  +
  +
{{Note|ユーザーデータのデフォルトパスは {{ic|~/.config/chromium/}} です。}}
  +
  +
==== torrent クライアントで *.torrent ファイルやマグネットリンクを直接開く ====
  +
  +
デフォルトでは Chromium は {{ic|*.torrent}} ファイルを直接ダウンロードするため、ファイルを torrent クライアントで開くには画面左下の通知をクリックする必要があります。以下の方法で毎回クリックする手間を省けます:
  +
  +
* {{ic|*.torrent}} ファイルをダウンロード。
  +
* 画面左下に表示される通知を右クリック。
  +
* "Always Open Files of This Type" チェックボックスにチェックを入れる。
  +
  +
デフォルトの関連付けの変更については [[xdg-open]] を見てください。
  +
  +
==== タッチスクリーンデバイスでタッチスクロール ====
  +
  +
使用するタッチデバイスを指定する必要があります。タッチスクリーンデバイスを {{ic|xinput list}} で確認して、{{ic|1=--touch-devices='''x'''}} パラメータを付けて Chromium を起動してください ("'''x'''" はデバイスの id に置き換えてください)。
  +
{{Note|スレーブポインタのデバイスは使えません。マスターポインタの ID を使ってください。}}
  +
  +
==== メモリの使用量を減らす ====
  +
  +
デフォルトでは、Chromium は開いているウェブサイトの数だけ OS プロセスを作成します [https://www.chromium.org/developers/design-documents/process-models#Supported_Models]。Chromium の起動時にコマンドラインスイッチを指定することで挙動を変更することが可能です。
  +
  +
例えば、全てのウェブサイトでひとつのプロセスを共有するには:
  +
  +
$ chromium --process-per-site
  +
  +
シングルプロセスモデルを使うには:
  +
  +
$ chromium --single-process
  +
  +
{{Warning|シングルプロセスモデルは安全でなく他のモデルに存在しないバグが含まれている可能性があるため推奨されていません [https://www.chromium.org/developers/design-documents/process-models#TOC-Single-process]。}}
  +
  +
さらに [https://chrome.google.com/webstore/detail/tab-suspender/fiabciakcmgepblmdkmemdbbkilneeeh?hl=en Tab Suspender] や [https://chrome.google.com/webstore/detail/onetab/chphlpgkkbolifaimnlloiipkdnihall?hl=en OneTab] などの拡張を使うことでアクティブでないタブを停止・保存することができます。
  +
  +
==== ユーザーエージェント ====
  +
  +
Chromium の起動時に {{Ic|<nowiki>--user-agent="[string]"</nowiki>}} パラメータを指定することでユーザーエージェントは任意に変更することができます。
  +
  +
==== DOM Distiller ====
  +
  +
Chromium には Firefox にあるのと似たレンダリングモードが存在します。これは DOM Distiller と呼ばれ、[https://github.com/chromium/dom-distiller オープンソースプロジェクト]です。
  +
デフォルトでは無効化されていますが、{{Ic|chrome://flags/#enable-reader-mode}} フラグを使用することにより有効化できます。このフラグは[[#フラグを永続化する|永続化]]させることができます。
  +
DOM Distiller は、ページのコンテンツから不要なものを取り除くことでより良いレンダリングエクスペリエンスを提供するだけでなく、印刷用にページを単純化してくれます。後者のチェックボックスオプションが印刷ダイアログから削除されたものの、不要なものを取り除いたページを印刷することは依然として可能です。これらには、基本的には同じ効果があります。
  +
  +
フラグを有効化すると、ウェブサイトから不要なものを取り除くことができると Chromium が判断したときに、"Enter reader mode" メニューアイテムとアイコンがアドレスバーに出現します。
  +
  +
==== 特定の GPU の使用を強制する ====
  +
  +
GPU が複数ある環境の場合、Chromium はレンダリングに使用する GPU (ディスクリートや統合 GPU) を自動的に検出します。99% は問題ありませんが、誤った GPU が選択された場合 (VFIO GPU パススルー環境でディスクリートグラフィックが選ばれるなど)、{{ic|chrome://gpu}} は GPU プロセスを初期化できないというエラーを吐きます。同じページの '''Driver Information''' には複数の GPU が表示されます (GPU0, GPU1, ...)。ユーザーフレンドリな方法で GPU を切り替えることはできませんが、デバイス/ベンダー ID を使って Chromium のフラグで使用する GPU を設定できます:
  +
  +
$ chromium --gpu-testing-vendor-id=0x8086 --gpu-testing-device-id=0x1912
  +
  +
{{ic|0x8086}} と {{ic|0x1912}} は使用したい GPU の ID に置き換えてください ({{ic|chrome://gpu}} ページで確認できます)。
  +
  +
==== Firefox からブックマークをインポート ====
  +
  +
[[Firefox]] から Chromium にブックマークをインポートすることができます。
  +
  +
Chromium で {{ic|chrome://settings/importData}} を開いてください。
  +
  +
コンピュータに Firefox がインストールされている場合、直接 Firefox からブックマークなどをインポートできます。
  +
  +
'''Mozilla Firefox''' を選択してください。不要なアイテムのチェックは外してかまいません。'''Import''' をクリックしてから '''Done''' をクリックすればインポートは完了です。
  +
  +
{{note|Chromium でまだ何もブックマークを作成していない場合、ブックマークバーにブックマークが表示されます。既にブックマークが存在する場合、ブックマークは "Imported From Firefox" というラベルが付いた新しいフォルダに保存されます。}}
  +
  +
他の PC からブックマークをインポートする場合、先に Firefox からブックマークをエクスポートする必要があります。
  +
  +
Firefox で {{ic|Ctrl+Shift+o}} ''Import and Backup > Export Bookmarks To HTML'' を選択してください
  +
  +
後の作業は同じです。{{ic|chrome://settings/importData}} を開いてください。ただし今度は '''From''' ドロップダウンメニューで '''Bookmarks HTML File''' を選択して '''Choose File''' ボタンをクリックしてブックマークファイルをアップロードします。
  +
  +
後の作業は同じです。{{ic|chrome://settings/importData}} を開いてください。ただし今度は '''From''' ドロップダウンメニューで '''Bookmarks HTML File''' を選択して '''Choose File''' ボタンをクリックしてブックマークファイルをアップロードします。
  +
  +
==== ネイティブ通知の有効化 ====
  +
  +
{{ic|chrome://flags#enable-system-notifications}} を開いて、''Enabled'' を選択してください。
  +
  +
==== U2F 認証 ====
  +
  +
{{Pkg|libfido2}} ライブラリをインストールしてください。このパッケージは、(通常) ユーザとして [[U2F]] キーにアクセスできるようにするために必要な udev ルールを提供します。
  +
U2F キーはデフォルトでは root としてしかアクセスできないので、これらのルールが無いと Chromium はエラーを吐きます。
  +
  +
==== テーマ ====
  +
  +
Chromium に現在の GTK テーマをブラウザメニューやコントロールで使用させることができます。{{ic|chrome://settings/appearance}} で ''Use GTK'' を押してください。
  +
  +
==== ダークモード ====
  +
  +
Chromium 114 から、ユーザの優先外観を自動的に決定するために [[XDG デスクトップ ポータル]] が使用されるようになりました ([https://bugs.chromium.org/p/chromium/issues/detail?id=998903 issue])。よって、ダークモードの有効化とユーザの GTK テーマが切り離されました。この設定は、CSS、JavaScript、設定、そして Dev-Tools の ''prefers-color-scheme'' に適用されます。
  +
  +
優先外観を変更する方法は、XDG Desktop Portal バックエンドに依存します。例えば、多くのデスクトップ環境はそれぞれの外観設定インターフェイスにモードを切り替えるスイッチを提供しています。または、例えば {{Pkg|xdg-desktop-portal-gtk}} 場合は、以下のコマンドを使って優先モードを {{ic|prefer-light}} や {{ic|prefer-dark}}、{{ic|default}} に設定します:
  +
  +
$ dconf write /org/gnome/desktop/interface/color-scheme \'prefer-dark\'
  +
  +
{{Pkg|dbus}} の {{ic|dbus-send}} を使用することで、現在の優先外観をクエリできます ([https://flatpak.github.io/xdg-desktop-portal/#gdbus-org.freedesktop.portal.Settings ドキュメント]):
  +
  +
$ dbus-send --session --print-reply=literal --dest=org.freedesktop.portal.Desktop /org/freedesktop/portal/desktop org.freedesktop.portal.Settings.Read string:org.freedesktop.appearance string:color-scheme | tr -s ' ' | cut -d ' ' -f 5
  +
  +
* '''0''': 設定無し
  +
* '''1''': ダークモードを優先
  +
* '''2''': ライトモードを優先
  +
  +
===== Chromium 114 より前 =====
  +
  +
ダークモードを有効化し、ダークテーマ (通常、incognito モードで使用されます) を有効化するには、以下のフラグを[[#フラグを永続化する|永続的な設定]]に[[追加]]してください:
  +
  +
{{hc|1=~/.config/chromium-flags.conf|2=
  +
--force-dark-mode
  +
--enable-features=WebUIDarkMode
  +
}}
  +
  +
==== サイドパネルを有効化する ====
  +
  +
サイドパネルは {{ic|chrome://flags}} から有効化できます。'''Side panel''' を有効化/無効化することができ、'''Side panel border''' や '''Side panel drag and drop''' といったオプションを変更できます。
  +
  +
=== プロファイルのメンテナンス ===
  +
  +
Chromium は [[Sqlite]] データベースを使用して履歴やお気に入りを管理しています。Sqlite データベースは使っているうちに断片化していきます。しかしながら、データベースをチェックしたり最適化するプロセスが存在しないため、断片化によって段々とパフォーマンスに影響が出て来ます。デフラグを行ってデータベースから未使用領域を削除することで、起動時間やブックマークや履歴に関連する作業を素早く実行することができます。
  +
  +
{{Pkg|profile-cleaner}} と {{AUR|browser-vacuum}} でメンテナンスができます。
  +
  +
=== セキュリティ ===
  +
  +
==== JIT を無効化 ====
  +
  +
[https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/ JS エンジンにおけるセキュリティ上の脆弱性のうち約半分]は JIT に原因があります。パフォーマンスが劣化しますが、{{ic|1=--js-flags=--jitless}} フラグを使用することで、JavaScript からネイティブなコードへの just-in-time コンパイルを無効化できます。
  +
  +
==== WebRTC ====
  +
  +
WebRTC は JavaScript を使用する通信プロトコルですが、VPN を使っている場合でもマシンの IP アドレスやハードウェアのハッシュ値が漏洩する可能性があります。VPN ソフトウェアによってはスクリプトの実行が阻止されることもありますが、プロトコルを直接ブロックしてしまう方が安全です。2016年10月現在、デスクトップ版 Chromium で WebRTC を無効化する方法はありませんが、ローカル IP アドレスの漏洩を阻止する拡張が存在します 。そのひとつがこの[https://chrome.google.com/webstore/detail/webrtc-network-limiter/npeicpdbkakmehahjeeohfdhnlpdklia 拡張機能]です。
  +
  +
WebRTC は https://browserleaks.com/webrtc でテストできます。
  +
  +
{{Warning|IP の漏洩は防げても、Chromium はユニークなハッシュを送信しており、それを止める方法はありません。詳しくは https://www.browserleaks.com/webrtc#webrtc-disable を読んでください。}}
  +
  +
==== SSL 証明書 ====
  +
  +
Chromium には SSL 証明書マネージャが存在しません。Chromium は NSS の共有データベース {{ic|~/.pki/nssdb}} を使用しています。データベースに SSL 証明書を追加するには、シェルを使う必要があります。
  +
  +
===== 自己署名証明書の CAcert 証明書を追加 =====
  +
  +
CAcerts を取得して {{ic|nssdb}} を作成してください (存在しない場合)。作成するには {{Pkg|nss}} パッケージをインストールして以下を実行する必要があります:
  +
  +
$ mkdir -p $HOME/.pki/nssdb
  +
$ cd $HOME/.pki/nssdb
  +
$ certutil -N -d sql:.
  +
  +
$ curl -k -o "cacert-root.crt" "http://www.cacert.org/certs/root.crt"
  +
$ curl -k -o "cacert-class3.crt" "http://www.cacert.org/certs/class3.crt"
  +
$ certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "CAcert.org" -i cacert-root.crt
  +
$ certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "CAcert.org Class 3" -i cacert-class3.crt
  +
  +
{{Note|データベースのパスワードを作成していない場合、作成する必要があります。}}
  +
  +
これでユーザーは手動で自己署名証明書をインポートできるようになります。
  +
  +
===== 例 1: シェルスクリプトを使って TomatoUSB から証明書を分離 =====
  +
  +
以下は証明書を展開してユーザーの {{ic|nssdb}} に追加するシンプルなスクリプトです:
  +
  +
#!/bin/sh
  +
#
  +
# usage: import-cert.sh remote.host.name [port]
  +
#
  +
REMHOST=$1
  +
REMPORT=${2:-443}
  +
exec 6>&1
  +
exec > $REMHOST
  +
echo | openssl s_client -connect ${REMHOST}:${REMPORT} 2>&1 |sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p'
  +
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n "$REMHOST" -i $REMHOST
  +
exec 1>&6 6>&-
  +
  +
使用方法はコメント化されている行を見てください。
  +
  +
参照:
  +
*https://web.archive.org/web/20180718193807/https://blog.avirtualhome.com/adding-ssl-certificates-to-google-chrome-linux-ubuntu
  +
*https://chromium.googlesource.com/chromium/src/+/master/docs/linux/cert_management.md
  +
  +
===== 例 2: Firefox を使って TomatoUSB から証明書を分離 =====
  +
  +
{{Pkg|firefox}} ブラウザを使って証明書をファイルに保存してデータベースに手動でインポートすることができます。
  +
  +
Firefox を使って:
  +
#取得先の URL を開く。
  +
#"This Connection is Untrusted" 警告画面が表示されたら ''I understand the Risks > Add Exception...'' をクリック。
  +
#''View > Details > Export'' をクリックしてどこか一時的な場所に証明書を保存 (以下の例では {{ic|/tmp/easy.pem}} を使用)。
  +
  +
Chromium で使用する証明書をインポート:
  +
$ certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "easy" -i /tmp/easy.pem
  +
  +
{{Note|名前は証明書にあわせて変更してください。上記の例では "easy" が証明書の名前です。}}
  +
  +
参照:
  +
*https://sahissam.blogspot.com/2012/06/new-ssl-certificates-for-tomatousb-and.html
  +
  +
==== Canvas Fingerprinting ====
  +
  +
Canvas Fingerprinting は HTML5 の canvas のレンダリング結果の差異を使ってユーザーを識別する技術です。{{ic|--disable-reading-from-canvas}} フラグを使うことで Canvas Fingerprinting を使えないようにすることができます。
  +
  +
フラグが機能しているかどうか確認するには [https://panopticlick.eff.org こちらのテスト] を実行して "hash of canvas fingerprint" の結果を確認してください。
  +
  +
{{Note|1=<nowiki></nowiki>
  +
* 一部の拡張機能は canvas からの読み込みを必要としており、{{ic|--disable-reading-from-canvas}} を設定すると壊れる場合があります。
  +
* YouTube プレイヤーは canvas からの読み込みができないと正しく動作しません。[https://github.com/qutebrowser/qutebrowser/issues/5345][https://bbs.archlinux.org/viewtopic.php?pid=1907406]
  +
}}
  +
  +
==== プライバシー拡張 ====
  +
  +
[[ブラウザ拡張機能#プライバシー]] を参照してください。
  +
  +
{{Tip|あまりにも多くの拡張機能をインストールしてしまうと、ツールバーのスペースを圧迫してしまうかもしれません。ユーザと対話しない拡張機能 (例: [https://chrome.google.com/webstore/detail/gcbommkclmclpchllfjekcdonpmejbdp HTTPS Everywhere]{{Dead link|2023|04|22|status=404}}) は、拡張機能を右クリックして ''Hide in Chromium menu'' を選択することで隠すことができます。}}
  +
  +
==== Do Not Track ====
  +
  +
[[wikipedia:Do Not Track|Do Not Track]] を有効化するには、{{ic|chrome://settings}} を開き、''Advanced'' まで下へスクロールして、''Privacy and security'' の ''Send a "Do Not Track" request with your browsing traffic'' にチェックを入れてください。
  +
  +
==== 特定のパスワードストアを強制する ====
  +
  +
Chromium はパスワードストアを使ってパスワードと (cookie の値を暗号化するのに使われる) ''Chromium Safe Storage'' キーを保存します [https://codereview.chromium.org/24734007]。
  +
  +
デフォルトでは Chromium は使用するパスワードストアを自動的に認識しますが、デスクトップ環境やウィンドウマネージャを変えたときにパスワードと cookie が失われてしまう可能性があります。
  +
  +
{{ic|--password-store}} フラグで以下のどれかの値を指定して Chromium を起動することで特定のパスワードストアを強制的に使うようにすることができます [https://chromium.googlesource.com/chromium/src/+/master/docs/linux/password_storage.md]:
  +
  +
* {{ic|gnome-libsecret}} - [https://gitlab.gnome.org/GNOME/libsecret libsecret] 経由で [[Gnome Keyring]] を使用
  +
* {{ic|kwallet}} - [[KDE Wallet]] を使用
  +
* {{ic|basic}} - {{ic|Login Data}} ファイルにプレーンテキストとしてパスワードと cookie の暗号鍵を保存
  +
* {{ic|detect}} - デフォルトの自動認識
  +
  +
例えば、Gnome Keyring を使うようにするには {{ic|1=--password-store=gnome-libsecret}} を付けてください。永続化する方法は [[#フラグを永続化する]] を参照。
  +
  +
他のデスクトップ環境のパスワードストアを使う場合、自動的にアンロックされるように設定すると良いでしょう。[[GNOME/Keyring#キーリングを使用する]] や [[KDE Wallet#ログイン時に KDE ウォレットを自動的にアンロック]] を参照。
   
 
== トラブルシューティング ==
 
== トラブルシューティング ==
160行目: 471行目:
 
==== タブのフォントサイズが大きすぎる ====
 
==== タブのフォントサイズが大きすぎる ====
   
[[GTK#設定]] で言及されているように、Chromium は GTK の設定を使用します。Chromium は設定されると、タブに {{ic|gtk-font-name}} の設定を使用します(これにより、ウインドウのフォントサイズと合わなくなる場合があります)。この設定を上書きするには、{{ic|1=--force-device-scale-factor=1.0}} を使用してください。
+
[[GTK#設定]] で言及されているように、Chromium は GTK の設定を使用します。Chromium はタブに {{ic|gtk-font-name}} の設定を使用します (これにより、ウインドウのフォントサイズと合わなくなる場合があります)。この設定を上書きするには、{{ic|1=--force-device-scale-factor=1.0}} を使用してください。
   
 
=== WebGL ===
 
=== WebGL ===
168行目: 479行目:
 
[[Bumblebee]] で Chromium を使っている場合、GPU のサンドボックスによって WebGL がクラッシュすることがあります。このようなときは、{{ic|optirun chromium --disable-gpu-sandbox}} で GPU のサンドボックスを無効にできます。
 
[[Bumblebee]] で Chromium を使っている場合、GPU のサンドボックスによって WebGL がクラッシュすることがあります。このようなときは、{{ic|optirun chromium --disable-gpu-sandbox}} で GPU のサンドボックスを無効にできます。
   
上記方法で問題が解決しない場合、{{ic|chrome://gpu/}} のデバッグ情報を見てさい。
+
WebGL サポートデバッグ情報は {{ic|chrome://gpu/}} を見てください。
   
Chromium はユーザプロファイルに GPU に関する誤った情報を保存することがあります。例えば、Optimus を使って Nvidia カードから Intel カードに切り替えた場合、たとえ Nvidia カードや primusrun/optirun を使用していなくても、{{ic|chrome://gpu}} に Nvidia カードが表示されます。異なるユーザデータディレクトリを使って実行することにより(例: {{ic|1=chromium --user-data-dir=$(mktemp -d)}})、この問題を解決できる場合があります。持続的な解決策として、{{ic|~/.config/chromium/Local\ State}} を削除して GPU の情報をリセットできます。
+
Chromium はユーザプロファイルに GPU に関する誤った情報を保存することがあります。例えば、Optimus を使って Nvidia カードから Intel カードに切り替えた場合、たとえ Nvidia カードや primusrun/optirun を使用していなくても、{{ic|chrome://gpu}} に Nvidia カードが表示されます。異なるユーザデータディレクトリを使って実行することにより (例: {{ic|1=chromium --user-data-dir=$(mktemp -d)}})、この問題を解決できる場合があります。持続的な解決策として、{{ic|~/.config/chromium/Local\ State}} を削除して GPU の情報をリセットできます。
   
 
=== HiDPI の描画がおかしい ===
 
=== HiDPI の描画がおかしい ===
184行目: 495行目:
 
[[GNOME/Keyring#パスワードが保存されない]] を見てください。
 
[[GNOME/Keyring#パスワードが保存されない]] を見てください。
   
=== ネットワーク内の Chromecasts が検出されない ===
+
=== ネットワーク内の Chromecast が検出されない ===
   
 
{{ic|chrome://flags/#load-media-router-component-extension}} 内の Media Router Component Extension を有効化する必要があります。
 
{{ic|chrome://flags/#load-media-router-component-extension}} 内の Media Router Component Extension を有効化する必要があります。
190行目: 501行目:
 
=== パスワードだけが同期されない ===
 
=== パスワードだけが同期されない ===
   
同期がパスワードに対してだけ機能しない場合({{ic|chrome://sync-internals/}} で確認できます)、プロファイルのログインデータを削除してください:
+
同期がパスワードに対してだけ機能しない場合 ({{ic|chrome://sync-internals/}} で確認できます)、プロファイルのログインデータを削除してください:
   
 
$ rm ~/.config/chromium/Default/Login\ Data*
 
$ rm ~/.config/chromium/Default/Login\ Data*
200行目: 511行目:
 
Chromium を起動したときにターミナルに {{ic|Failed to decrypt token for service AccountId-*}} というメッセージが表示される場合、Chromium が間違ったパスワード保存バックエンドを使おうとしたのかもしれません。これはデスクトップ環境を切り替えたときに起こりえます。
 
Chromium を起動したときにターミナルに {{ic|Failed to decrypt token for service AccountId-*}} というメッセージが表示される場合、Chromium が間違ったパスワード保存バックエンドを使おうとしたのかもしれません。これはデスクトップ環境を切り替えたときに起こりえます。
   
[[Chromium 設#使用するパスワードストアの設定]] を見てください。
+
[[#特パスワードストアを強制する]] を見てください。
   
 
=== Google Sync を有効化すると起動時に固まる ===
 
=== Google Sync を有効化すると起動時に固まる ===
206行目: 517行目:
 
{{ic|1=--password-store=basic}} フラグを使うか、他の適切なパスワードストアを使って Chrome を起動してみてください。
 
{{ic|1=--password-store=basic}} フラグを使うか、他の適切なパスワードストアを使って Chrome を起動してみてください。
   
[[Chromium 設#使用するパスワードストアの設定]] を見てください。
+
[[#特パスワードストアを強制する]] を見てください。
   
 
=== デフォルトのブラウザとして設定するかを毎回尋ねてくる ===
 
=== デフォルトのブラウザとして設定するかを毎回尋ねてくる ===
   
  +
KDE を使用していて、一度 Firefox を (Firefox 内のボタンをクリックして) デフォルトのブラウザとして設定したことがある場合、たとえ "デフォルトに設定" ボタンをクリックしたとしても 、Chromium を起動するたびに毎回 Chromium をデフォルトのブラウザとして設定するかを尋ねられることがあります。
If you are using KDE and have once set Firefox as the default browser (by clicking the button inside Firefox), you might find Chromium asks to be set as the default browser every time it starts, even if you click the "set as default" button.
 
   
Chromium checks for this status by running {{ic|xdg-settings check default-web-browser chromium.desktop}}. If the output is "no", it is not considering itself to be the default browser. The script {{ic|xdg-settings}} checks for the following MIME associations and expect all of them to be {{ic|chromium.desktop}}:
+
Chromium {{ic|xdg-settings check default-web-browser chromium.desktop}} を実行することで chromium がデフォルトのブラウザであるかを確認します。そのコマンドの出力が "no" である場合、chromium がデフォルトのブラウザでないと認識します。{{ic|xdg-settings}} スクリプトは以下の MIME の関連付けを確認し、すべてが {{ic|chromium.desktop}} であることを期待します:
   
 
{{bc|
 
{{bc|
219行目: 530行目:
 
text/html}}
 
text/html}}
   
  +
これを直すには、''システム設定 > アプリケーション > デフォルトのアプリケーション > Web browser'' を開いて、Chormium を指定してください。そして、{{ic|text/html}} の MIME の関連付けを設定してください:
To fix it, go to ''System settings > Applications > Default applications > Web browser'' and choose Chromium. Then, set the MIME association for {{ic|text/html}}:
 
   
 
$ xdg-mime default chromium.desktop text/html
 
$ xdg-mime default chromium.desktop text/html
   
Finally, [[XDG_MIME_Applications#New_MIME_types|update the MIME database]]:
+
最後に、[[XDG_MIME_Applications#新しい MIME タイプ|MIME のデータベースを更新]]してください:
   
 
$ update-mime-database ~/.local/share/mime
 
$ update-mime-database ~/.local/share/mime
231行目: 542行目:
 
2020年04月20日以降、Web 開発用に {{ic|1=--remote-debugging-port=9222}} フラグを指定して chromium を実行すると、 Google アカウントにログインできません。このフラグを一時的に無効にしてログインすると、再び有効にできます。
 
2020年04月20日以降、Web 開発用に {{ic|1=--remote-debugging-port=9222}} フラグを指定して chromium を実行すると、 Google アカウントにログインできません。このフラグを一時的に無効にしてログインすると、再び有効にできます。
   
=== 144Hz + 60Hz モニタを使うと Chromium 60fpsとまる ===
+
=== 60 FPS より高いリフレッシュレートのディスプレイを使用しているのに Chromium は 60 FPS描画される ===
   
  +
一般的な問題に関する上流のバグレポートは[https://bugs.chromium.org/p/chromium/issues/detail?id=1200167 ここ]にあり、その他の回避策が見つかるかもしれません。また、混合リフレッシュレートに関する問題は[https://bugs.chromium.org/p/chromium/issues/detail?id=1138080 ここ]で報告されています。
この問題に対する適切な回避策があります。以下のフラグを[[#フラグを永続化する|永続的な設定]]に[[ヘルプ:読み方#追加, 追記, 作成, 編集|追加]]してください:
 
  +
  +
==== 混合リフレッシュレート ====
  +
  +
{{Tip|この問題は Wayland バックエンドには存在しない可能性があります。要検証。}}
  +
  +
混合リフレッシュレート (例えば 60 Hz と 144 Hz) のあるディスプレイを使用している場合、Chromium は最も低いリフレッシュレートのディスプレイに合わせて描画するかもしれません。
  +
  +
この問題に対する適切な回避策があります。以下のフラグを[[#フラグを永続化する|永続的な設定]]に[[追加]]してください:
   
 
{{hc|1=~/.config/chromium-flags.conf|2=
 
{{hc|1=~/.config/chromium-flags.conf|2=
241行目: 560行目:
 
}}
 
}}
   
これにより、コンポジタが 144fps でリフレッシュする場合、144Hz ディスプレイ上で使用すると Chromium が 144fps で実行されます。これにより、少しカクつくかもしれないことを留意してください {{Bug|67035}}。しかし、60 fps で止まるよりはマシです。
+
これにより、コンポジタが 144 FPS でリフレッシュする場合、144Hz ディスプレイ上で使用すると Chromium が 144 FPS で実行されます。これにより、少しカクつくかもしれないことを留意してください {{Bug|67035}}。しかし、60 FPS で止まるよりはマシです。
   
=== Chromium のスロール速度が遅い ===
+
==== Wayland バッエンドで実行する ====
   
  +
この問題を引き起こす Wayland コンポジタ固有の問題があるようです。
Mouse whell scrolling in chromium and electron based applications may be too slow for daily usage. Here are some solutions.
 
   
  +
特に、Plasma 5 は環境によらず 60Hz で描画されるようですが、Plasma 6 (この記事の時点では rc1) では Chromium が高いリフレッシュレートでも問題なく動作します。
[[Libinput#Mouse wheel scrolling speed scaling]] injects {{ic|libinput_event_pointer_get_axis_value}} function in libinput and provides an interface to change scale factor. This is not a application level injection, so an addition script for application specific scale factor tuning is needed. Note that scroll on chromium's small height developer tools may be too fast when scale factor is big enough.
 
   
  +
その他の解決策がうまく行かなかった場合は、XWayland バックエンドに切り替えてみてください。
[[IMWheel]] increases scroll distance by replaying X wheel button event for multiple times. However, chromium assumes the real scroll and the replayed ones as two events. There is a small but noticeable delay between them, so one mouse wheel scroll leads to twice page jumps. Also, touchpad scroll needs additional care.
 
   
  +
=== Chromium でスクロール速度が遅い ===
[https://chrome.google.com/webstore/detail/linux-scroll-speed-fix/mlboohjioameadaedfjcpemcaangkkbp Linux Scroll Speed Fix] and [https://chrome.google.com/webstore/detail/smoothscroll/nbokbjkabcmbfdlbddjidfmibcpneigj SmoothScroll] are two chromium extensions with suppport for scroll distance modification. Upon wheel scroll in a web page, the closest scrollable ancestor of current focused node will be found, then a scroll method with given pixel distance will be called on it, even if it has been scrolled to bottom. So once you scroll into a text editor or any scrollable element, you can never scroll out of it, except moving mouse. Also, extension based methods can not be used outside chromium.
 
  +
  +
Chromium や Electron ベースのアプリケーションでマウスホイールのスクロールが遅すぎることがあります。以下にいくつか解決法を挙げます。
  +
  +
[[Libinput#マウスホイールのスクロール速度の調整]] では libinput の {{ic|libinput_event_pointer_get_axis_value}} 関数をインジェクトし、スケール係数を変更するインターフェイスを提供します。これはアプリケーションレベルのインジェクションではないので、アプリケーション固有のスケール係数調整用の追加スクリプトが必要です。Chromium の縦幅の小さい開発者ツールでは、スケール係数を十分大きくするとスクロールが速くなりすぎるかもしれないことに注意してください。
  +
  +
[[imwheel]] は X のホイールボタンのイベントを複数回リプレイすることでスクロールの距離を増やします。しかし、chromium は実際のスクロールとリプレイされたスクロールを2つのイベントとして認識します。これらの間には小さいですが感知できる遅延が存在します。なので、一回のマウスホイールスクロールで2回のページジャンプが発生します。タッチパッドのスクロールでも注意が必要です。
  +
  +
[https://chrome.google.com/webstore/detail/linux-scroll-speed-fix/mlboohjioameadaedfjcpemcaangkkbp Linux Scroll Speed Fix] と [https://chrome.google.com/webstore/detail/smoothscroll/nbokbjkabcmbfdlbddjidfmibcpneigj SmoothScroll] はスクロール距離の変更をサポートする chromium 拡張機能です。ウェブページ内でスクロールすると、現在フォーカスされているノードの最も近いスクロールできる祖先を見つけて、たとえその祖先が一番下までスクロールされていたとしても、その祖先に対してスクロールメソッドがピクセル距離を使って呼ばれます。なので、テキストエディタやスクロール可能な要素にスクロールすると、マウスを動かす以外の方法でその要素からスクロールして出ることはできません。また、拡張機能ベースの手段は Chromium 外では利用できません。
  +
  +
=== 動画がロードされるが再生されない ===
  +
  +
これは PulseAudio の問題である場合があります。[[PulseAudio/トラブルシューティング#ブラウザが動画をロードするが、再生しない]] で提案されている修正方法を確認してください。
  +
  +
=== データベースの破損によりパスワードが保存されない ===
  +
  +
パスワードデータベースは破損することがあり、その場合、再ビルドする必要があります。再ビルドすると、データベース内の全データが破壊され、保存されているパスワードは失われます。
  +
  +
ターミナルから Chromium を起動すると、以下のように出力されます:
  +
  +
[472531:472565:1207/055404.688559:ERROR:login_database.cc(1048)] Password decryption failed, encryption_result is 2
  +
  +
Chromium を終了し、3つのデータベースファイル ({{ic|~/.config/chromium/Default/Login Data*}}) を削除してください。
  +
  +
Chromium を再度起動すると、データベースファイルが再作成されるはずです。
  +
  +
=== KDE Wayland でカーソルが正しく描画されない ===
  +
  +
[[KDE#Plasma のカーソルがときどきおかしくなる]] を参照してください。
   
 
== 参照 ==
 
== 参照 ==
   
 
* [https://www.chromium.org/ Chromium ホームページ]
 
* [https://www.chromium.org/ Chromium ホームページ]
* [https://googlechromereleases.blogspot.com Google Chrome リリースノート]
+
* [https://chromereleases.googleblog.com/ Google Chrome リリースノート]
* [https://chrome.google.com/webstore/category/home Chrome ウェブストア]
+
* [https://chrome.google.com/webstore/ Chrome ウェブストア]
* [[Wikipedia:ja:Chromium#Google Chromeとの相違点|Chromium と Google Chrome の違い]]
+
* [[Wikipedia:Chromium (web browser)#Differences from Google Chrome|Chromium と Google Chrome の違い]]
* [http://peter.sh/experiments/chromium-command-line-switches/ Chromium コマンドラインスイッチのリスト]
+
* [https://peter.sh/experiments/chromium-command-line-switches/ Chromium コマンドラインスイッチのリスト]
  +
* [[Profile-sync-daemon]] - Chromium プロファイルを tmpfs に保存し、ディスクと同期する systemd サービス
  +
* [[Tmpfs]] - {{ic|/etc/fstab}} での tmpfs ファイルシステム
  +
* [https://docs.kernel.org/filesystems/tmpfs.html 公式の tmpfs カーネルドキュメント]
  +
  +
{{TranslationStatus|Chromium|2024-02-22|800913}}

2024年3月24日 (日) 06:03時点における版

関連記事

Chromium は、Blink レンダリングエンジンをベースとした、オープンソースなグラフィカルウェブブラウザです。プロプライエタリな Google Chrome ブラウザの基礎となっています。

Chromium と Google Chrome との違いについては このページ を見てください。さらに:

  • 同期は Chromium 89 以上 (2021-03-02) で利用できません。[1]
ノート: 同期は、Chrome の OAuth2 認証情報を使用するか、自分の認証情報を取得することで一時的に利用可能にできますが、免責事項に注意し、この方法を長期的な解決策と考えないでください。 長期的な解決策としては、ブックマークの同期するための xbrowsersync に移行することを検討してください。

他の Chromium ベースのブラウザは アプリケーション一覧/インターネット#Blink ベース を見てください。

目次

インストール

Chromium をインストールできるパッケージがいくつか存在します:

Google Chrome のパッケージは:

ノート: Chromium プライバシーページによると(日本語訳):「Chromium のソースコードをコンパイルすることで利用可能になる Google と通信する機能は、Google プライバシーポリシーに従います。」Google サービスとの統合をすべて避けたい人向けにプライバシー重視の Chromium 派生版があります。

設定

デフォルトアプリケーション

Chromium をデフォルトのブラウザに設定したり、ダウンロードしたファイルを開くときに Chromium がどのアプリケーションを起動するかを変更したりするには、デフォルトアプリケーション を見てください。

証明書

Chromium は証明書の管理に Network Security Services を使っています。chrome://settings/certificates で証明書を管理できます。

フラグを永続化する

ノート: chromium-flags.conf ファイルとそれに付随するカスタムランチャースクリプトは、Arch Linux の様々な Chromium パッケージに固有のものです。Google Chrome に対しては、代わりに chrome-flags.conf (開発版やベータ版の場合は chrome-チャネル名-flags.conf) を使用してください。

フラグは、$HOME/.config/ 内 ($XDG_CONFIG_HOME 環境変数を設定した場合は、その環境変数が示すディレクトリの中) の chromium-flags.conf ファイルに記述することができます。グローバルに設定したい場合は、/etc/ 内に配置できます。

特別な構文は使用されず、フラグはターミナルに書き込まれるのと同じように定義されます。

  • 引数は空白で分割され、シェルの引用符の規則が適用されますが、それ以上の解析は実行されません。
  • ファイル中のどこかが不適切に引用符によって囲まれている場合、致命的なエラーが発生します。
  • フラグは読みやすくするために個別の行に分けることができますが、これは必須ではありません。
  • ハッシュ記号 (#) で始まる行は読み飛ばされます。(これは Chromium のランチャースクリプトでのみサポートされており、Google Chrome を使用している場合は動作しません。)

以下は、フラグ --start-maximized --incognito を定義している chromium-flags.conf ファイルの例です:

~/.config/chromium-flags.conf
# この行は無視されます。
--start-maximized
--incognito

GPU アクセラレーションを強制する

少なくとも Chromium 110 から、ほとんどのシステムに対して GPU アクセラレーションがデフォルトで有効化されています。あなたのシステム構成がブラックリストと合致する場合、以下のフラグを永続的な設定追加する必要があります:

警告: レンダリングブラックリストを無効化すると、ホストのクラッシュなどの不安定な挙動を引き起こすかもしれません。詳細については chrome://gpu にあるバグレポートを見てください。
~/.config/chromium-flags.conf
--ignore-gpu-blocklist
--enable-zero-copy

ハードウェアビデオアクセラレーション

ノート:
  • この機能に対する Chromium や Arch Linux からの公式サポートはありません [2]。しかし、公式リポジトリの chromium は VA-API サポートありでコンパイルされており、専用のフォーラムスレッドで助けを求めることができます。
  • Chromium バージョン 122 から、chromium-wayland-vaapiAUR パッケージはもはや必要なくなりました。公式リポジトリの chromium パッケージでネイティブな Wayland バックエンドを使用している場合、VA-API は動作します。
  • AMD GPU デバイス上では、Chromium bug 1445074 により VA-API が動作しません。パッチは存在しますが、X11/XWayland (--ozone-platform-hint=x11 フラグを使用した場合) でしか動作しません。

vainfo (ハードウェアビデオアクセラレーション#VA-API の確認 を参照) の出力を見て VA-API のサポートがあることを確認した場合は、ひとまず以下のフラグだけで試してみてください:

~/.config/chromium-flags.conf
--enable-features=VaapiVideoDecodeLinuxGL

それ以外の場合は、以下を読んでください。

Chromium で VA-API サポートを有効にするには:

  • 使用中のビデオカード用の適切な VA-API ドライバをインストールしてください。そして、VA-API が有効化されて正常に動作していることを確認してください。ハードウェアビデオアクセラレーションを見てください。プロプライエタリな NVIDIA サポートは、libva-vdpau-driver-chromiumAUR[リンク切れ: package not found]libva-vdpau-driver-vp9-gitAUR をインストールする必要があります。
  • --enable-features=VaapiVideoDecoder オプションを設定してください。ANGLE GL レンダラーと libva-intel-driver を使用している場合は、これで十分です。
  • ANGLE を使用すると、intel-media-driver が使用されている場合、Chromium は古い i965 ドライバを強制的に使用し失敗します。回避策として、VA-API を手動で設定してください。詳細については [3] を見てください。
  • Xorg か Wayland でシステムの GL レンダラを使用するには、--use-gl=egl を使用してください。Chrome 112 を使用している場合、このオプションはもはや必要ないかもしれず、AMD GPU を使用している場合は GPU アクセラレーションの機能が壊れる場合があります。
  • VA-API がまだ動かない場合は、--enable-features=VaapiIgnoreDriverChecks--disable-features=UseChromeOSDirectVideoDecoder フラグを試してください。
  • VA-API が Xorg と古い GPU 上でまだ動かない場合は、LIBVA_DRI3_DISABLE=1 環境変数を設定してください [4]

ヒントとテクニック

使用中の VA-API ドライバでサポートされているコーデックの動画の視聴がうまく行くかどうか確認するには (vainfo はどのコーデックがサポートされているかを表示しますが、Chromium は VP9 と h264 だけをサポートします):

  • Ctrl+Shift+I を押すか、コンテキスト (右クリック) メニューの 検証 ボタンを押して DevTools を開いてください
  • Media inspection タブを追加してください: ハンバーガーメニュー(︙) > More tools > Media
  • 新しく開いた Media タブで、Video Decoder の Hardware decoder の状態を見てください。

十分に大きな動画でテストしてください。バージョン 86 から、デスクトップ版の Chromium は 720p よりも大きい動画でしかアクセラレーションを使用しません

VP8/VP9 ハードウェアデコードが使用できない Youtube 動画を視聴しているときに CPU 使用率を減らすには、h264ifyenhanced-h264ifyNot yet, AV1[5] 拡張機能を使用してください。

一部のシステム (特に Xwayland) では、#GPU アクセラレーションを強制する 必要があるかもしれません。このセクションでの目的に対しては --ignore-gpu-blocklist のみで十分です。

Skia レンダラーは、現在ビデオデコードアクセラレーションと互換性がないので、無効化する必要があるかもしれません: --disable-features=UseSkiaRenderer

KDE 統合

Plasma との統合は plasma-browser-integrationインストールしてください。詳細は KDE Plasma Browser Integration を見てください。

PDF ビューアプラグイン

Chromium と Google Chrome には Chromium PDF Viewer プラグインがバンドルされています。このプラグインを使用したくない場合は、chrome://settings/content/pdfDocuments 内の Download PDFs を確認してください。

Xwayland での動作

NVIDIA 社のプロプライエタリドライバを使用している場合、Xwayland 上で Chromium を実行すると、GPU プロセスが時々クラッシュすることがあります。GPU プロセスがクラッシュしないようにするには、以下のフラグを追加してください:

--use-angle=vulkan --use-cmd-decoder=passthrough
ノート: これはすべての Xwayland 関連のクラッシュを防止するわけではありません。

ネイティブ Wayland サポート

バージョン 97 以降、Chromium でのネイティブ Wayland サポートは、次のフラグを使用して有効にできます [6]:

--ozone-platform-hint=auto

これがうまくいかない場合 (例えば Weston バージョン 106 以下の場合)、次を使ってください:

--ozone-platform=wayland

永続的な設定については #フラグを永続化する を参照してください。このフラグはブラウザのフラグメニューからも設定できます。

この設定により、wayland セッション内では wayland Ozone バックエンドが選択されます。なので、X11 と Wayland を頻繁に切り替える場合でも、デスクトップエントリは一つだけで大丈夫です。

ノート: ブラウザのフラグメニューで "ozone-platform-hint" を変更すると、ブラウザが再起動ボタンを表示させます。しかし、これは使用しないでください。ブラウザは、フラグが変更される前のプラットフォームで再起動されるからです。ブラウザを閉じて、その後、再び開く必要があります。

追加で、インプットメソッドの問題が発生している場合は、新しい GTK を強制すると良いかもしれません:

--gtk-version=4

ナビゲーションのタッチパッドジェスチャ

2本の指でスワイプすると戻ったり進んだりする機能を有効にするには、以下のフラグを使用してください:

--ozone-platform-hint=auto --enable-features=TouchpadOverscrollHistoryNavigation

ヒントとテクニック

特に注意書きがなければ以下のヒントとテクニックは Chromium と Chrome の両方で使うことができます。

ブラウズのエクスペリエンス

chrome:// URL

多くの調整は Chrome の URL からアクセスすることができます。完全なリストは chrome://chrome-urls を参照してください。

  • chrome://flags - WebGL などの実験的な機能や GPU によるウェブページのレンダリングなどにアクセスできます。
  • chrome://extensions - 現在使用している Chromium 拡張を表示・有効化・無効化。
  • chrome://gpu - 様々な GPU オプションの状態。
  • chrome://sandbox - サンドボックスの状態を表示。
  • chrome://version - バージョンや /usr/bin/chromium を実行するときに使われたスイッチを表示。

Chromium のスイッチ (コマンドラインパラメータ) の自動的に更新される完全なリストが こちら にあります。

Chromium タスクマネージャ

Shift+ESC でブラウザのタスクマネージャを立ち上げることができます。メモリや CPU、ネットワークの使用量が閲覧可能です。

Chromium が Preferences ファイルを上書き/オーバーライドしてしまう

Google アカウントの同期を有効にしている場合、~/.config/chromium/Default/Preferences 下の Preferences ファイルに直接編集を加えていても Chromium によって上書きされてしまいます。上書きされないようにするには、--disable-sync-preferences スイッチを付けて Chromium を起動してください:

$ chromium --disable-sync-preferences

デスクトップ環境のログイン時にバックグラウンドで Chromium を起動する場合、デスクトップ環境から使用するコマンドを以下のようにしてください:

$ chromium --disable-sync-preferences --no-startup-window

検索エンジン

wiki.archlinux.orgwikipedia.org などのウェブサイトは検索を実行してから Settings > Search を選択して Manage search engines.. ボタンをクリックすることで簡単に検索できるように設定できます。エントリを "Edit" してキーワードを w などに変更してください (ショートカットは自由に決めて下さい)。これでアドレスバーに "w arch linux" と入力するだけで "Arch Linux" で検索できるようになります。

ノート: URL バーに何か入力すると自動的に Google 検索が使われます。また、ハードコードされたキーワードトリガとして ? プレフィックスが使えます。

Tmpfs

tmpfs にキャッシュ
ノート: Chromium はブラウザのプロファイルディレクトリとキャッシュディレクトリを分離して保存します。

物理ディスクに対する Chromium のキャッシュの書き込みを制限したい場合、--disk-cache-dir フラグでキャッシュの書き込み先を変更することができます:

$ chromium --disk-cache-dir="$XDG_RUNTIME_DIR/chromium-cache"

キャッシュは一時的になり、再起動したりハードロックすると消えます。もしくは、tmpfs 領域を /etc/fstab 内でセットアップすることもできます:

/etc/fstab
tmpfs	/home/username/.cache	tmpfs	noatime,nodev,nosuid,size=400M	0	0

または、/tmp へのシンボリックリンクを作成してください。以下のコマンドを実行する前に、Chromium のキャッシュフォルダは削除しておいてください:

$ ln -s /tmp /home/ユーザ名/.cache/chromium
tmpfs にプロファイル

/tmp/dev/shm などの tmpfs ファイルシステムにプロファイルを保存することで、プロファイル全体が RAM 内に保存されるので、Chromium の応答性が改善されます。

profile-sync-daemon などの、プロファイルを動的に管理するスクリプトを使うことで信頼性と使いやすさを最大限高めることができます。profile-sync-daemon はブラウザプロファイルのディレクトリのシンボリックリンクを作成し、定期的にメモリと同期をとります。詳細については Profile-sync-daemon の記事を参照して下さい。

新しいブラウザインスタンスを起動

ブラウザを起動すると、最初に同じプロファイルを使っているインスタンスが他にないか確認されます。存在する場合、新しいウィンドウは既存のインスタンスに関連付けられます。以下のように --user-data-dir パラメータを使って起動することで別のプロファイルでブラウザを起動できます:

$ chromium --user-data-dir=/path/to/some/directory
ノート: ユーザーデータのデフォルトパスは ~/.config/chromium/ です。

torrent クライアントで *.torrent ファイルやマグネットリンクを直接開く

デフォルトでは Chromium は *.torrent ファイルを直接ダウンロードするため、ファイルを torrent クライアントで開くには画面左下の通知をクリックする必要があります。以下の方法で毎回クリックする手間を省けます:

  • *.torrent ファイルをダウンロード。
  • 画面左下に表示される通知を右クリック。
  • "Always Open Files of This Type" チェックボックスにチェックを入れる。

デフォルトの関連付けの変更については xdg-open を見てください。

タッチスクリーンデバイスでタッチスクロール

使用するタッチデバイスを指定する必要があります。タッチスクリーンデバイスを xinput list で確認して、--touch-devices=x パラメータを付けて Chromium を起動してください ("x" はデバイスの id に置き換えてください)。

ノート: スレーブポインタのデバイスは使えません。マスターポインタの ID を使ってください。

メモリの使用量を減らす

デフォルトでは、Chromium は開いているウェブサイトの数だけ OS プロセスを作成します [7]。Chromium の起動時にコマンドラインスイッチを指定することで挙動を変更することが可能です。

例えば、全てのウェブサイトでひとつのプロセスを共有するには:

$ chromium --process-per-site

シングルプロセスモデルを使うには:

$ chromium --single-process
警告: シングルプロセスモデルは安全でなく他のモデルに存在しないバグが含まれている可能性があるため推奨されていません [8]

さらに Tab SuspenderOneTab などの拡張を使うことでアクティブでないタブを停止・保存することができます。

ユーザーエージェント

Chromium の起動時に --user-agent="[string]" パラメータを指定することでユーザーエージェントは任意に変更することができます。

DOM Distiller

Chromium には Firefox にあるのと似たレンダリングモードが存在します。これは DOM Distiller と呼ばれ、オープンソースプロジェクトです。 デフォルトでは無効化されていますが、chrome://flags/#enable-reader-mode フラグを使用することにより有効化できます。このフラグは永続化させることができます。 DOM Distiller は、ページのコンテンツから不要なものを取り除くことでより良いレンダリングエクスペリエンスを提供するだけでなく、印刷用にページを単純化してくれます。後者のチェックボックスオプションが印刷ダイアログから削除されたものの、不要なものを取り除いたページを印刷することは依然として可能です。これらには、基本的には同じ効果があります。

フラグを有効化すると、ウェブサイトから不要なものを取り除くことができると Chromium が判断したときに、"Enter reader mode" メニューアイテムとアイコンがアドレスバーに出現します。

特定の GPU の使用を強制する

GPU が複数ある環境の場合、Chromium はレンダリングに使用する GPU (ディスクリートや統合 GPU) を自動的に検出します。99% は問題ありませんが、誤った GPU が選択された場合 (VFIO GPU パススルー環境でディスクリートグラフィックが選ばれるなど)、chrome://gpu は GPU プロセスを初期化できないというエラーを吐きます。同じページの Driver Information には複数の GPU が表示されます (GPU0, GPU1, ...)。ユーザーフレンドリな方法で GPU を切り替えることはできませんが、デバイス/ベンダー ID を使って Chromium のフラグで使用する GPU を設定できます:

$ chromium --gpu-testing-vendor-id=0x8086 --gpu-testing-device-id=0x1912

0x80860x1912 は使用したい GPU の ID に置き換えてください (chrome://gpu ページで確認できます)。

Firefox からブックマークをインポート

Firefox から Chromium にブックマークをインポートすることができます。

Chromium で chrome://settings/importData を開いてください。

コンピュータに Firefox がインストールされている場合、直接 Firefox からブックマークなどをインポートできます。

Mozilla Firefox を選択してください。不要なアイテムのチェックは外してかまいません。Import をクリックしてから Done をクリックすればインポートは完了です。

ノート: Chromium でまだ何もブックマークを作成していない場合、ブックマークバーにブックマークが表示されます。既にブックマークが存在する場合、ブックマークは "Imported From Firefox" というラベルが付いた新しいフォルダに保存されます。

他の PC からブックマークをインポートする場合、先に Firefox からブックマークをエクスポートする必要があります。

Firefox で Ctrl+Shift+o Import and Backup > Export Bookmarks To HTML を選択してください

後の作業は同じです。chrome://settings/importData を開いてください。ただし今度は From ドロップダウンメニューで Bookmarks HTML File を選択して Choose File ボタンをクリックしてブックマークファイルをアップロードします。

後の作業は同じです。chrome://settings/importData を開いてください。ただし今度は From ドロップダウンメニューで Bookmarks HTML File を選択して Choose File ボタンをクリックしてブックマークファイルをアップロードします。

ネイティブ通知の有効化

chrome://flags#enable-system-notifications を開いて、Enabled を選択してください。

U2F 認証

libfido2 ライブラリをインストールしてください。このパッケージは、(通常) ユーザとして U2F キーにアクセスできるようにするために必要な udev ルールを提供します。 U2F キーはデフォルトでは root としてしかアクセスできないので、これらのルールが無いと Chromium はエラーを吐きます。

テーマ

Chromium に現在の GTK テーマをブラウザメニューやコントロールで使用させることができます。chrome://settings/appearanceUse GTK を押してください。

ダークモード

Chromium 114 から、ユーザの優先外観を自動的に決定するために XDG デスクトップ ポータル が使用されるようになりました (issue)。よって、ダークモードの有効化とユーザの GTK テーマが切り離されました。この設定は、CSS、JavaScript、設定、そして Dev-Tools の prefers-color-scheme に適用されます。

優先外観を変更する方法は、XDG Desktop Portal バックエンドに依存します。例えば、多くのデスクトップ環境はそれぞれの外観設定インターフェイスにモードを切り替えるスイッチを提供しています。または、例えば xdg-desktop-portal-gtk 場合は、以下のコマンドを使って優先モードを prefer-lightprefer-darkdefault に設定します:

$ dconf write /org/gnome/desktop/interface/color-scheme \'prefer-dark\'

dbusdbus-send を使用することで、現在の優先外観をクエリできます (ドキュメント):

$ dbus-send --session --print-reply=literal --dest=org.freedesktop.portal.Desktop /org/freedesktop/portal/desktop org.freedesktop.portal.Settings.Read string:org.freedesktop.appearance string:color-scheme | tr -s ' ' | cut -d ' ' -f 5
  • 0: 設定無し
  • 1: ダークモードを優先
  • 2: ライトモードを優先
Chromium 114 より前

ダークモードを有効化し、ダークテーマ (通常、incognito モードで使用されます) を有効化するには、以下のフラグを永続的な設定追加してください:

~/.config/chromium-flags.conf
--force-dark-mode
--enable-features=WebUIDarkMode

サイドパネルを有効化する

サイドパネルは chrome://flags から有効化できます。Side panel を有効化/無効化することができ、Side panel borderSide panel drag and drop といったオプションを変更できます。

プロファイルのメンテナンス

Chromium は Sqlite データベースを使用して履歴やお気に入りを管理しています。Sqlite データベースは使っているうちに断片化していきます。しかしながら、データベースをチェックしたり最適化するプロセスが存在しないため、断片化によって段々とパフォーマンスに影響が出て来ます。デフラグを行ってデータベースから未使用領域を削除することで、起動時間やブックマークや履歴に関連する作業を素早く実行することができます。

profile-cleanerbrowser-vacuumAUR でメンテナンスができます。

セキュリティ

JIT を無効化

JS エンジンにおけるセキュリティ上の脆弱性のうち約半分は JIT に原因があります。パフォーマンスが劣化しますが、--js-flags=--jitless フラグを使用することで、JavaScript からネイティブなコードへの just-in-time コンパイルを無効化できます。

WebRTC

WebRTC は JavaScript を使用する通信プロトコルですが、VPN を使っている場合でもマシンの IP アドレスやハードウェアのハッシュ値が漏洩する可能性があります。VPN ソフトウェアによってはスクリプトの実行が阻止されることもありますが、プロトコルを直接ブロックしてしまう方が安全です。2016年10月現在、デスクトップ版 Chromium で WebRTC を無効化する方法はありませんが、ローカル IP アドレスの漏洩を阻止する拡張が存在します 。そのひとつがこの拡張機能です。

WebRTC は https://browserleaks.com/webrtc でテストできます。

警告: IP の漏洩は防げても、Chromium はユニークなハッシュを送信しており、それを止める方法はありません。詳しくは https://www.browserleaks.com/webrtc#webrtc-disable を読んでください。

SSL 証明書

Chromium には SSL 証明書マネージャが存在しません。Chromium は NSS の共有データベース ~/.pki/nssdb を使用しています。データベースに SSL 証明書を追加するには、シェルを使う必要があります。

自己署名証明書の CAcert 証明書を追加

CAcerts を取得して nssdb を作成してください (存在しない場合)。作成するには nss パッケージをインストールして以下を実行する必要があります:

$ mkdir -p $HOME/.pki/nssdb
$ cd $HOME/.pki/nssdb
$ certutil -N -d sql:.
$ curl -k -o "cacert-root.crt" "http://www.cacert.org/certs/root.crt"
$ curl -k -o "cacert-class3.crt" "http://www.cacert.org/certs/class3.crt"
$ certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "CAcert.org" -i cacert-root.crt 
$ certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "CAcert.org Class 3" -i cacert-class3.crt
ノート: データベースのパスワードを作成していない場合、作成する必要があります。

これでユーザーは手動で自己署名証明書をインポートできるようになります。

例 1: シェルスクリプトを使って TomatoUSB から証明書を分離

以下は証明書を展開してユーザーの nssdb に追加するシンプルなスクリプトです:

#!/bin/sh
#
# usage:  import-cert.sh remote.host.name [port]
#
REMHOST=$1
REMPORT=${2:-443}
exec 6>&1
exec > $REMHOST
echo | openssl s_client -connect ${REMHOST}:${REMPORT} 2>&1 |sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p'
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n "$REMHOST" -i $REMHOST 
exec 1>&6 6>&-

使用方法はコメント化されている行を見てください。

参照:

例 2: Firefox を使って TomatoUSB から証明書を分離

firefox ブラウザを使って証明書をファイルに保存してデータベースに手動でインポートすることができます。

Firefox を使って:

  1. 取得先の URL を開く。
  2. "This Connection is Untrusted" 警告画面が表示されたら I understand the Risks > Add Exception... をクリック。
  3. View > Details > Export をクリックしてどこか一時的な場所に証明書を保存 (以下の例では /tmp/easy.pem を使用)。

Chromium で使用する証明書をインポート:

$ certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "easy" -i /tmp/easy.pem
ノート: 名前は証明書にあわせて変更してください。上記の例では "easy" が証明書の名前です。

参照:

Canvas Fingerprinting

Canvas Fingerprinting は HTML5 の canvas のレンダリング結果の差異を使ってユーザーを識別する技術です。--disable-reading-from-canvas フラグを使うことで Canvas Fingerprinting を使えないようにすることができます。

フラグが機能しているかどうか確認するには こちらのテスト を実行して "hash of canvas fingerprint" の結果を確認してください。

ノート:
  • 一部の拡張機能は canvas からの読み込みを必要としており、--disable-reading-from-canvas を設定すると壊れる場合があります。
  • YouTube プレイヤーは canvas からの読み込みができないと正しく動作しません。[9][10]

プライバシー拡張

ブラウザ拡張機能#プライバシー を参照してください。

ヒント: あまりにも多くの拡張機能をインストールしてしまうと、ツールバーのスペースを圧迫してしまうかもしれません。ユーザと対話しない拡張機能 (例: HTTPS Everywhere[リンク切れ 2023-04-22]) は、拡張機能を右クリックして Hide in Chromium menu を選択することで隠すことができます。

Do Not Track

Do Not Track を有効化するには、chrome://settings を開き、Advanced まで下へスクロールして、Privacy and securitySend a "Do Not Track" request with your browsing traffic にチェックを入れてください。

特定のパスワードストアを強制する

Chromium はパスワードストアを使ってパスワードと (cookie の値を暗号化するのに使われる) Chromium Safe Storage キーを保存します [11]

デフォルトでは Chromium は使用するパスワードストアを自動的に認識しますが、デスクトップ環境やウィンドウマネージャを変えたときにパスワードと cookie が失われてしまう可能性があります。

--password-store フラグで以下のどれかの値を指定して Chromium を起動することで特定のパスワードストアを強制的に使うようにすることができます [12]:

  • gnome-libsecret - libsecret 経由で Gnome Keyring を使用
  • kwallet - KDE Wallet を使用
  • basic - Login Data ファイルにプレーンテキストとしてパスワードと cookie の暗号鍵を保存
  • detect - デフォルトの自動認識

例えば、Gnome Keyring を使うようにするには --password-store=gnome-libsecret を付けてください。永続化する方法は #フラグを永続化する を参照。

他のデスクトップ環境のパスワードストアを使う場合、自動的にアンロックされるように設定すると良いでしょう。GNOME/Keyring#キーリングを使用するKDE Wallet#ログイン時に KDE ウォレットを自動的にアンロック を参照。

トラブルシューティング

フォント

ノート: Chromium は独自のサンドボックスを使っているため、fontconfig/GTK/Pango/X などと完全な統合がされていません。詳しくは Linux Technical FAQ を参照してください。

タブのフォントサイズが大きすぎる

GTK#設定 で言及されているように、Chromium は GTK の設定を使用します。Chromium はタブに gtk-font-name の設定を使用します (これにより、ウインドウのフォントサイズと合わなくなる場合があります)。この設定を上書きするには、--force-device-scale-factor=1.0 を使用してください。

WebGL

使用中のグラフィックカードが Chromium のブラックリストに入っている可能性があります。#GPU アクセラレーションを強制する を見てください。

Bumblebee で Chromium を使っている場合、GPU のサンドボックスによって WebGL がクラッシュすることがあります。このようなときは、optirun chromium --disable-gpu-sandbox で GPU のサンドボックスを無効にできます。

WebGL サポートのデバッグ情報は chrome://gpu/ を見てください。

Chromium はユーザプロファイルに GPU に関する誤った情報を保存することがあります。例えば、Optimus を使って Nvidia カードから Intel カードに切り替えた場合、たとえ Nvidia カードや primusrun/optirun を使用していなくても、chrome://gpu に Nvidia カードが表示されます。異なるユーザデータディレクトリを使って実行することにより (例: chromium --user-data-dir=$(mktemp -d))、この問題を解決できる場合があります。持続的な解決策として、~/.config/chromium/Local\ State を削除して GPU の情報をリセットできます。

HiDPI の描画がおかしい

Chromium は自動的に HiDPI ディスプレイでの倍率設定を行います。しかし、これにより GUI の描画がおかしくなることがあります。

--force-device-scale-factor=1 フラグをを使用して、自動倍率設定を上書きできます。

ネイティブの Wayland サポート が有効化されている場合、Chromium は、各モニタに設定された倍率を元に自動的に倍率を設定します。

GNOME Keyring を使用していると起動するたびにパスワードを要求される

GNOME/Keyring#パスワードが保存されない を見てください。

ネットワーク内の Chromecast が検出されない

chrome://flags/#load-media-router-component-extension 内の Media Router Component Extension を有効化する必要があります。

パスワードだけが同期されない

同期がパスワードに対してだけ機能しない場合 (chrome://sync-internals/ で確認できます)、プロファイルのログインデータを削除してください:

$ rm ~/.config/chromium/Default/Login\ Data*

詳細は Google Chrome Help forum を見てください。

デスクトップ環境を切り替えると cookie とパスワードが消える

Chromium を起動したときにターミナルに Failed to decrypt token for service AccountId-* というメッセージが表示される場合、Chromium が間違ったパスワード保存バックエンドを使おうとしたのかもしれません。これはデスクトップ環境を切り替えたときに起こりえます。

#特定のパスワードストアを強制する を見てください。

Google Sync を有効化すると起動時に固まる

--password-store=basic フラグを使うか、他の適切なパスワードストアを使って Chrome を起動してみてください。

#特定のパスワードストアを強制する を見てください。

デフォルトのブラウザとして設定するかを毎回尋ねてくる

KDE を使用していて、一度 Firefox を (Firefox 内のボタンをクリックして) デフォルトのブラウザとして設定したことがある場合、たとえ "デフォルトに設定" ボタンをクリックしたとしても 、Chromium を起動するたびに毎回 Chromium をデフォルトのブラウザとして設定するかを尋ねられることがあります。

Chromium は xdg-settings check default-web-browser chromium.desktop を実行することで chromium がデフォルトのブラウザであるかを確認します。そのコマンドの出力が "no" である場合、chromium がデフォルトのブラウザでないと認識します。xdg-settings スクリプトは以下の MIME の関連付けを確認し、すべてが chromium.desktop であることを期待します:

x-scheme-handler/http
x-scheme-handler/https
text/html

これを直すには、システム設定 > アプリケーション > デフォルトのアプリケーション > Web browser を開いて、Chormium を指定してください。そして、text/html の MIME の関連付けを設定してください:

$ xdg-mime default chromium.desktop text/html

最後に、MIME のデータベースを更新してください:

$ update-mime-database ~/.local/share/mime

"このブラウザまたはアプリは安全でない可能性があります" Google へのログインエラー

2020年04月20日以降、Web 開発用に --remote-debugging-port=9222 フラグを指定して chromium を実行すると、 Google アカウントにログインできません。このフラグを一時的に無効にしてログインすると、再び有効にできます。

60 FPS より高いリフレッシュレートのディスプレイを使用しているのに Chromium は 60 FPS で描画される

一般的な問題に関する上流のバグレポートはここにあり、その他の回避策が見つかるかもしれません。また、混合リフレッシュレートに関する問題はここで報告されています。

混合リフレッシュレート

ヒント: この問題は Wayland バックエンドには存在しない可能性があります。要検証。

混合リフレッシュレート (例えば 60 Hz と 144 Hz) のあるディスプレイを使用している場合、Chromium は最も低いリフレッシュレートのディスプレイに合わせて描画するかもしれません。

この問題に対する適切な回避策があります。以下のフラグを永続的な設定追加してください:

~/.config/chromium-flags.conf
--use-gl=egl
--ignore-gpu-blocklist
--enable-gpu-rasterization

これにより、コンポジタが 144 FPS でリフレッシュする場合、144Hz ディスプレイ上で使用すると Chromium が 144 FPS で実行されます。これにより、少しカクつくかもしれないことを留意してください FS#67035。しかし、60 FPS で止まるよりはマシです。

Wayland バックエンドで実行する

この問題を引き起こす Wayland コンポジタ固有の問題があるようです。

特に、Plasma 5 は環境によらず 60Hz で描画されるようですが、Plasma 6 (この記事の時点では rc1) では Chromium が高いリフレッシュレートでも問題なく動作します。

その他の解決策がうまく行かなかった場合は、XWayland バックエンドに切り替えてみてください。

Chromium でスクロール速度が遅い

Chromium や Electron ベースのアプリケーションでマウスホイールのスクロールが遅すぎることがあります。以下にいくつか解決法を挙げます。

Libinput#マウスホイールのスクロール速度の調整 では libinput の libinput_event_pointer_get_axis_value 関数をインジェクトし、スケール係数を変更するインターフェイスを提供します。これはアプリケーションレベルのインジェクションではないので、アプリケーション固有のスケール係数調整用の追加スクリプトが必要です。Chromium の縦幅の小さい開発者ツールでは、スケール係数を十分大きくするとスクロールが速くなりすぎるかもしれないことに注意してください。

imwheel は X のホイールボタンのイベントを複数回リプレイすることでスクロールの距離を増やします。しかし、chromium は実際のスクロールとリプレイされたスクロールを2つのイベントとして認識します。これらの間には小さいですが感知できる遅延が存在します。なので、一回のマウスホイールスクロールで2回のページジャンプが発生します。タッチパッドのスクロールでも注意が必要です。

Linux Scroll Speed FixSmoothScroll はスクロール距離の変更をサポートする chromium 拡張機能です。ウェブページ内でスクロールすると、現在フォーカスされているノードの最も近いスクロールできる祖先を見つけて、たとえその祖先が一番下までスクロールされていたとしても、その祖先に対してスクロールメソッドがピクセル距離を使って呼ばれます。なので、テキストエディタやスクロール可能な要素にスクロールすると、マウスを動かす以外の方法でその要素からスクロールして出ることはできません。また、拡張機能ベースの手段は Chromium 外では利用できません。

動画がロードされるが再生されない

これは PulseAudio の問題である場合があります。PulseAudio/トラブルシューティング#ブラウザが動画をロードするが、再生しない で提案されている修正方法を確認してください。

データベースの破損によりパスワードが保存されない

パスワードデータベースは破損することがあり、その場合、再ビルドする必要があります。再ビルドすると、データベース内の全データが破壊され、保存されているパスワードは失われます。

ターミナルから Chromium を起動すると、以下のように出力されます:

[472531:472565:1207/055404.688559:ERROR:login_database.cc(1048)] Password decryption failed, encryption_result is 2

Chromium を終了し、3つのデータベースファイル (~/.config/chromium/Default/Login Data*) を削除してください。

Chromium を再度起動すると、データベースファイルが再作成されるはずです。

KDE Wayland でカーソルが正しく描画されない

KDE#Plasma のカーソルがときどきおかしくなる を参照してください。

参照

翻訳ステータス: このページは en:Chromium の翻訳バージョンです。最後の翻訳日は 2024-02-22 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。