Chrome'un yeniden başlaması için eksik libudev.so.0 nasıl düzeltilir?


27

Krom başlatmaya çalışmak, komut satırında aşağıdaki hatayı verir:

/opt/google/chrome/chrome: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory

Hata ilk olarak Ubuntu 13.04'te ortaya çıktı, Chrome'u temizlemeyi ve yeniden yüklemeyi denedim. Ubuntu 13.10 sürümüne geçtikten sonra ısrar etti.

Yanıtlar:


17

Ub12.10’dan ≥13.04’e bir Ubuntu yükseltmesinden sonra Chrome başlamazsa, bir terminal açın ve aşağıdaki komutu çalıştırın:

sudo dpkg-reconfigure google-chrome-stable

Açıklamalar takip ediyor.


En azından 28 ila 37 arasındaki Chrome sürümleri için, Chrome ikili sistemi hangisinden libudev.so.0veya libudev.so.1sistemde mevcutsa kullanabilir . Yükleyici, hangisinin kullanılacağını belirleyen Chromium / Chrome Sayı 226002'ye (Nisan 2013'te kararsız kanala girdi) yapılan düzeltmeyle karar verir. İkili referanslar libudev.so.0; yükleyici , bulunmazsa sisteme /opt/google/chrome/libudev.so.0doğru sembolik bir bağlantı oluşturur .libudev.so.1libudev.so.0

İçinde bir tane oluşturmak için kötü bir fikir olacağını unutmayın /usr/lib. Kütüphanelerdeki büyük sürüm numaraları, yeni sürüm uyumlu olmadığında değişir. Bu sembolik bağın oluşturulması, yalnızca sürüm 0 ile sürüm 1 arasında uyumlu olan özellikleri kullandığından Chrome için işe yarar. Diğer sürümler, yanlış sürümle çalışmaya zorlarsanız çökebilir veya bozuk veriler üretebilir.

Chrome paketi tarafından kullanılan yöntem çoğu durumda iyi çalışır, ancak yine de kirli bir kesmek ve bir sınırlaması vardır. Eğer libudev0Chrome Ubuntu yükseltirken gerçekleşmesi muhtemel olan yüklendikten sonra paket kaldırılırsa, Chrome hala kullanmak üzere ayarlanmış olacak libudev.so.0ancak dosya artık mevcut olmayacaktır. Bunu düzeltmek için, kurulum betiğinin tekrar çalışmasına neden olun ve bu sefer bunun libudev.so.0uygun olmadığını tespit edin , bu yüzden bunun libudev.so.1yerine kullanılacak sembolik bağlantıyı oluşturması gerekir . Kurulum betiğini dpkg-reconfigure google-chrome-stableroot olarak çalıştırarak yeniden çalıştırabilirsiniz .


36

Gilles'un belirttiği gibi, bu yaklaşım istenmeyen davranışlara yol açabilir. Lütfen önce çözümünü deneyin . Sizin için işe yaramazsa ve bunun sessiz veri bozulmasına yol açabileceği fikrini anlıyorsanız , aşağıdakileri yapabilirsiniz:

64-bit bir sistem varsayalım, eksik sembolik link üzerinden yaratılabilir:

sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1.3.5 /usr/lib/libudev.so.0

Ubuntu 18 için:

sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1.6.9 /usr/lib/libudev.so.0

32 bit sistem için:

sudo ln -s /lib/i386-linux-gnu/libudev.so.1.3.5  /usr/lib/libudev.so.0

Yerel libudev versiyonunuzu kontrol etmeniz gerekebilir.


1
Bu cevap, "Google Chrome 13.10’a yükselttikten sonra başlamıyor" gibi sorunlar için de geçerlidir.
Sri

Bu aynı zamanda Dartium için de geçerlidir (gömülü Dart VM'li Chromium'un geliştirme sürümü). Bağlantıyı libudev.so.1'e karşı oluşturduğum halde, sürüm değiştirirse bağlantı hala devam ediyor, ancak bundan emin değilim. Söyleyebileceğim tek şey benim için çalıştığını. Kubuntu 14.10.
user69112

2
Bu kötü bir fikir: Chrome için işe yarıyor, ancak Ubuntu'dan gelmeyen diğer programları bozabilir - bir hata mesajı almak yerine sessiz veri bozulmalarına neden olabilirsiniz.
Gilles 'SO- kötülükten

Bu benim için çalışıyor
Sungguk Lim
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.