LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 01-21-2005, 05:46 PM   #1
puffinman
Member
 
Registered: Jan 2005
Location: Atlanta, GA
Distribution: Gentoo, Slackware
Posts: 217

Rep: Reputation: 31
man page access for newly added users


Hello,

I'm running Mandrake 10.1 on the 'higher' setting (it's a web server). Everything is pretty cool, except for one problem I can't figure out. New users that I add (both with useradd and adduser) cannot access man pages. Both my personal login (created at installation) and root can access all the man pages fine, but others get "No manual entry for " whatever. Even the man pages for things like ls and mkdir are not accessible. The commands themselves can be run just fine. I can su to these users as root and still not access the man pages.

I know Mandrake has quite a few built-in groups (wheel, ntools, ctools, xgrp, etc), some of which I was added to by the installation program. Are man pages part of some particular group? I tried adding a user to some of these groups but this did not help.

How can I give all users access to man pages? Is there any reason I would *not* want to do this?

Any thoughts would be much appreciated.
 
Old 01-21-2005, 06:31 PM   #2
twantrd
Senior Member
 
Registered: Nov 2002
Location: CA
Distribution: redhat 7.3
Posts: 1,440

Rep: Reputation: 52
I believe that users should have access to man pages as they do no harm. If they can't access their man pages, the most likely culprit is because MANPATH is not set.

-twantrd
 
Old 01-21-2005, 08:37 PM   #3
puffinman
Member
 
Registered: Jan 2005
Location: Atlanta, GA
Distribution: Gentoo, Slackware
Posts: 217

Original Poster
Rep: Reputation: 31
No users, including myself or root, have the MANPATH environment variable set. (I'm using bash, if it matters). It says inin /etc/man.config that if the MANPATH variable is not set, then it executes the manpath command to get the man paths. That command works fine (that is, produces the appropriate directories) for all users. So this does not appear to be the problem.

However, your post led me to the manpath man page ( it's a man, man which in turn led me to the -d option, which prints debugging info. Since I'd call this a bug, running "man -d ls" with a user who can't access the man pages yields the following:

$ man -d ls # user who can't get the page
Reading config file /etc/man.config
found man directory /usr/share/man
found man directory /usr/X11R6/man
found man directory /usr/local/man
found man directory /usr/kerberos/man
found man directory /usr/man
found manpath map /bin --> /usr/share/man
found manpath map /sbin --> /usr/share/man
found manpath map /usr/bin --> /usr/share/man
found manpath map /usr/sbin --> /usr/share/man
found manpath map /usr/local/bin --> /usr/local/man
found manpath map /usr/local/sbin --> /usr/local/man
found manpath map /usr/X11R6/bin --> /usr/X11R6/man
found manpath map /usr/bin/X11 --> /usr/X11R6/man
found manpath map /usr/bin/mh --> /usr/share/man
found manpath map /usr/kerberos/bin --> /usr/kerberos/man
found manpath map /usr/kerberos/sbin --> /usr/kerberos/man

using less as pager

path directory /sbin is in the config file
adding /usr/share/man to manpath

path directory /usr/sbin is in the config file

path directory /bin is in the config file

path directory /usr/bin is in the config file

path directory /usr/X11R6/bin is in the config file
adding /usr/X11R6/man to manpath

path directory /usr/local/bin is in the config file
adding /usr/local/man to manpath

path directory /usr/local/sbin is in the config file

adding mandatory man directories

adding /usr/man to manpath
No manual entry for ls

------------------END OUTPUT-----------------------

Here is the output for my installation-created login, which has no problem:

$ man -d ls
Reading config file /etc/man.config
found man directory /usr/share/man
found man directory /usr/X11R6/man
found man directory /usr/local/man
found man directory /usr/kerberos/man
found man directory /usr/man
found manpath map /bin --> /usr/share/man
found manpath map /sbin --> /usr/share/man
found manpath map /usr/bin --> /usr/share/man
found manpath map /usr/sbin --> /usr/share/man
found manpath map /usr/local/bin --> /usr/local/man
found manpath map /usr/local/sbin --> /usr/local/man
found manpath map /usr/X11R6/bin --> /usr/X11R6/man
found manpath map /usr/bin/X11 --> /usr/X11R6/man
found manpath map /usr/bin/mh --> /usr/share/man
found manpath map /usr/kerberos/bin --> /usr/kerberos/man
found manpath map /usr/kerberos/sbin --> /usr/kerberos/man

using less as pager

path directory /usr/local/bin is in the config file
adding /usr/local/man to manpath

path directory /bin is in the config file
adding /usr/share/man to manpath

path directory /usr/bin is in the config file

path directory /usr/X11R6/bin is in the config file
adding /usr/X11R6/man to manpath

path directory /usr/games is not in the config file
but there is a man directory nearby
adding /usr/man to manpath

path directory /home/chris/bin is not in the config file
and we found no man directory nearby

path directory /usr/java/j2sdk1.4.2_06/jre/bin is not in the config file
and we found no man directory nearby

adding mandatory man directories

using default preprocessor sequence
found tbl(1) directive

not executing command:
(cd /usr/share/man && (echo ".pl 1100i"; /usr/bin/bzip2 -c -d '/usr/share/man/man1/ls.1.bz2'; echo ".\\\""; echo ".pl \n(nlu+10") | /usr/bin/gtbl | /usr/bin/nroff -Tlatin1 -mandoc -c | less)

-----------------END OUTPUT---------------

They are the same up until near the end, after "adding mandatory man directories". A user who can access gets the "using default preprocessor sequence", but the user who can't, doesn't. Instead he gets "adding /usr/man to manpath".

I'm still not sure what's going on.
 
Old 01-22-2005, 09:58 PM   #4
puffinman
Member
 
Registered: Jan 2005
Location: Atlanta, GA
Distribution: Gentoo, Slackware
Posts: 217

Original Poster
Rep: Reputation: 31
Well this is interesting. As I suspected, the problem is group related. Mandrake creates a group, 'rpm', that provides access to the urpmi, urpmq, etc. package management tools. It is THIS group that also allows access to man pages. (Verified by creating a user that has no group memberships other than rpm and all environment variables and such the same as me... such a user can access the man pages)

This seems a little strange to me, as I don't want to give any user access to package management tools, just the man pages. So are common binaries like 'ls' and 'mkdir' initially installed by urpmq and does this limit their access? What else could explain this?
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
how can i mount newly added H.D using SuSe 9.0 elbrens Linux - Software 3 08-14-2007 01:51 PM
Added users: Access denied freakin'me Linux - General 1 10-08-2005 04:19 AM
X and Firefox don't recognize newly added fonts tom221 Linux - General 2 03-08-2005 04:19 PM
How to add an existing linux on a newly added disk to grub ? glenn69 Linux - Newbie 1 10-07-2004 09:16 PM
newly added harddrive not showing.... pdmackenzie Linux - Hardware 4 03-02-2003 05:18 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 11:03 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration