[Bug 1001189] Re: 'man' command fails with lseek error
Nathan Stratton Treadway
ubuntu.lp at nathanst.com
Sun May 20 18:57:40 UTC 2012
On Sun, May 20, 2012 at 18:27:11 -0000, Paul Crawford wrote:
> The $PATH variables are different, with the 12.04 (32-bit) system having
> /packages/local/bin included in the list. If I remove that from the
> 12.04 system it then avoids the /packages/local/share/man/index.db file
> and it works.
Cool. (See below.)
> However, if I add /packages/local/bin to the 10.04 system (64-bit, in
> case it matters) it takes noticeably longer to present the page, and it
> reads the /packages/local/share/man/index.db file (according to strace),
> but it still works!
Out of curiousity: does the strace show that after opening at the
/packages/.../index.db file man proceeds to open the
/var/cache/.../index.db file before showing you the man page?
(Also, does the strace show the same "lseek" after the
/packages/.../index.db open() call as the one you reported earlier on
Precise?)
Finally, are you able to open any of the man pages found under
/packages/.../man/ ? (Just wondering if that index.db file is actually
usable by e.g. the Lucid machine, or if it also treats it as corrupt but
just fails more gracefully somehow.)
Anyway, here's a quote from the
/usr/share/doc/man-db/man-db-manual.txt.gz file that describes the $PATH-
to-manpath mapping (and I think explains the behavior that you found):
Assuming that a $PATH exists, each path element it contains is
scanned for in the config file. If found, the corresponding manpath
element is appended to the internal manpath. However, if the element
is not mentioned in the config file, a man directory relative to it
will be sought. The subdirectories ../man, man, ../share/man, or
share/man relative to the path component are appended to the internal
manpath if they exist.
Running the "manpath" command (or "man --path" in the Precise version of
man-db) will print out the auto-generated manpath search list.
Nathan
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to man-db in Ubuntu.
https://bugs.launchpad.net/bugs/1001189
Title:
'man' command fails with lseek error
Status in “man-db” package in Ubuntu:
New
Bug description:
When trying to look up the on-line documentation using the 'man'
command it fails on 12.04 with lseek error. For example:
$ man resolvconf
gdbm fatal: lseek error
This lseek error applies to other requests as well (e.g. ls, fdisk,
etc). System information is:
$ lsb_release -rd
Description: Ubuntu 12.04 LTS
Release: 12.04
apt-cache policy man
man:
Installed: (none)
Candidate: (none)
Version table:
However, it is installed since it runs as a command, and I find:
$ which man
/usr/bin/man
$ man --version
man 2.6.1
What I expect is to read the manual page appropriate to the
command/program, and not get a software error.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/man-db/+bug/1001189/+subscriptions
More information about the foundations-bugs
mailing list