Chrom {ium | e}は通常のユーザーとして起動できません。

Chrom {ium | e}は通常のユーザーとして起動できません。

通常のユーザーとしてChromiumまたはChromeを実行することはできません(rootとして実行できますが)。再起動し、両方のアプリケーションを再インストールし、.configファイルを移動し、gtkテーマを変更し、別の(=新規)ユーザーとして実行してみました。これらのどれにも違いはありません(つまり、どちらもまだ実行を拒否します)。実行を拒否するだけでなく、エラーメッセージも生成せず、タイムアウトも発生しません(コマンドラインで実行している場合でも)。

ここstraceで実行した結果ですChromium

次のような「ファイル/ディレクトリが見つかりません」というメッセージがありますが、明確にエラーとしてマークされた項目が見つかりません。

  open("tls/x86_64/libdbus-1.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory

今は本当に混乱していて、何をもっと試すべきかわかりません。

[私は重要な場合に備えてArch Linuxを使用しています。 ]

編集する:ここ比較結果ですnohup sudo strace sudo chromium -user-data-dir=/tmp (実際に実行すると、Chromiumが開き、正常に実行されます。)

答え1

説明する

この問題は Chromium にのみ影響するものではないため、お客様の問題は Chromium とは関係ありません。システムにインストールされている動的ライブラリの一部が存在しないか、そのライブラリをインストール/更新しましたが、更新が正しく完了していません。rootこれは、アプリケーションが引き続き実行できるという事実によって確認されます。

不足しているライブラリの確認または再インストール

次の手順に従って、忘れたライブラリが再インストールされたかインストールされていることを確認してください。場合によっては、pacman次の4つのステップを実行できます。これが私たちが望むものです。

  1. 次のコマンドを使用して pkgfile をインストールします。
    pacman -S pkgfile
  2. 次のコマンドを実行します。
    pkgfile filenameここで、filenameは欠落しているファイルの名前です。はい
    pkgfile libdbus-1.so.3返す必要がありますlibdbusまたはtls

これはAURパッケージですが、バイナリがすでに存在する可能性があります。

  1. 今1つを発行してください:
    pacman -S libdbus tls

テスト

端末でChrome / Chromiumを再起動してみてください。欠落しているファイルのエラーをダンプする場合は、確認セクションの手順2でコマンドを再実行してファイル名新しい欠落ファイルがあります。ついに:

  1. 動的リンカーライブラリキャッシュの更新発行:
    ldconfig

上記のステップ4では、起動したアプリケーションを起動する前に、ユーザーが取得したキャッシュを再構築します。pacman欠落/再インストールされたパッケージをインストールするときに自動的にトリガーされないようにするには、これを行います。


追加参考資料

Arch LinuxでインストールするファイルXを含むパッケージをどのように見つけますか?

関連情報