ค้นหาเว็บไซต์

แก้ไข “กระบวนการย่อย /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 ที่เสียหาย

วิธีแก้ปัญหาที่กล่าวมาข้างต้นควรแก้ไขข้อผิดพลาดนี้ หากคุณมาไกลขนาดนี้ เราหวังว่าปัญหาจะได้รับการแก้ไขเรียบร้อยแล้ว และคุณสามารถติดตั้งแพ็คเกจซอฟต์แวร์ของคุณใหม่ได้

หากวิธีใดได้ผลสำหรับคุณ โปรดระบุว่าวิธีใดที่สามารถแก้ไขปัญหาได้ หากคุณจัดการเพื่อแก้ไขข้อผิดพลาดนี้โดยใช้วิธีอื่น โปรดแชร์เพื่อช่วยผู้อื่นที่อาจประสบปัญหาเดียวกัน