SUSE / openSUSEThis Forum is for the discussion of Suse Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Distribution: openSUSE, Raspbian, Slackware. Previous: MacOS, Red Hat, Coherent, Consensys SVR4.2, Tru64, Solaris
Posts: 2,795
Rep:
The "man" command is an "alternate"? Why?
After applying the latest round up updates to Tumbleweed yesterday, noticed that some things were broken: "man" for one. There was no "man" command available. I issued "file $( which man )" and found that it was supposed to be a symbolic link to "/etc/alternatives/man" but it was broken. The object under "/etc/alternatives" was, in turn, a symbolic link to "/usr/libexec/man-db/wrapper". Outside of a few messages regarding permissions changes that always show up during update installations, I saw no error messages related to the updates to the "man" packages.
(Leaving the system without a working "man" is something of a show stopper so I give these updates a grade of "F".)
Fortunately, YaST was not broken by the updates and I was able to remove "man" and the "manpage" packages and re-install them.
Q: Why has "man" been relegated to "alternate" status?
I suppose a related question would be when was this was done as I noticed it's also "alternate" on a Leap 15.1 system. (I likely wouldn't have noticed had the Tumbleweed updates not borked the command.) Ultimately, the question is:
Alternate to what exactly?
My internet searches aren't finding anything and I would expect there'd have been a lot of discussion about this change. Does nobody read manpages any more?
Anyone have information about this?
Cheers...
Last edited by rnturn; 09-05-2020 at 10:49 PM.
Reason: Tumble->Tumbleweed. Oops!
Does "alternate" mean something like "optional" in SUSE-speak?
It would be strange indeed if distro maintainers considered man pages (and a program to access them) optional.
OTOH, this is rather common on e.g. mobile device distros.
Distribution: openSUSE, Raspbian, Slackware. Previous: MacOS, Red Hat, Coherent, Consensys SVR4.2, Tru64, Solaris
Posts: 2,795
Original Poster
Rep:
Quote:
Originally Posted by ondoho
Does "alternate" mean something like "optional" in SUSE-speak?
It would be strange indeed if distro maintainers considered man pages (and a program to access them) optional.
OTOH, this is rather common on e.g. mobile device distros.
I'm unsure of what the maintainers mean by that but there's a fairly large number of symbolic links in "/usr/bin" pointing to "/etc/alternatives", links in "/etc/alternatives" pointing to "/usr/libexec" and "/usr/bin". It's kinda nuts: my PATH says to look for "man" in "/usr/bin" which then has to hit "/etc/alternatives" which, in turns has to hit "/usr/libexec" (I stopped following the symbolic links at that point). The point of this is...? Hmm... I got nuthin'. Obviously somebody has a (weird) plan though I've not seen anything on the OpenSUSE forums about why such a change is deemed "necessary".
Anyway, I can't see mucking around with "man" being a positive thing... especially when an update silently breaks it.
there's a fairly large number of symbolic links in "/usr/bin" pointing to "/etc/alternatives", links in "/etc/alternatives" pointing to "/usr/libexec" and "/usr/bin". It's kinda nuts: my PATH says to look for "man" in "/usr/bin" which then has to hit "/etc/alternatives" which, in turns has to hit "/usr/libexec" (I stopped following the symbolic links at that point). The point of this is...?
This usually means there's more than one package providing /usr/bin/man. The alternatives system allows you to have them all installed in parallel and then select which one will be your /usr/bin/man of choice.
E.g. on openSUSE, /usr/bin/man is provided both by man (from the man-db project) and mandoc (from OpenBSD).
For what it's worth, I just tried man in a VM of OpenSUSE Leap v. 15.2 and was unable to duplicate OP's issue. Instead, I got this (replicated several times on different topics):
Code:
:~> man ls
Man: find all matching manual pages (set MAN_POSIXLY_CORRECT to avoid this)
* ls (1)
ls (1p)
Man: What manual page do you want?
After a short delay, it would open one of the pages, I think the "man 1" page, but my attempts to verify that were fruitless.
Displaying Man-Pages With the Same Name
The man command now asks which man-page the user wants to see if man-pages with the same name exist in different sections. The user is expected to type the section number to make this man-page visible.
If you want to get back the previous behavior, set MAN_POSIXLY_CORRECT=1 in a shell initialization file such as ~/.bashrc.
I fail to see the utility of this change to the manual system, but that's just me.
Distribution: openSUSE, Raspbian, Slackware. Previous: MacOS, Red Hat, Coherent, Consensys SVR4.2, Tru64, Solaris
Posts: 2,795
Original Poster
Rep:
Quote:
Originally Posted by frankbell
For what it's worth, I just tried man in a VM of OpenSUSE Leap v. 15.2 and was unable to duplicate OP's issue. Instead, I got this (replicated several times on different topics):
Code:
:~> man ls
Man: find all matching manual pages (set MAN_POSIXLY_CORRECT to avoid this)
* ls (1)
ls (1p)
Man: What manual page do you want?
After a short delay, it would open one of the pages, I think the "man 1" page, but my attempts to verify that were fruitless.
Displaying Man-Pages With the Same Name
The man command now asks which man-page the user wants to see if man-pages with the same name exist in different sections. The user is expected to type the section number to make this man-page visible.
If you want to get back the previous behavior, set MAN_POSIXLY_CORRECT=1 in a shell initialization file such as ~/.bashrc.
I fail to see the utility of this change to the manual system, but that's just me.
Me, too. I recall the POSIXLY_CORRECT "fix" from ages ago.
I've never noticed man timing out and deciding to jump to a page if you weren't quick enough to answer that question about sections. But... I still have that environment variable set to "1". Is that the reason it became an alternative? Shees.
Still doesn't explain how the update managed to break man to the point where I had to uninstall/re-install to get it working again.
I noticed that sshd was moved to /usr/libexec, too, though it left /usr/sbin/sshd alone. That broke sftp connections to that system but, oddly, not ssh connections. Minor tweak to /etc/ssh/sshd_config fixes that. I noticed that "sshd_config.rpmnew" file has PermitRootLogin defaulting to "Yes". Ugh.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.