Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I keep seeing parentheses and a number after a command in Unix or Linux or C function.

For example: man(8), ftok(2), mount(8), etc.

What do these mean? I see them in man too.

share|improve this question
20  
Cross-duplicate, on Unix and Linux: What do the numbers in a man page mean?. –  Peter Mortensen Jun 16 '11 at 3:30

8 Answers 8

up vote 153 down vote accepted

Manpage sections.

  1. Common UNIX command that can be used by all users. e.g. ls(1)
  2. Unix and C system calls e.g. mmap(2)
  3. C library routines for C programs e.g. system(3)
  4. Special files e.g. sudoers(4)
  5. System file formats e.g. lmhosts(5)
  6. Games e.g. fortune(6)
  7. Miscellaneous e.g. regex(7)
  8. System administration commands that is run by root only e.g. iwconfig(8)
  9. (?Linux specific) e.g.ksoftirqd(9)

The reason behind sections is that there are things sharing manual pages - mkdir(1) is the command used to create a directory whereas mkdir(2) is a system call that can be used to create a directory in a C program. Thus the different sections.

Annotated References [1,2] (as suggested):
http://www.gsp.com/support/man/ - The FreeBSD manpages arranged according to sections
http://manpages.unixforum.co.uk/man-pages/linux/suse-linux-10.1/ - SUSE manpages arranged according to sections
http://www.december.com/unix/ref/mansec.html - Yet another table for manpage sections. Initial basis of the list (See older edits of this post for details)

[1] explanations and examples are spontaneous fabrications in my head, for the matter.
[2] not that it is academically sound, but request for reference is one of the thing that slowed the growth of wikipedia. skeptics are trying to get others reference everything and some of the contributors just get way too annoyed to further answer anything, not that those who try to add useless/baseless stuff are properly removed from the pool (they just get the reference-request tag tagged onto their additions, contents not removed...)

share|improve this answer
4  
Games (6) got a section of their own! –  Jaywalker Jun 16 '11 at 8:22
2  
actually, it is more like funny program than games. caesar(6) and fortune(6) are at most funny.... and if you think bcd(6) is a game... okay, i'd place the unix guru badge on you –  bubu Jun 16 '11 at 8:24
8  
To display the information, use the command: man <number> <command> example: man 1 mkdir and man 2 mkdir –  Donny Kurnia Jun 17 '11 at 4:19
    
Please reference your answers. –  Matt Joiner Jun 18 '11 at 11:44
    
@DonnyKurnia the single most important fact one needs to know - you can figure out the rest yourself from here on, actually –  naxa Jun 23 '12 at 5:41

An excerpt from man man:

The table below shows the section numbers of the manual followed by the types 
of pages they contain.
  1   Executable programs or shell commands
  2   System calls (functions provided by the kernel)
  3   Library calls (functions within program libraries)
  4   Special files (usually found in /dev)
  5   File formats and conventions eg /etc/passwd
  6   Games
  7   Miscellaneous (including macro  packages  and  conven‐
      tions), e.g. man(7), groff(7)
  8   System administration commands (usually only for root)
  9   Kernel routines [Non standard]
share|improve this answer
5  
+1 for pointing out where to find the info. –  kizzx2 Jun 16 '11 at 16:19
6  
+1 for "manning" man :) –  Dark Star1 Jun 16 '11 at 23:08
    
"Unix is easy: type man man and the rest comes by itself" –  gerrit Jul 19 '12 at 8:21

The number refers to the man page section the command or C function is in.

So you could access the man page of mount(8) by doing the command:

man 8 mount

Or of ftok(2) like such:

man 2 ftok
share|improve this answer
1  
Out of curiosity, why isn't it man mount(8) or man ftok(2)? –  JAB Jun 15 '11 at 20:13
4  
@JAB: Because most shells will take the parentheses specially. You can't use parentheses in any shell commands (without wanting to do something special). –  Wuffers Jun 15 '11 at 20:16
    
Well that's interesting. –  JAB Jun 15 '11 at 20:25
    
+1 This is the most essential thing you need to know - you can actually figure out the rest yourself (even without realizing man man). –  naxa Jun 23 '12 at 5:43

They are section numbers of the traditional Unix manual pages. Your question has already been answered on Unix and Linux Stack Exchange a year ago, What do the numbers in a man page mean?.

share|improve this answer
    
+1 for linking to the Unix/Linux Stack Exchange –  tjameson Jul 1 '11 at 4:43

These are section numbers. If you want to read section 2 of mount then run:

man 2 mount

Some man pages have multiple sections.

share|improve this answer

These are the man section numbers.

Sections and Examples for linux man pages:

  • 1 - Programs or shell commands - cp, rm, dd and ps.
  • 2 - System calls - fork, exec, ioctl and poll.
  • 3 - Library calls - printf, malloc, pthread_* calls, cos, sin, tan etc.
  • 4 - devices e.g. null (/dev/null), port, random, lp.
  • 5 - File formats - users, groups, hosts, host.equiv.
  • 6 - games.
  • 7 - Miscellaneous (often overviews) - glob, intro, tcp, uri, url, locale.
  • 8 - Sys Admin commands and daemons - arp, mount, route, useradd, userdel etc.

Note there are differences between the man section list for linux and that for Unix System V variants (e.g. Solaris, BSD, SCO, Venix). More details from man page wiki.

Interestingly Ken Thompson and Denis Ritchie the famed Unix and C creators wrote the first man pages - at the insistence of their manager. Does that sound familiar?

To select a specific section number for a man entry on linux (printf has entries in sections 1 and 3).

man 3 printf

To view all man entries for cfdisk (use q at END of one page to get to the next page:

man -a cfdisk

To list all entries for a certain command use apropos

apropos cfdisk
share|improve this answer

It's the manual section number. Way back in the mists of time, this referred to the physical binder which contained that particular manual page.

From the man manpage on a modern Linux system:

   1   Executable programs or shell commands
   2   System calls (functions provided by the kernel)
   3   Library calls (functions within program libraries)
   4   Special files (usually found in /dev)
   5   File formats and conventions eg /etc/passwd
   6   Games
   7   Miscellaneous  (including  macro  packages  and  conventions), e.g.
       man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]
share|improve this answer

Manpage sections including non-standard ones on Arch Linux:

0     Header files
0p    Header files (POSIX)
1     Executable programs or shell commands
1p    Executable programs or shell commands (POSIX)
2     System calls (functions provided by the kernel)
3     Library calls (functions within program libraries)
3n    Network Functions
3p    Perl Modules
4     Special files (usually found in /dev)
5     File formats and conventions eg /etc/passwd
6     Games
7     Miscellaneous  (including  macro  packages and conventions), e.g. man(7), groff(7)
8     System administration commands (usually only for root)
9     Kernel routines
l     Local documentation
n     New manpages

(thanks to @greg0ire for the idea of using konqueror)

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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