sudo: /usr/lib/sudo/sudoers.so, uid 0'a ait olmalıdır


10

Parolamı gerektiren herhangi bir şey yapmaya çalıştığımda bunu döndürür:

u7ur7l3@ubuntu:~$ sudo
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0
sudo: fatal error, unable to load plugins
u7ur7l3@ubuntu:~$

Bu yüzden Yazılım Merkezi / paket yöneticisinden hiçbir şey yükleyemiyorum veya terminalde şifremi gerektiren komutları çalıştıramıyorum. Giriş yapabilirim, ama hepsi bu kadar.

Yanlışlıkla bazı dosyaların izinlerini değiştirdim, sonra biraz daha düzeltmeye çalıştım: /. Şimdi ne yapacağım konusunda tamamen kayboldum.

Sudo tekrar pkexec kullanarak çalışmaya çalıştığınızda ne oldu:

u7ur7l3@ubuntu:~$ pkexec chown root /usr/lib/sudo/sudoers.so
Error getting authority: Error initializing authority: Error calling StartServiceByName for org.freedesktop.PolicyKit1: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/lib/dbus-1.0/dbus-daemon-launch-helper: Success 

u7ur7l3@ubuntu:~$ sudo ls
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0 sudo: fatal error, unable to load plugins

İzinleri değiştirmek için Kök Eylemlerini yunus hizmeti / eklenti olarak kullanıyordum, bu yüzden tarih bana izin değişikliklerini göstermiyor.

Sadece seslerin artık işe yaramadığını fark ettim. Phonon'a gittiğimde varsayılan ayarlarım ve çalma aygıtlarım orada bile değil. Ayrıca kapatma seçeneğim yok, sadece çıkış yapabilir veya ayrılabilirim.


Komutu çalıştırdığınızdan beri ses ve kapatma sorunu yeni pkexecmi?
Eliah Kagan

@Eliah Kagan, hayır Bilgisayarımda oturum açtığımda ses sorununu hemen fark ettim ve dün gece bilgisayarımı kapatırken kapatma sorununu fark ettim. Sadece güç düğmesini basılı tuttum.
7UR7L3

Cevabımı, hiçbiri ve PolicyKit (üzerinden ) çalışmasa bile çalışması gereken talimatları sağlamak için genişlettim . sudopkexec
Eliah Kagan

2
su kök chown -R kök: root / usr / lib /

Yanıtlar:


20

Önemli sistem dosyalarınızdan en az birinin sahipliği yanlış. Bu kötü bir şey; bu birçok sistem dosyasına olmuşsa (belki bir noktada bayrakla büyük bir sudo chownkomut çalıştırdınız -Rmı?), bir dizi başka sistem hatasına ve kararsızlığa neden olabilir. Yani yakın zamanda Ubuntu yüklü ise , siz yeniden isteyebilirsiniz Adam Heathcote önerir .

Ancak bu sorunu gidermek için yeniden yüklemeniz gerekmez . Bunun yerine, bu dosyadaki sahipliği düzeltmeniz yeterlidir. Bundan sonra diğer dosyalar hakkında hatalar alırsanız, onları da düzeltebilirsiniz (yine de hata mesajlarının ne olduğunu bize bildirmeniz gerekebilir, böylece bunları nasıl düzelteceğinizi de söyleyebiliriz).

sudoişe değil, kullanansudo olduğu biri iki yönden için yöneticiler olarak eylemleri gerçekleştirmek için root Ubuntu'da. Diğeri Polkit (eskiden PolicyKit olarak adlandırılıyordu).

Geri pkexecsahipliğini (yani, uid 0) değiştirmek için Polkit (via ) kullanan bu komutu çalıştırın :/usr/lib/sudo/sudoers.soroot

pkexec chown root /usr/lib/sudo/sudoers.so

Ardından sudotekrar kullanmayı deneyin . Gibi önemsiz bir şey çalıştırabilir ve bir hata mesajı alıp almadığınızı görebilirsiniz.sudo ls

Son olarak, çalıştırdığınız historytüm komutları ortaya çıkarmak için çalıştırmanızı öneririm . Umarım bu, çalıştırdığınız izinleri değiştirmiş olan tüm komutları listeler. sudoŞimdi çalıştığını varsayarak history, yaptığınız tüm dosya sahipliği ve izin değişikliklerini geri alma konusunda yardım almak için çıktısını içeren yeni bir soru göndermenizi öneririz .

Ya da pkexecçalışmazsa ...

Denedin pkexecve işe yaramadı. Ne sudoPolkit ne de eylemleri kök olarak gerçekleştirmenize izin vermek için çalışmadığından, kurtarma moduna önyükleme yapmanız ve bir kök kabuk almanız gerekir. Bunu yapmak Shiftiçin, bilgisayarınızı başlatırken basılı bir GRUB önyükleme menüsü aldığınızdan emin olmak için basılı tutun . Kurtarma modu sözcüklerini içeren bir giriş seçin (genellikle, bu sözcükleri içeren en üste en yakın olanı seçmelisiniz). Ardından, bir dizi seçeneğiniz olan bir menü alırsınız - bir kök kabuğa bırakma seçeneğini seçin.

Kurtarma modunda bir kök kabuğa erişimle ilgili ayrıntılı yönergeler burada:

Bir kök kabuğunuz varsa, çalıştırın:

chown root /usr/lib/sudo/sudoers.so

Dosya veya dosya sisteminin değiştirilememesi ile ilgili bir hata alırsanız, şunu okuyun:

mount -rw -o remount /

(Yeniden montaj fikrinin kaynağı ve nasıl yapılacağı: bu çoğunlukla ilgisiz cevaptır .)

Sonra bu mountkomutu çalıştırdıktan sonra, yukarıdaki chownkomutu tekrar çalıştırın ve çalışıp çalışmadığına bakın.

Kurtarma modunda işiniz bittikten sonra yeniden başlatabilirsiniz:

reboot

sudodaha sonra çalışmalı veya en azından başka bir hata vermelidir .

Son olarak, gösterdiğiniz hatalar göz önüne alındığında, birçok dosyanın artık yanlış sahipliğe veya izinlere sahip olduğunu lütfen unutmayın. Bu şekilde hangi dosyaları değiştirdiğinizi anlayabilmeniz ideal olur. Örneğin, tümünün birkaç belirli klasördeki dosyalar olduğunu anlayabiliyorsanız, karşılaştığınız son sorunların tam boyutunu düzeltmek mümkün olabilir.

Yeniden yükleme kesinlikle bir seçenektir, ancak özellikle değiştirdiğiniz tek şey sahiplikse (ve daha fazla çeşitlendikçe yeniden yapılandırılması biraz daha zor olan izinler değilse), izinleri orijinal sahiplerine tekrar tekrar tekrar ayarlamak mümkündür (muhtemelen genellikle kök ) ve hasarı tamamen tersine çevirin.

Başlarken sudoyeniden çalışmaya bir ilk adımdır. Umarım yukarıdaki teknik bunu yapmanızı sağlayacaktır.


Bu talimatları izledim ama kubuntu'ya geri döndüğümde hala sorun vardı. Aynı hata. Bu noktada, muhtemelen yeniden kurmak daha kolaydır. : /
7UR7L3

Ayrıca, böyle bir şey yapmanın herhangi bir yolu var mı : her şeyi kaydetmek için askubuntu.com/questions/9135/… ? Sahte bir komut dosyası olarak hepsi birlikte çalışmaz, çünkü sudo böyle dahil ....
7UR7L3

@ 7UR7L3 Bu, hangi paketlerin kurulu olduğu ve programlarınızın sistem çapında ayarları hakkındaki bilgilerin çoğunu yedekler . Ana dizininizin tam bir yedeğiyle birlikte, mevcut sistemi kaldırdıktan ve yeni bir sistem yükledikten sonra, işleri çoğunlukla eskisi gibi geri yüklemenizi sağlayacaktır. Lütfen her zaman gerçekten önemli olan tüm dosyaların (belgeleriniz gibi) bir yedeğine sahip olduğunuzdan emin olun. Durumunuza uygulanan bu teknik hakkında daha fazla bilgiye ihtiyacınız olduğunu fark ederseniz, yeni bir soru göndermenizi öneririm (ancak burada yorumlarda bulunmayı umursamıyorum).
Eliah Kagan

Tüm bunlarla ilgili iyi bir yol var mı? Yedekleyebileceğim 1 TB harici sürücüm var, ancak taktığımda hiçbir yerde görünmüyor. Çalıştığını göstermek için ışık yanıyor, ancak ekranda hiçbir şey değişmiyor ve yunusun hiçbir yerinde değil . Sonra bir kez o çalışma olsun her şeyi ona kaydetmek için nasıl gitmek gerekir. Paket yöneticisinde, kurulu paketleri bir metin belgesine kaydedebilirdim, ancak bilgi kaydetmek için yapmayı düşündüm. Hemen hemen tüm diğer çözümler hala işe yaramayan sudo içerir.
7UR7L3

@ 7UR7L3 Dosyaları yedeklemek için mi? Canlı bir CD / DVD veya canlı USB'den önyükleme yapın. Dosyalarınıza oradan erişebilir ve harici sürücünüze yedekleyebilirsiniz. Harici sürücünüz de canlı sistemde görünmüyorsa, bu size yardımcı olamayacağım ve neredeyse kesinlikle yorumların sınırları içinde olamadığım tamamen ayrı bir sorundur. Bu durumda, yeni bir soru göndermenizi öneririm. Burada yeni soruya bir bağlantıyla yorum yaparsanız, ona baktığımdan ve yapabiliyorumsa katkıda bulunacağımdan emin olacağım.
Eliah Kagan
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.