Friday, November 27, 2009

E: Sub-process /usr/bin/dpkg returned an error code (1)

  • เมื่อวานนั่งหาโปรแกรมจัดการพาสเวิร์ดบน Ubuntu Software Center ไปเจอหลายตัวเลย
  • เช่น Password Gorilla, Password Manager, Revelation Password Manager, KeePassX และอื่นๆ อีกค่อนข้างเยอะ
  • ที่น่าใช้ก็ Password Gorilla และ KeePassX บน windows 7 ก็ใช้ KeePass 2.x อยู่เลย
  • เพราะว่า 2 ตัวนี้จะมีการสร้างไฟล์ฐานข้อมูลทำให้เก็บไฟล์นี้ไปใช้กับเครื่องอื่นๆ ได้ ส่วนที่เหลือใช้ไม่เป็นหว่า
  • ที่นี้ก็จะทำการถอนโปรแกรมตัวอื่นที่ลองแล้วไม่ถูกใจออก จัดการเลย Revelation ตัวแรก ผ่าน Ubuntu Software Center
  • ปัญหาก็เกิดขึ้น error ขณะถอนซะงั้น เปลี่ยนไปถอนผ่าน Synaptic ก็แล้ว สั่งผ่าน 'apt-get remove revelation' ก็ error
jui@HOST:~/Desktop$ sudo apt-get remove revelation
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
cracklib-runtime libcrack2
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
revelation
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 1,724kB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 174654 files and directories currently installed.)
Removing revelation ...
Traceback (most recent call last):
File "/usr/bin/pycentral", line 2196, in <module>
main()
File "/usr/bin/pycentral", line 2190, in main
rv = action.run(global_options)
File "/usr/bin/pycentral", line 1645, in run
pkg = DebPackage('package', self.args[0], oldstyle=False)
File "/usr/bin/pycentral", line 381, in __init__
self.read_pyfiles()
File "/usr/bin/pycentral", line 414, in read_pyfiles
self.pkgconfig.set('pycentral', 'include-links', '0')
File "/usr/lib/python2.6/ConfigParser.py", line 669, in set
ConfigParser.set(self, section, option, value)
File "/usr/lib/python2.6/ConfigParser.py", line 377, in set
raise NoSectionError(section)
ConfigParser.NoSectionError: No section: 'pycentral'
dpkg: error processing revelation (--remove):
subprocess installed pre-removal script returned error exit status 1
Traceback (most recent call last):
File "/usr/bin/pycentral", line 2196, in <module>
main()
File "/usr/bin/pycentral", line 2190, in main
rv = action.run(global_options)
File "/usr/bin/pycentral", line 1481, in run
pkg = DebPackage('package', self.args[0], oldstyle=False)
File "/usr/bin/pycentral", line 381, in __init__
self.read_pyfiles()
File "/usr/bin/pycentral", line 414, in read_pyfiles
self.pkgconfig.set('pycentral', 'include-links', '0')
File "/usr/lib/python2.6/ConfigParser.py", line 669, in set
ConfigParser.set(self, section, option, value)
File "/usr/lib/python2.6/ConfigParser.py", line 377, in set
raise NoSectionError(section)
ConfigParser.NoSectionError: No section: 'pycentral'
dpkg: error while cleaning up:
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
revelation
E: Sub-process /usr/bin/dpkg returned an error code (1)
  • ใช้ 'apt-get -f install' and/or 'dpkg --configure --pending' แล้วสั่ง remove ตัวนี้ยังไงก็ error
  • มีกรรมจริงๆ เราก่อนหน้านี้ก็ปัญหาเรื่อง ATI Radeon พึ่งจบไปก็เจอปัญหาอื่นอีกแหละ
  • มันถอนไม่ได้เลยไม่ถอนสักพัก ที่นี้จะลงโปรแกรม และถอนโปรแกรมอื่นๆ เลย สามารถติดตั้ง หรือ ถอนได้นะ แต่จะขึ้น error เกี่ยวกับ revelation ซะงั้น
  • ทั้งที่ไม่ไปยุ่งแล้วนะ สุดท้ายก็ไปเจอวิธีแก้ error เนี๋ย
โดย
  • เข้าไปที่ /var/lib/dpkg/info and deleting everything that had that name
  • คือเข้าไปตามพาธ /var/lib/dpkg/info แล้วทำการลบไฟล์ที่ขึ้นต้นด้วย revelation ซะเลย
sudo rm -f /var/lib/dpkg/info revelation*
  • แล้วก็ตามด้วย
sudo apt-get remove revelation
  • ก็จะไม่เกิด error ดังเช่นด้านบนแหละ วิธีแก้ไขอันนี้เค้าว่า "It is THE WRONG THING to do."
Thanked: 31 Quote: Originally Posted by feral-deb View Post I had a similar problem and what i found that worked for me was going into /var/lib/dpkg/info and deleting everything that had that name You deleted the pre and post install scripts. This can very easily mean that the package will not be installed properly, and it won't be removed properly if you choose to uninstall it. It is THE WRONG THING to do.

"Using 'apt-get -f install' and/or 'dpkg --configure --pending' are what you should do. If your problems persist, try to read and understand the .postinst script for the problematic package and check for bugs reported against that packge. Failing that, ask for help and/or report a bug."
  • ไม่รู้แปลว่าไง ^^' แต่ remove ได้ไม่ error ก็พอแหละ

อ้างอิง

No comments:

Post a Comment