แก้ไข “กระบวนการย่อย /usr/bin/dpkg ส่งคืนรหัสข้อผิดพลาด (1)”
ไม่ใช่เรื่องแปลกที่จะพบปัญหาแพ็คเกจที่ใช้งานไม่ได้ใน Ubuntu และการแจกแจงแบบ Debian อื่นๆ บางครั้ง เมื่อคุณอัพเกรดระบบหรือติดตั้งแพ็คเกจซอฟต์แวร์ คุณอาจพบข้อผิดพลาด 'กระบวนการย่อย /usr/bin/dpkg ส่งคืนรหัสข้อผิดพลาด'
วลีสำคัญในข้อผิดพลาดนี้คือ /usr/bin/dpkg ซึ่งชี้ไปที่ตัวติดตั้งแพ็คเกจ dpkg ที่ใช้ใน Linux โปรแกรมติดตั้งแพ็คเกจจะจัดการซอฟต์แวร์ การอัพเดต และการขึ้นต่อกัน หากเกิดความเสียหาย การพยายามติดตั้งซอฟต์แวร์ใหม่อาจทำให้เกิดข้อความแสดงข้อผิดพลาดนี้ได้
ตัวอย่างเช่น เมื่อไม่นานมานี้ ฉันพยายามอัปเกรดเป็น Ubuntu 22.04 และพบข้อผิดพลาด dpkg ดังที่แสดงด้านล่าง
Errors were encountered while processing:
google-chrome-stable
E: Sub-process /usr/bin/dpkg returned an error code (1)
สิ่งนี้บ่งชี้ว่าแพ็คเกจ google-chrome-stable เสียหายหรือเสียหาย มีวิธีแก้ไขปัญหานี้บางประการ ดังนั้นอย่าเพิ่งทิ้งผ้าเช็ดตัวหรือทิ้งระบบของคุณ
การแก้ไขกระบวนการย่อย /usr/bin/dpkg ส่งคืนรหัสข้อผิดพลาด (1)
มาแก้ไขปัญหาด้วยข้อผิดพลาดแพ็คเกจที่เสียหายนี้ ฉันจะแนะนำคุณผ่านวิธีการต่างๆ โดยเริ่มจากวิธีที่ง่ายกว่า ขั้นตอนเริ่มต้นเหล่านี้ตรงไปตรงมาและไม่ต้องใช้ความพยายามมากนัก
วิธีที่ 1: การกำหนดค่าฐานข้อมูลแพ็คเกจ dpkg ใหม่
สาเหตุหนึ่งของข้อผิดพลาดนี้คือฐานข้อมูลแพ็คเกจ dpkg ที่เสียหาย สาเหตุนี้อาจเกิดจากการหยุดชะงักของการติดตั้งแพ็คเกจซอฟต์แวร์อย่างกะทันหัน การกำหนดค่าฐานข้อมูลใหม่เป็นวิธีหนึ่งในการแก้ไขปัญหานี้
หากต้องการทำสิ่งนี้ เพียงดำเนินการคำสั่ง:
sudo dpkg --configure -a
นี่เป็นการกำหนดค่าแพ็คเกจที่คลายแพ็กซึ่งไม่ได้ติดตั้งระหว่างกระบวนการติดตั้งใหม่
วิธีที่ 2: บังคับติดตั้งแพ็คเกจที่ยุ่งยาก
บางครั้งข้อผิดพลาดอาจเกิดขึ้นได้ระหว่างการติดตั้งแพ็คเกจซอฟต์แวร์ เมื่อเกิดเหตุการณ์เช่นนี้ คุณสามารถบังคับติดตั้งแพ็คเกจได้โดยใช้ตัวเลือก -f
ดังที่แสดง
sudo apt install -f
OR
sudo apt install --fix-broken
ตัวเลือก -f
& --fix-broken
สามารถใช้แทนกันได้เพื่อแก้ไขการขึ้นต่อกันที่เสียหายซึ่งเป็นผลมาจากแพ็คเกจที่ถูกขัดจังหวะหรือการดาวน์โหลดแพ็คเกจที่แคชไว้
วิธีที่ 3: ลบหรือล้างชุดซอฟต์แวร์ที่เสียหายหรือเสียหาย
หากวิธีแก้ไขปัญหาสองวิธีแรกไม่สามารถแก้ไขปัญหาได้ คุณสามารถลบหรือล้างชุดซอฟต์แวร์ที่มีปัญหาได้ตามที่แสดง
sudo apt remove --purge package_name
ตัวอย่างเช่น ในกรณีของฉัน การล้างข้อมูลแพ็กเกจ Google Chrome ช่วยแก้ไขปัญหาได้
sudo apt remove --purge google-chrome-stable
จากนั้นเรียกใช้คำสั่งด้านล่างเพื่อลบแพ็คเกจเก่า ที่ไม่ได้ใช้ และไม่จำเป็นออกทั้งหมด ซึ่งจะช่วยเพิ่มพื้นที่ว่างบนฮาร์ดไดรฟ์ของคุณด้วย
sudo apt clean
sudo apt autoremove
วิธีที่ 4: ลบไฟล์ทั้งหมดที่เกี่ยวข้องกับแพ็คเกจ
สุดท้ายนี้ คุณสามารถลบไฟล์ทั้งหมดที่เกี่ยวข้องกับแพ็คเกจที่มีปัญหาได้ด้วยตนเอง ขั้นแรก คุณต้องค้นหาไฟล์เหล่านี้ซึ่งอยู่ในไดเร็กทอรี /var/lib/dpkg/info ดังที่แสดง
sudo ls -l /var/lib/dpkg/info | grep -i package_name
หลังจากแสดงรายการไฟล์แล้ว คุณสามารถย้ายไฟล์เหล่านั้นไปยังไดเร็กทอรี /tmp ดังที่แสดง
sudo mv /var/lib/dpkg/info/package-name.* /tmp
หรือคุณสามารถใช้คำสั่ง rm เพื่อลบไฟล์ด้วยตนเองได้
sudo rm -r /var/lib/dpkg/info/package-name.*
สุดท้าย อัพเดตรายการแพ็คเกจตามที่แสดง:
sudo apt update
หลังจากนั้นคุณสามารถลองอีกครั้งโดยติดตั้งแพ็คเกจซอฟต์แวร์ใหม่
บทสรุป
ข้อผิดพลาด dpkg ประเภทนี้ชี้ถึงปัญหาเกี่ยวกับตัวติดตั้งแพ็คเกจ ซึ่งมักเกิดจากการหยุดชะงักของกระบวนการติดตั้งหรือฐานข้อมูล dpkg ที่เสียหาย
วิธีแก้ปัญหาที่กล่าวมาข้างต้นควรแก้ไขข้อผิดพลาดนี้ หากคุณมาไกลขนาดนี้ เราหวังว่าปัญหาจะได้รับการแก้ไขเรียบร้อยแล้ว และคุณสามารถติดตั้งแพ็คเกจซอฟต์แวร์ของคุณใหม่ได้
หากวิธีใดได้ผลสำหรับคุณ โปรดระบุว่าวิธีใดที่สามารถแก้ไขปัญหาได้ หากคุณจัดการเพื่อแก้ไขข้อผิดพลาดนี้โดยใช้วิธีอื่น โปรดแชร์เพื่อช่วยผู้อื่นที่อาจประสบปัญหาเดียวกัน