appstreamcli ค้างอยู่กับการใช้งาน CPU 100% ระหว่างการอัพเดท


76

appstreamcliร้อนเกินไปแล็ปท็อปของฉันโดยใช้ 100% ของแกนอย่างต่อเนื่อง ทางออกเดียวของฉันคือฆ่ามัน นี่คือภาพหน้าจอของtop:

การส่งออกของด้านบนแสดง appstreamcli กับการใช้งาน CPU 100%

ฉันจะฆ่าappstreamcliด้วยหรือ แต่เมื่อฉันทำแล้วกระบวนการจะกลับมาอีกครั้งและหยุดการอัปเดต ถ้าฉันฆ่ามันฉันจะได้ผลลัพธ์ต่อไปนี้:sudo kill pidsudo killall appstreamclisudo apt updateappstreamcli

Reading package lists... Done
E: Problem executing scripts APT::Update::Post-Invoke-Success
'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli;
 then appstreamcli refresh > /dev/null;
 fi'
E: Sub-process returned an error code

กระบวนการนี้คืออะไรและเหตุใดจึงใช้ CPU มาก


2
มันเป็นข้อผิดพลาด ดูคำถามนี้: askubuntu.com/questions/774918/…
Alwaysask

9
68 องศาเป็นอุณหภูมิที่ดีในการปรุงไข่ แต่คุณจะต้องใช้อุณหภูมิที่สูงกว่ามากในการปรุงแล็ปท็อป
Michael Hampton

@MichaelHampton แล็ปท็อปของฉันได้รับการปรุงเมื่อกระบวนการเคอร์เนลโง่ใช้เวลา CPU เพิ่มขึ้นถึง 100 องศาเซลเซียสอย่างง่ายดาย จากนั้นจะปิดสวิตช์
แมว

@cat Right 100 เป็นเลขอาถรรพ์ที่แล็ปท็อปของคุณกำลังทำอาหารอยู่ อาจจะคุ้มค่าที่จะทำความสะอาดพัดลมและทำซ้ำการระบายความร้อนบนซีพียู
Michael Hampton

@MichaelHampton 100 เป็นหมายเลขเวทย์มนตร์ที่ซีพียูบอกว่า"ฉันปิดเครื่องไม่เช่นนั้นฉันจะหยุดและจับไฟ !!!" . พัดลมสะอาดและแผ่นระบายความร้อนใหม่มันเก่า
แมว

คำตอบ:


78

ปัญหานี้เกิดจากข้อผิดพลาดhttps://bugs.launchpad.net/ubuntu/+source/appstream/+bug/1579712
วิธีแก้ปัญหาการทำงาน (ลองเอง):

การฆ่าครั้งแรกappstreamcliไม่ว่าจะด้วยตนเองหรือด้วย

sudo kill -KILL $(pgrep appstreamcli)

หรือ

sudo pkill -KILL appstreamcli

แล้ว:

wget -P /tmp https://launchpad.net/ubuntu/+archive/primary/+files/appstream_0.9.4-1ubuntu1_amd64.deb https://launchpad.net/ubuntu/+archive/primary/+files/libappstream3_0.9.4-1ubuntu1_amd64.deb
sudo dpkg -i /tmp/appstream_0.9.4-1ubuntu1_amd64.deb /tmp/libappstream3_0.9.4-1ubuntu1_amd64.deb

หลังจากนี้คุณจะสามารถดำเนินการอัปเดต apt-get ได้ตามปกติ


12
ปัญหาของฉันแน่นอน แต่ appstreamcli คืออะไรโดยวิธี?
Charles-Antoine Fournel

17
ระวังใช้งานได้กับระบบ 64 บิต; บน 32 บิตคุณมีการเปลี่ยนแปลงamd64ไปi386ในการเชื่อมโยง
Rmano

1
ในการดำเนินการหลังจากsudo kill {pid}ผ่าน"ข้อผิดพลาด" ฐานข้อมูลสถานะ dpkg ถูกล็อคโดยกระบวนการอื่น "
Andrea

ปัญหาคือว่า appstreamcli ถูกเรียกใช้เป็น root ดังนั้นการข้ามการล็อกฐานข้อมูลเพียงทำ: sudo killall appstreamcli
wasp

2
เนื่องจากข้อผิดพลาดนี้ปรากฏตัวในโอกาสที่หายากมาก (ตามคำอธิบาย) การแก้ไขจึงต้องมีการทดสอบผ่านกรณีทดสอบ การรันsudo appstreamcli refresh --forceโดยไม่หยุดการทำงาน จะเป็นการยืนยันว่าโปรแกรมแก้ไขทำงานได้หรือไม่ มันใช้งานได้สำหรับฉัน ขอบคุณสำหรับการแก้ปัญหา!
nolexa

2

อีกทางหนึ่งด้วยเหตุผลอะไรก็ตามหากคุณไม่ต้องการติดตั้งแพ็กเกจ repo นอกระบบและรอการอัพเดทคุณสามารถถอนการติดตั้งได้อย่างสมบูรณ์

สิ่งนี้จะลบ Discover ใน KDE: พลาสมาดังนั้นฉันคิดว่ามันจะลบซอฟต์แวร์ Gnome หรือสิ่งที่ Ubuntu Flavor ของคุณเพิ่มเข้ามา หากเป็นกรณีนี้คุณสามารถใช้ Muon บน Kubuntu หรือ Synaptic บน GTK based DEs

ก่อนที่จะเรียกใช้ให้แน่ใจว่าคุณตรวจสอบแพคเกจที่ถูกลบออกเพื่อให้แน่ใจว่าเป็นที่ตกลงกับคุณ

คุณสามารถคิดได้ว่ามีอะไรบางอย่างเกิดขึ้นเมื่อทำงาน

apt show appstream

เพื่อถอนการติดตั้งแอปสตรีมรัน

sudo apt remove appstream
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.