Linux Bible. Christopher Negus

Linux Bible - Christopher Negus


Скачать книгу
show the output resulting from the command.

      NOTE

      Although we use # to indicate that a command be run as the root user, you do not need to log in as the root user to run a command as root. In fact, the most common way to run a command as a root user is to use the sudo command. See Chapter 8, “Learning System Administration,” for further information about the sudo command.

      Using a Terminal window

       Right-click the desktop. In the context menu that appears, if you see Open in Terminal, Shells, New Terminal, Terminal Window, Xterm, or some similar item, select it to start a Terminal window. (Some distributions have disabled this feature.)

       Click the panel menu. Many Linux desktops include a panel at the top or bottom of the screen from which you can launch applications. For example, in some systems that use the GNOME 2 desktop, you can select Applications ➪ System Tools ➪ Terminal to open a Terminal window. In GNOME 3, click the Activities menu, type Terminal, and press Enter.

      In all cases, you should be able to type a command as you would from a shell with no GUI. Different Terminal emulators are available with Linux. In Fedora, Red Hat Enterprise Linux (RHEL), and other Linux distributions that use the GNOME desktop, the default Terminal emulator window is the GNOME Terminal (started by the gnome-terminal command).

      GNOME Terminal supports many features beyond the basic shell. For example, you can cut and paste text to or from a GNOME Terminal window, change fonts, set a title, choose colors or images to use as background, and set how much text to save when text scrolls off the screen.

      To try some GNOME Terminal features, start up a Fedora or RHEL system and log in to the desktop. Then follow this procedure:

      1 Select Applications ➪ Utilities ➪ Terminal (or click on the Activities menu and type Terminal). A Terminal window should open on your desktop.

      2 Select Edit ➪ Profile Preferences or Preferences.

      3 On the General tab or current profile (depending on your version of GNOME), check the “Custom font” box.

      4 Select the Font field, try a different font and size, and then click Select. The new font appears in the Terminal window.

      5 Unselect the “Custom font” box. This takes you back to the original font.

      6 On the Colors tab, clear the “Use colors from system theme” check box. From here, you can try some different font and background colors.

      7 Re-select the “Use colors from system theme” box to go back to the default colors.

      8 Go to your Profile window. There are other features with which you may want to experiment, such as setting how much scrolled data is kept.

      9 Close the Profile window when you are finished. You are now ready to use your Terminal window.

      If you are using Linux from a graphical desktop, you will probably most often access the shell from a Terminal window.

      Using virtual consoles

      Most Linux systems that include a desktop interface start multiple virtual consoles running on the computer. Virtual consoles are a way to have multiple shell sessions open at once in addition to the graphical interface you are using.

      You can switch between virtual consoles by holding the Ctrl and Alt keys and pressing a function key between F1 and F6. For example, in Fedora, press Ctrl+Alt+F1 (or F2, F3, F4, and so on up to F6 on most Linux systems) to display one of seven virtual consoles. The GUI is typically located on one of the first two virtual consoles, and the other six virtual consoles are typically text-based virtual consoles.

      You can return to the GUI (if one is running) by pressing Ctrl+Alt+F1. On some systems, the GUI may run on a different virtual console, such as virtual console 2 (Ctrl+Alt+F2). Newer systems, such as Fedora 29, now start the gdm (the login screen) persistently on tty1 to allow multiple simultaneous GUI sessions: the gdm is on tty1, the first desktop is started on tty2, the second desktop is started on tty3, and so on.

      Try it right now. Hold down the Ctrl+Alt keys and press F3. You should see a plain-text login prompt. Log in using your username and password. Try a few commands. When you are finished, type exit to exit the shell and then press Ctrl+Alt+F1 or Ctrl+Alt+F2 to return to your graphical desktop interface. You can go back and forth between these consoles as much as you like.

      In most Linux systems, your default shell is the bash shell. To find out what is your default login shell, enter the following commands:

       $ who am i chris pts/0 2019-10-21 22:45 (:0.0) $ grep chris /etc/passwd chris:x:13597:13597:Chris Negus:/home/chris:/bin/bash

      Notice that the command-line examples shown here and throughout the book show the command followed by output from that command. When the command completes, you are presented with the command prompt again.

      The who am i command shows your username, and the grep command (replacing chris with your username) shows the definition of your user account in the /etc/passwd file. The last field in that entry shows that the bash shell (/bin/bash) is your default shell (the one that starts up when you log in or open a Terminal window).

      It's possible, although not likely, that you might have a different default shell set. To try a different shell, simply type the name of that shell (examples include ksh, tcsh, csh, sh, dash, and others, assuming that they are installed). You can try a few commands in that shell and type exit when you are finished to return to the bash shell.

       You are used to using UNIX System V systems (often ksh by default) or Sun Microsystems and other Berkeley UNIX-based distributions (frequently csh by default), and you are more comfortable using default shells from those environments.

       You want to run shell scripts that were created for a particular shell environment, and you need to run the shell for which they were made so that you can test or use those scripts from your current shell.

       You simply prefer features in one shell over those in another. For example, a member of my Linux Users Group prefers ksh over bash because he doesn't like the way aliases are used with bash.

      Although most Linux users have a preference for one shell or another, when you know how to use one shell, you can quickly learn any of the others by occasionally referring to the shell's man page (for example, type man bash). The man pages (described later in the section “Getting Information about Commands”) provide documentation for commands, file formats, and other components in Linux. Most people use bash just because they don't have a particular reason for using a different shell. The rest of this chapter describes the bash shell.

      Bash includes features originally developed for sh and ksh shells in early UNIX systems, as well as some csh features. Expect bash to be the default login shell in most Linux systems that you are using, with the exception of some specialized Linux systems (such as some that run on embedded devices) that may require a smaller shell that needs less memory and requires fewer features. Most of the examples in this chapter are based on the bash


Скачать книгу