Bug#1805: man package problem
Package: man
Version: 2.3.10
Revision: 2
When I type "man <command>" as a user from a directory that has
a man subdirectory that I don't have write permission on I get
the following error message:
man: can't create index cache /usr/doc/./man/index.db: Permission denied
The page is then displayed okay but I can't figure out why the
system wants to create the index file.
I am using a newly installed debian 0.93R6 with kernel 1.3.30.
Below is a transcript of several such man command sequences followed
by the environment and shell variables that were set, the status
from dpkg for man and the manpath.config file.
-------------------------------------------------------------------------
Script started on Sun Nov 5 17:19:57 1995
oleta% cd ~
oleta% ls -ld . man
ls: man: No such file or directory
drwxrwxr-x 17 stuart stuart 2048 Nov 5 17:14 ./
oleta% man man > /dev/null
oleta% cd /usr
oleta% ls -ld . man
drwxr-xr-x 15 root root 1024 Nov 1 23:58 ./
drwxr-xr-x 11 root root 1024 Nov 1 22:30 man/
oleta% man man > /dev/null
man: can't create index cache /usr/./man/index.db: Permission denied
Reformatting man(1), please wait...
oleta% cd /usr/doc
oleta% ls -ld . man
drwxr-xr-x 81 root root 2048 Nov 5 17:03 ./
drwxr-xr-x 2 root root 1024 Nov 1 22:29 man/
oleta% man man > /dev/null
man: can't create index cache /usr/doc/./man/index.db: Permission denied
oleta% cd /etc
oleta% ls -ld . man
ls: man: No such file or directory
drwxr-xr-x 24 root root 3072 Nov 4 12:34 ./
oleta% man man > /dev/null
oleta% setenv
TERM=xterm
HOME=/home/stuart
PATH=.:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
SHELL=/usr/bin/tcsh
MAIL=/var/spool/mail/stuart
LOGNAME=stuart
HOSTTYPE=i486-linux
VENDOR=unknown
OSTYPE=linux
MACHTYPE=i386
SHLVL=2
PWD=/etc
USER=stuart
GROUP=stuart
HOST=oleta
PAGER=less -e
iraf=/iraf/iraf/
oleta% set
addsuffix
argv ()
cwd /etc
dirstack /etc
echo_style both
edit
filec
gid 1000
group stuart
history 100
home /home/stuart
host oleta
owd /usr/doc
path (. /usr/local/bin /usr/bin /bin /usr/bin/X11 /usr/games)
prompt %m%
prompt2 %R?
prompt3 CORRECT>%R (y|n|e|a)?
savehist 100
shell /usr/bin/tcsh
shlvl 2
status 0
tcsh 6.06.00
term xterm
tty ttypa
uid 1000
user stuart
version tcsh 6.06.00 (Cornell) 1995-05-13 (i386-unknown-linux) options 8b,nls,dl
oleta% dpkg --status man
Package: man
Status: install ok installed
Priority: important
Section: doc
Maintainer: Alvar Bray <alvar@meiko.co.uk>
Version: 2.3.10
Revision: 2
Depends: groff
Description: Display the on-line manual.
This packages provides the man command, this utility is the primary
way of examining the on-line help files (manual pages). Other utilities
provided include the whatis and apropos commands for searching the
manual page database; the manpath utility for determining the manual
page search path and the maintenance utilities mandb, catman and
zsoelim. This packages uses the groff suit of programs to format and
display the manual pages.
oleta% uname -a
Linux oleta 1.3.30 #1 Sat Nov 4 11:56:16 PST 1995 i486
oleta% cat /etc/manpath.config
# man_db.config
#
# This file is used by the man_db package to configure the man and cat paths.
# It is also used to provide a manpath for those without one by examining
# their PATH environment variable. For details see the manpath(5) man page.
#
# Lines beginning with `#' are comments and are ignored. Any combination of
# tabs or spaces may be used as `whitespace' separators.
#
# There are three mappings allowed in this file:
# --------------------------------------------------------
# MANDATORY_MANPATH manpath_element
# MANPATH_MAP path_element manpath_element
# MANDB_MAP global_manpath [relative_catpath]
#---------------------------------------------------------
# every automatically generated MANPATH includes these fields
#
#MANDATORY_MANPATH /usr/src/pvm3/man
#
MANDATORY_MANPATH /usr/man
MANDATORY_MANPATH /usr/X11R5/man
MANDATORY_MANPATH /usr/X11R6/man
MANDATORY_MANPATH /usr/X11/man
MANDATORY_MANPATH /usr/X386/man
MANDATORY_MANPATH /usr/local/man
#---------------------------------------------------------
# set up PATH to MANPATH mapping
# ie. what man tree holds man pages for what binary directory.
#
# *PATH* -> *MANPATH*
#
MANPATH_MAP /bin /usr/man
MANPATH_MAP /usr/bin /usr/man
MANPATH_MAP /sbin /usr/man
MANPATH_MAP /usr/sbin /usr/man
MANPATH_MAP /usr/local/bin /usr/local/man
MANPATH_MAP /usr/local/sbin /usr/local/man
MANPATH_MAP /usr/bin/X11 /usr/X386/man
MANPATH_MAP /usr/X386/bin /usr/X386/man
MANPATH_MAP /usr/X11/bin /usr/X386/man
MANPATH_MAP /usr/X11R5/bin /usr/X11R5/man
MANPATH_MAP /usr/X11R6/bin /usr/X11R6/man
MANPATH_MAP /usr/games /usr/man
#---------------------------------------------------------
# For a manpath element to be considered `global' it must be mentioned
# below. Each line may have an optional extra string indicating the catpath
# associated with the manpath. The keyword 'FSSTND' indicates that the
# default FSSTND catpath location should be used. If no catpath string is
# used, the catpath will default to the given manpath.
#
# You *must* provide all `global' man paths, including alternate system
# man paths and locale specific manpaths and combinations of both, if
# they exist, otherwise `user' permissions will be used to manipulate the
# manual pages. Also, utilities like mandb will not initialise the database
# cache for any manpaths not mentioned below.
#
# Any manpaths that are `contained' within other manpaths must be mentioned
# *before* the containing manpath. E.g. /usr/man/preformat must be listed
# before /usr/man.
#
# *MANPATH* -> *CATPATH*
#
MANDB_MAP /usr/man /var/catman
MANDB_MAP /usr/local/man /var/catman/local
MANDB_MAP /usr/X386/man /var/catman/X386
MANDB_MAP /usr/X11R5/man /var/catman/X11R5
MANDB_MAP /usr/X11R6/man /var/catman/X11R6
MANDB_MAP /usr/X11/man /var/catman/X11
oleta% exit
exit
Script done on Sun Nov 5 17:35:15 1995
Reply to: