8

I'm using a CentOS server and I'd like to have an offline copy of all available manpages. Not just for the packages I currently have installed, but just all possible manpages.

Right now, I don't see an easy solution for this. Manpages are bundled with the package that installs is, so should I try to install every possible package available, read the manpage and remove the package again?

Would anyone know of alternative ways to download all available manpages for any given distribution?

Ps; the goal is to have an offline copy of available manpages which I can convert to any format I'd like (txt/html) for offline browsing.

  • Perhaps easier to make use of rpm2cpio against each package, and from there extract just the man pages? More elegant than installing and then uninstalling. – steve Mar 15 '16 at 21:31
  • 3
    Yeah I would use yum whatprovides to get a listing of packages that have manpages in them, then download them en masse, rpm2cpio them, copy and manpages out of it and then delete the rpm. Requires a lot of storage but this isn't an every day sort of request and I think this is as close to ideal as you're going to get. – Bratchley Mar 15 '16 at 21:35
  • Welcome to stackexchange! Great first question! – Wildcard Mar 15 '16 at 21:35
  • You can look at how online sites are set up. For example Debian documents all the tools they used (they start from a full package mirror). – Gilles Mar 15 '16 at 23:44
  • Have a look here (it is for debian though): unix.stackexchange.com/questions/334171/… – George Vasiliou Feb 16 '17 at 20:46
1

This site already has this set up in a great online format.

It seemed to have the few commands I went looking for listed, although I'm sure it doesn't have everything. Note that using the search box up top wasn't the best experience, but selecting the alphabetical characters at the bottom worked great.

alphabetical listing

They are also grouped by sections (ie User Commands, System Calls, Games, etc) which makes for an interesting way of finding new tools.

You could simply use that site as is or do something like:

  • Use a webscraper like .the great HTTrack (GPL and also included in the Kali Linux distribution)
  • Write you own scripts with something like Python / urllib / BeautifulSoup to process and format as you'd like.

I know this post is old, but perhaps someone else will stumble across it as I did.

Enjoy!

0

If your server isn't disposable, it may not be advisable to install vast numbers of software packages on it, even if you intend to delete them afterwards. Instead I would recommend installing Vagrant and VirtualBox (on any system, Windows, Mac, Linux) and creating a CentOS Vagrant box to work with.

Then on the vagrant box, you can install all possible software packages, and then find the man page files directly on the virtual hard disk, tar them up, and scp them to your CentOS server.

I will note that I doubt there will ever be a perfect way to accomplish this, because even if there were a convention whereby man pages were packages alongside the software package to enable separate installation, and even if there were a built-in yum command to install all available man page software packages, there would still be the issue of compliance with best practices. Getting all the software providers for the whole distribution to comply with best practices would be no mean feat.

  • By the way, if you do manage this, I would love to see a more detailed description of how you do it. I wouldn't mind having all man pages installed myself. – Wildcard Mar 15 '16 at 21:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.