33

What does the "tab" mean in "crontab" or "inittab"?
Having some idea of its meaning might help to mentally categorise files which contain the "tab" suffix and understand their relationship with the other parts of an OS.

  • 5
    Dont forget fstab – casey Nov 16 '15 at 14:14
  • @casey good point - I took a look just now - it also has tabular type organisation of data – the_velour_fog Nov 16 '15 at 14:28
  • 2
    And of course, the tab-key on your keyboard is for tabular formatting, i.e. for tables. They all mean the same. – phresnel Nov 16 '15 at 16:40
  • 2
    find /etc -type f -name '*tab' – Digital Trauma Nov 16 '15 at 22:07
  • I have just expanded the answer, including @casey suggestion about fstab – Rui F Ribeiro Nov 17 '15 at 5:45
52

As for as the names of (crontab) cron table, (inittab) init table and (fstab) filesystem tables: as far as I know, besides the obvious association of tab with "table", it means they are the main files for configuring those actions.

The short names are probably also due to the nature of Unix of being practical and using terse commands.

Furthermore in old days teletype terminals were slow.

It must be noted the concepts of crontab, initab and fstab are fairly old in the Unix lore.

We could also make speculations as most of the contemporary filesystems had severe limitations on the length of filenames, that they were kept intentionally short for compatibility reasons or for facilitating browsing backups on foreign (file)systems. [ or bootstraping toolchains ]

The manpage for Vixie crontab specifically mentions the tables: crontab is the program used to install, deinstall or list the tables used to drive the cron(8) daemon in Vixie Cron.

The crontab(5) page for ISC (old Vixie) cron has as name "crontab - tables for driving cron".

In the AT&T user manuals:

  • inittab is described as "script for the init process" in the System V manual;
  • mnttab is described as "mounted file system tab" both in the System III and the System V manuals;

Interestingly, both initab and mnttab seem to be the oldest references found of *tab files.

  • 2
    I could also swear they are very ancient in what touchs Unix history. Maybe their name also is historically like that due to limitations on the number of characters allowed for the name of files on the first Unix filesystems. Cannot swear on this though. – Rui F Ribeiro Nov 16 '15 at 8:25
  • 14
    More likely the "tab" versus "table" was due to a preference by Unix developers for abbreviating everything to reduce typing. Recall that command-history was not one of the first-implemented features... – Thomas Dickey Nov 16 '15 at 9:27
  • 3
    Also to reduce printing. I believe many early unix machines didn't have screens and instead printed everything entered and output to the command line interface. – bdsl Nov 16 '15 at 11:56
  • 5
    Manpage for Vixie crontab even specifically mentions the tables: crontab is the program used to install, deinstall or list the tables used to drive the cron(8) daemon in Vixie Cron. – Arkadiusz Drabczyk Nov 16 '15 at 12:28
  • 3
    @MSalters Unix filenames were limited to 14 characters. It would have severely complicated the design of the filesystem to allow arbitrary-length strings. – Random832 Nov 16 '15 at 18:29

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.