[Bug 984523] Re: apt_pkg.Cache() E: Read error - read (21: is a directory)
Julian Andres Klode
juliank at ubuntu.com
Sun Mar 16 18:46:48 UTC 2014
I need more information for this, as I cannot reproduce this.
If this is still reproducible running
find /var/{lib,cache}/apt /var/lib/dpkg/status | xargs ls -ld
inside the chroot would help (or changing the absolute paths to prepend the chroot path)
because some file must be a directory
** Changed in: python-apt (Ubuntu)
Status: New => Incomplete
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to python-apt in Ubuntu.
https://bugs.launchpad.net/bugs/984523
Title:
apt_pkg.Cache() E: Read error - read (21: is a directory)
Status in “python-apt” package in Ubuntu:
Incomplete
Bug description:
Ubuntu Release:
12.04 precise beta 2
Description: Ubuntu precise (development branch)
Release: 12.04
Up to date as of 0100h GMT 18/4
$ apt-cache policy python-apt
python-apt:
Installed: 0.8.3ubuntu6
Candidate: 0.8.3ubuntu6
Version table:
*** 0.8.3ubuntu6 0
500 http://gulf/au.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
100 /var/lib/dpkg/status
===========================
Attempting to use python-apt to manipulate a debootstrapped precise chroot - when I attempt to get a cache object from the chroot, the following error occurs:
cache = apt_pkg.Cache(apt.progress.base.OpProgress())
SystemError: E:Read error - read (21: Is a directory), E:The package lists or status file could not be parsed or opened.
Extra testing:
* The same code functions perfectly on an 11.04 host with a debootstrapped precise chroot
* The same error appears on a 12.04 host with a debootstrapped oneric (11.10) chroot
* chrooting in with a bash shell and executing apt commands works
To replicate,
* on a precise host, debootstrap a precise or oneiric chroot
* start a python shell
>>> import apt_pkg
>>> import apt
>>> apt_pkg.init_config()
>>> apt_pkg.config.set('RootDir', '/path/to/chroot')
>>> apt_pkg.config.set('APT::Architecture', '<your chroot arch>')
>>> apt_pkg.init_system()
>>> apt_pkg.Cache(apt.progress.base.OpProgress())
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
SystemError: E:Read error - read (21: Is a directory), E:The package lists or status file could not be parsed or opened.
>>> apt.progress.base.OpProgress()
<apt.progress.base.OpProgress object at 0x7fba202c8b10>
>>> apt_pkg.Cache()
Reading package lists... Error!
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
SystemError: E:Read error - read (21: Is a directory), E:The package lists or status file could not be parsed or opened.
>>>
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-apt/+bug/984523/+subscriptions
More information about the foundations-bugs
mailing list