Pertanyaan systemd-resolve penggunaan cpu tinggi setelah diperbarui ke 17.04


Saya baru-baru ini meningkatkan Xubuntu dari 16.10 menjadi 17.04.

Setiap hal bekerja dengan baik kecuali systemd-resolve. beberapa kali itu membuat penggunaan CPU terlalu tinggi dan saya tidak tahu mengapa masalah ini telah terjadi.

Dan inilah dia top keluaran perintah:

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                               
  1114 systemd+  20   0   51532   6744   4504 R   100  0.0   9:51.67 systemd-resolve                       
  1152 dnsmasq   20   0   64360   2892   2480 R  38.9  0.0   4:05.53 dnsmasq                               
  1245 root      20   0  376644  89644  64436 S   1.7  0.5   0:35.69 Xorg                                  
  1624 asus      20   0  370160  45820  28488 S   0.7  0.3   0:00.90 python2                               
  2238 asus      20   0 2562816 553112 128492 S   0.7  3.4   2:41.20 firefox                               
    16 root      20   0       0      0      0 S   0.3  0.0   0:01.05 ksoftirqd/1                           
   708 root     -51   0       0      0      0 S   0.3  0.0   0:01.20 irq/95-ELAN1000                       
  1302 root     -51   0       0      0      0 S   0.3  0.0   0:03.68 irq/142-nvidia                        
  1734 asus      20   0  483388  11060   8560 S   0.3  0.1   0:05.45 conky                                 
  2820 root      20   0       0      0      0 S   0.3  0.0   0:00.14 kworker/5:1                           
  3420 asus      20   0   53384   3932   3200 R   0.3  0.0   0:00.76 top                                   

Saya tidak tahu mengapa masalah ini telah terjadi, tetapi biasanya itu terjadi ketika menjalankan beberapa perintah seperti sudo apt update .

(Saya menggunakan tor dan obfs4proxy, Ini mungkin membantu untuk menjawab)


22
2018-04-27 14:50


asal




Jawaban:


Saya memiliki konflik serupa antara systemd-resolve dan dnsmasq pada port 53.

https://unix.stackexchange.com/questions/304050/how-to-avoid-conflicts-between-dnsmasq-and-systemd-resolved

dan

https://github.com/systemd/systemd/pull/4061

membuat saya menambahkan DNSStubListener=no di /etc/systemd/resolved.conf lalu sudo service systemd-resolved restart.


31
2018-04-27 15:47



Ini berhasil, tetapi kemudian saya tidak memiliki DNS dan tidak dapat mengakses situs web dengan nama. - abalter
@ Ahalter Masalah saya secara khusus merupakan loop antara systemd-resolve dan dnsmasq, jadi mematikan satu bekerja untuk saya. Jika Anda masih mengalami masalah ini, saya ingin tahu apa yang Anda miliki top terlihat seperti dan jika itu mengungkapkan loop antara systemd-resolve dan utilitas lain sebagai gantinya. - MetricMike
Ya, lakukan ini resolved melakukan hal yang sama dengan dnsmasq? Haruskah kita menonaktifkan salah satu dari mereka untuk selamanya? Karena tidak masuk akal untuk memiliki dua resolver dns lokal (saya masih belum yakin tentang satu TBH tetapi saya memutuskan untuk mengikuti arus dan tidak menyesuaikan konfigurasi saya) - Ivan Anishchuk
omg ... rasanya enak sekali. membungkam kipas cpu saya instan saya restart sistemd-diselesaikan ... tapi sekarang krom tampaknya spiking ke 100? - Jonny Asmar
Yeh - solusi ini tampaknya memiliki efek samping yang tidak diinginkan (termasuk membunuh thunderbird) ... Lihat jawaban di bawah ini dari markackerman untuk trik yang berhasil bagi saya. - Jonny Asmar


Masalah yang Disebabkan dengan Aplikasi lain (teamViewer dalam kasus saya)

Disarankan oleh yang lain Langkah-langkah solusi

Tambahkan baris DNSMASQ_EXCEPT=lo untuk /etc/default/dnsmasq

sudo nano /etc/default/dnsmasq

Mulai ulang dnsmasq melalui

sudo service systemd-resolved restart

Ucapkan Terima kasih Jika saya membantu, Ini kembali ke normal dan TIDAK berkutat dengan aplikasi lain, seperti metode DID sebelumnya.

Ceria, Mark


16
2017-10-23 23:42



sudo nano bukan cara untuk mengedit konfigurasi, sudoedit sebaiknya digunakan sebagai gantinya. Dan systemctl adalah cara untuk me-restart layanan dengan systemd. Di atas segalanya, itu tidak bekerja untuk saya, saya masih melihat penggunaan CPU 100%. - Ivan Anishchuk
Dan bukankah ini secara efektif menonaktifkan dnsmasq? Mengapa tidak menonaktifkannya sepenuhnya? - Ivan Anishchuk


systemd-resolved menjadi gila ketika seseorang memodifikasi file /etc/resolv.conf, yang dimaksudkan untuk menunjuk ke alamat mendengarkan sendiri 127.0.0.53.

Seseorang itu dapat berupa skrip apa pun yang dipicu oleh aktivitas jaringan (VPN muncul, atau turun, DHCP, dll.)

Jika Anda mengatur nameserver kembali ke 127.0.0.53, maka sistemd-diselesaikan akan "tenang" beberapa detik kemudian.

Dengan asumsi bahwa setiap orang menghormati aturan, dan hanya menggunakan resolvconf untuk memodifikasi konfigurasi resolver, Anda juga dapat melakukan ini:

Berkas /etc/resolvconf/interface-order menentukan urutan di mana server nama akan digunakan, tergantung pada antarmuka jaringan yang diterima.

Jika Anda menambahkan entri untuk systemd-resolved di bagian atas file, itu akan selalu dianggap pertama dan file tersebut tidak akan dimodifikasi.


7
2017-11-02 17:12



Jadi, kedua jawaban di atas akhirnya gagal pada akhirnya. Tapi yang satu ini berperilaku seperti yang diprediksi. Kembali resolv.conf saya (nameserver ditetapkan ke 127.0.0.1 untuk beberapa alasan). Bahkan tidak perlu me-restart sistem dan hal-hal berhenti lagi. Melihat proses saya sekarang, dnsmasq tidak lagi beraksi, di mana seharusnya! INI seharusnya menjadi jawaban yang diterima. Terima kasih @xalkina! - Jonny Asmar
Masalah ini sepertinya kembali setelah reboot ... Setiap ide apa yang akan saya modifikasi resolv.conf? - Jonny Asmar
Solusi ini juga berfungsi untuk saya (sementara dua di atas tidak) - Alex Hoppus


Saya memiliki Masalah yang sama pada 18.04. systemd-resolved dan dnsmasq cenderung berputar. Saya memecahkannya dengan cara ini:

Tambahkan atau hapus tanda komentar pada baris berikut di /etc/default/dnsmasq:

IGNORE_RESOLVCONF=yes

Buat milik Anda sendiri resolv file (/etc/resolv.personal) untuk menentukan server nama. Anda dapat menggunakan nameserver apa pun di sini. Saya mengambil dua dari OpenNIC.

nameserver 5.132.191.104
nameserver 103.236.162.119

Di /etc/dnsmasq.conf tambahkan atau hapus tanda komentar pada baris berikut:

resolv-file=/etc/resolv.personal

Kemudian restart dnsmasq dan nonaktifkan resolver default: systemd-resolved.

sudo service dnsmasq restart
sudo systemctl stop systemd-resolved
sudo systemctl disable systemd-resolved

2
2017-08-22 20:45