Fedora 23 - ฉันสามารถลบไฟล์ใน / var / cache / PackageKit / metadata / อัพเดท / แพ็คเกจได้อย่างปลอดภัยหรือไม่?


57

ฉันสังเกตว่าโฟลเดอร์ที่อ้างอิงในหัวเรื่องนั้นใช้เวลาถึง 1.5 GB ฉันสามารถเรียกใช้ด้านล่างเพื่อล้างโดยไม่ทำให้ระบบของฉันเสียหายถาวรหรือไม่

rm -rf /var/cache/PackageKit/metadata/updates/packages/*

คำตอบ:


74

จากการอภิปรายในข้อผิดพลาดที่เชื่อมโยงในคำตอบของ Daniel Bruno .. คุณสามารถกำจัดไฟล์เหล่านี้ได้โดยใช้ PackageKit console clientpkcon

$ sudo pkcon refresh force -c -1

ใช้เวลาพอสมควร แต่ PackageKit จัดหามาเอง (และคุณอาจตั้งค่างาน cron สำหรับมัน)

จากหน้าคนของpkcon (1)

   refresh [force]
       Refresh the cached information about available updates.

และ

   -c, --cache-age AGE
       Set the maximum acceptable age for cached metadata, in seconds. Use -1 for 'never'.

ดังนั้นสิ่งนี้บอกให้ PackageKit ลบข้อมูลแคช (รีเฟรชข้อมูลแคชด้วยอายุที่ยอมรับได้สูงสุด: ไม่เลย)

การอ้างอิง:


1
คำสั่งนี้ทำอะไร
Anatoly techtonik

1
@anatoly คำตอบอัปเดตเพื่อแสดงคำอธิบายพื้นฐานของคำสั่งจาก man page pkcon (1)
Mahmoud Mostafa

1
@erik แก้ไขเพื่อแสดงลิงก์อ้างอิง
Mahmoud Mostafa

2
ดังนั้นฉันจึงรันคำสั่งในคำตอบและมันก็แยกออกไปชั่วขณะหนึ่ง แต่ฉันก็ยังเหลือที่ใช้มากกว่า 3.5 GB ใน/var/cache/PackageKitไดเรกทอรีของฉัน ฉันพลาดอะไรไป
Mark Edington

5
คำสั่ง pkcon ตามที่กำหนดจะไม่ลบแพ็กเกจที่ดาวน์โหลดที่แคชไว้ ปัญหาจะเลวร้ายยิ่งขึ้นถ้าคุณมีระบบที่ผ่านการอัพเกรดหลายระบบ ในกรณีของฉันฉันไปจาก Fedora 23-> 24-> 25 ฉันก็ใช้dnfไปเหมือนกัน ฉันมี 3 ไดเรกทอรีเพิ่มเติม (23, 24, 25)) ภายใต้/var/cache/PackageKitว่าทั้งหมดมีไฟล์ rpm ฉันคิดว่าตัวเลือกจริงของฉันเท่านั้นที่นี่คือการลบด้วยตนเอง ณ จุดนี้
Mark Edington

17

PackageKit ถูกใช้โดย GNOME หากคุณใช้ Yum หรือ DNF บน CLI คุณไม่จำเป็นต้องใช้สิ่งเหล่านี้ คุณสามารถลบไฟล์. rpm ใน/var/cache/PackageKit/metadata/updates/packagesและตั้งค่า PackageKit ให้ไม่เก็บไฟล์ไว้อีกต่อไป

มีการตั้งค่าในไฟล์ /etc/PackageKit/PackageKit.conf

# Keep the packages after they have been downloaded
#KeepCache=false

ในฐานะที่เป็น root ให้ลบเครื่องหมายแฮชบนตัวเลือกการกำหนดค่านี้และแพคเกจจะไม่ถูกบันทึกไว้


3
หากคุณอัปเกรดจากระบบปฏิบัติการรุ่นก่อนหน้าเช่น Fedora 23-> 24-> 25 คุณจะต้องลบ RPM ในไดเรกทอรีแคชที่มีหมายเลขดังนี้: / var / cache / PackageKit / 24 / var / cache / PackageKit / 23 / var / cache / PackageKit / 25
Mark Edington

1
แนวคิดนี้มาจากความคิดเห็นนี้ในรายชื่อผู้รับจดหมายของ fedora แต่มันไม่ได้ผลเช่น/var/cache/PackageKitสารบบของฉันยังคงเติบโต นั่นหมายความว่า: ไม่ทำงานทั้งใน Fedora 24 และ ณThomas Muellerหรือ Fedora 25.
erik

15

ใช่คุณสามารถลบแพ็คเกจเหล่านี้ได้อย่างปลอดภัย แพ็คเกจเหล่านี้ใช้เป็นแคชโดย Packagekit เท่านั้น

Ref: https://bugs.freedesktop.org/show_bug.cgi?id=80053


1
ดูข้อผิดพลาดนี้: bugzilla.redhat.com/show_bug.cgi?id=1306992
erik

4
ดูเหมือนว่านี่เป็นวิธีเดียวที่จะลบแพ็กเกจออกจาก/var/cache/PackageKit/24หรือ/var/cache/PackageKit/25ไดเรกทอรีหลังจากอัปเกรดเป็น Fedora 26 pkconจากคำตอบที่ยอมรับแล้วจะไม่ลบออก
ks1322

1
ใช่. ฉันพบว่าฉันมีแคชจาก Fedora 23 - 27 และ Hawkey การรันคำสั่งใน pkcon ดูเหมือนว่าจะลดการใช้งานจาก 23 GB เป็น 20 GB ดังนั้นฉันจึงสิ้นสุดการทำ rm -rf จากนั้นจึงรันคำสั่ง pkcon เพื่อให้แน่ใจว่าชุดแพ็คเกจมีค่าต่ำสุดที่จำเป็นในการทำงาน
user6856

12

หากไม่ได้ใช้ PackageKit เพื่ออัปเดต (แต่ dnf) ควรพิจารณาปิดใช้งานการดาวน์โหลดอัตโนมัติ PackageKit เนื่องจาก PackageKit จะล้างแคชเมื่อใช้เพื่อติดตั้งการอัปเดตเท่านั้น:

gsettings set org.gnome.software download-updates false

ฉันคิดว่าการดาวน์โหลดอัตโนมัติควรเลือกใช้แทนการไม่เข้าร่วม

https://www.lguruprasad.in/blog/2015/05/13/disabling-automatic-download-of-software-updates-in-gnome-3-14-on-debian-jessie/

https://bugzilla.gnome.org/show_bug.cgi?id=768632


ฉันจะลองอันนี้ มาดูกันว่ามันใช้งานได้ไหม ฉันทำสิ่งนี้ด้วยsudoเช่นในฐานะผู้ใช้รูท
erik

7

pkcon refresh force -c -1แก้ปัญหาไม่ได้ทำงานให้ฉันตั้งแต่มีรุ่น Fedora หลายในการปลุกในเส้นทางการปรับรุ่นของฉัน ฉันแก้ไขปัญหาพื้นที่อย่างสร้างสรรค์โดยdnf clean all --releasever=xxxที่ xxx เป็นเวอร์ชันเก่าที่จำเป็นต้องล้างออก มันทำความสะอาดพื้นที่ประมาณ 8 กิ๊กสำหรับรุ่นก่อนหน้า


2

pkcon refresh [force]คำสั่งที่กำหนดในคำตอบที่ได้รับการยอมรับการทำงาน แต่ที่สำคัญเฉพาะสำหรับเก็บที่เปิดใช้งานอยู่ในปัจจุบัน มันไม่ได้ลบไฟล์ที่ไม่จำเป็นในแคชสำหรับที่เก็บข้อมูลเก่าอีกต่อไปโดยเฉพาะอย่างยิ่งสำหรับเวอร์ชันการแจกจ่ายเก่า สามารถลบได้อย่างปลอดภัยด้วยตนเอง (หากคุณต้องการลบโดยใช้จริงๆpkconแล้วก็pkcon repo-enable [reponame]; pkcon fresh force; pkcon repo-disable [reponame]สามารถทำงานได้)


0

ฉันได้รับคำเตือนเกี่ยวกับพื้นที่เก็บข้อมูลเมื่อทำการบูท Fedora25 บนเครื่องเสมือนของฉัน ฉันได้ปฏิบัติตามวิธีแก้ไขปัญหาข้างต้นเพื่อแก้ไขไฟล์ /etc/PackageKit/PackageKit.conf และไม่ใส่เครื่องหมาย # KeepCache = false line และบันทึกไฟล์ จากนั้นฉันก็รัน cmd ต่อไปนี้: pkcon refresh force -c -1 แต่ยังมีไฟล์ที่ไม่ต้องการใน / var / cache / PackageKit / ดังนั้นฉันจึงรัน rm -r -f / var / cache / PackageKit / * ที่บรรทัดคำสั่งเพื่อลบ ไฟล์แคชเหล่านี้ ฉันเริ่ม Fedora และ Voila ใหม่! ไม่มีข้อผิดพลาดเพิ่มเติม !!

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