We can switch to a text console by pressing Ctrl+Alt+F<1-7> on the keyboard.
What are the uses of these consoles, and why are there multiple consoles?
migrated from stackoverflow.com Jul 26 '12 at 1:13
This question came from our site for professional and enthusiast programmers.
Why multiple consoles? Because -- oddly enough -- Linux started out as a terminal emulator.
As to "why 7"? That's not inherent to the operating system; you can actually have any number of virtual consoles, within reason. It's configurable in
It lets the user multitask conveniently directly from a keyboard/monitor connected to the system. Nine times out of ten I'm remoted into a system via
GUI systems let you switch between running programs and interact with them. So the user can do things like start a job, place its window in the background, and run additional tasks while conveniently keeping tabs on what is also running.
You can log into one console, run a long running command, and then switch/login to another console and do other stuff. You can go back to the first console to monitor the progress. Alternatively you can log on as different users if you wanted, to test how things work under different accounts or just to not use a root account all the time.
It's also possible to use one of the consoles as just an output device, so you can view logs or reports and not clutter your current console.
Because that's what one did if one was a multi-user operating system on a PC Compatible.
In the world of minicomputers, one had multiple real terminals, usually attached through a terminal concentrator or some such, and multiple users could each have a terminal. In the world of the IBM PC, however, one generally didn't have real terminals at all. It was, after all, a personal computer.
So multi-user operating systems supplied virtual consoles that were displayed on the PC's display adapter, and that one switched between using hot-key combinations. Concurrent CP/M-86, back in 1982, had four virtual-consoles, which one switched between using the keyboard combinations Ctrl+1, Ctrl+2, Ctrl+3, and Ctrl+4.
SCO Xenix in the early 1980s had what was called Multiscreen. As a Linux user, you'll find it very familiar. There were originally 10 virtual terminals, whose character device files were named
Away from the world of MP/M and Unix, the VMS-like and DOS-like world of PC Compatible operating systems had similar ideas. This was true even for non-multi-user operating systems. OS/2 version 1.0 in 1987, for example, had a Session Manager from which one could start up to 15 sessions, separate virtualized combinations of display output and keyboard/mouse input. One cycled between sessions in order with Alt+Esc and switched back to the Session Manager (from which one could start new sessions or switch to existing sessions from a menu) with Control+Esc.
MS-DOS 5 had
By the time that Linux came around in the 1990s, the idea that what one saw on the (text mode) display and typed in at the keyboard was the virtualized input/output of just one of several sessions/tasks/terminals/consoles, that one could switch amongst with hot keys, was pretty much embedded in people's thinking. It had been around in the PC Compatible world for almost ten years.
As for what use they are, I give you the words of Robin Raskin and Kaare Christian:
Xenix's Multiscreen feature is a boon for those who like to do several things at once. A single keystroke switches the console screen and keyboard from one log-in session to another. It's as if you have several terminals on your desk, but with only one physical screen and keyboard. The applications for this feature quickly become evident. For example, when preparing a table of figures, I used the editor on one screen and a desk calculator program on another, and I previewed the printer output on a third. Switching from one to another was trivial: Alt-F1 pulled up the editor screen, Alt-F2 brought forth the calculator, and Alt-F3 showed me the printer preview. Each screen switch takes just a fraction of a second.— Robin Raskin and Kaare Christian (August 1986). "Xenix System V: A Multi-User Answer for the AT?". PC Magazine 5(14). ISSN 0888-8507. Ziff Davis, Inc.. pp. 253–266
Nowadays, of course, one can crank up a GUI with multiple terminal emulators and switch amongst them without switching the entire display buffer, and the display adapter barely gets a sniff of operating in its text mode. (Even then, one could do this on Unix workstations, which had graphical frame buffers and the X Window System.) So having multiple virtual consoles seems less of a feature. But to those who came from the world of multi-user computing on minicomputers with only real terminals, where clustering together a group of terminals on one's desk was a power-user thing to do, especially if one hadn't pulled
if you run a server (without GUI) instead of a desktop linux os (with GUI), this way you can have multiple terminals open at the same time without using a software like screen to manage multiple terminals.
On a GUI system, this is not very useful but here are a few situations where I use it:
You can use one of the console to log in the system without loading the GUI for example to update or modify the GUI.
If you only need to do something quickly (without waiting GUI full loading) like starting updates on a few machines for example. It is faster to open one of the consoles and use it than to load the gui and open a terminal and log off after completed.
I have used it sometimes to log in a machine (locally without using ssh) while another user was logged using the GUI also (without needing to switch users or opening a terminal on his screen)
If you have a long running job, you might want to look at the log file, the error file, the system load, the free work space, the free disk space, how many users are on the system etc etc.
The question becomes: not, why 7 - but why not more...
Traditional Unix systems allowed just one user connected over a (remote) terminal. But users soon looked for ways of "doing several things at once," i.e., being able to run several sessions. OK, you could take over the neigboring terminal too... but that isn't very nice. So programs like
Soon after Linux started, the possibility to have several sessions available was added. No
In the end, if it can be done with (relatively) little effort, why not? It is very convenient (OK, today I'm happy to have a dozen terminals open under X, but in the olden days there was no X).