Language Selection

English French German Italian Portuguese Spanish

'Cookbook' author serves up recipe for Linux success

Filed under
Linux

Author Michael Stutz said he has never been satisfied with existing resources for learning about Linux, which is why he wrote The Linux Cookbook. Stutz aims his book at beginners and more experienced users by presenting lessons in a format modeled after a culinary cookbook. In this interview, Stutz discusses shells and graphical versus command-line interfaces -- and why sometimes, in computers, a word is worth a thousand pictures.

For a newcomer to Linux, or someone who is mainly familiar with Windows, could you explain what the shell is and what it does?

Michael Stutz: The shell is a program that provides an interface between the user and the operating system -- it handles your input, controls the execution of other programs and coordinates their output. Those are the generic requirements. In practice, shells can be very robust environments. Most Linux distributions come with several different shells preinstalled that you can pick from. And you can run all kinds of interfaces -- graphical and otherwise -- on top of a shell, but the shell is always there at the base, mediating between you and the operating system. The shell is one of the fundamental components of the Unix operating system, of which Linux is a popular modern-day variety.

There's a good analogy for users of Windows, because I've never thought of Microsoft Windows as anything but an incompatible clone of Unix. It started out as DOS, which was a grossly stunted clone of the shell, made to run on the single-user microcomputers of the time. Then the Windows program was written as an interface to run on top of DOS, much like the X Window System in Unix.

Is one shell better than another for those starting out with Linux?

Aren't most distributions now built to be run from a graphical user interface (GUI)?

The concept of using reserved characters seems tricky to me. What are they and how do they work in the command line?

Full Interview.

More in Tux Machines

Red Hat News

Development News: LLVM, New Releases, and GCC

PulseAudio 10 and Virtual GPU in Linux

  • PulseAudio 10 Coming Soon, Using Memfd Shared Memory By Default
    It's been a half year since the debut of PulseAudio 9.0 while the release of PulseAudio 10 is coming soon. PulseAudio 9.99.1 development release was tagged earlier this month, then usually after x.99.2 marks the official release, so it won't be much longer now before seeing PulseAudio 10.0 begin to appear in Linux distributions.
  • Experimenting With Virtual GPU Support On Linux 4.10 + Libvirt
    With the Linux 4.10 kernel having initial but limited Intel Graphics Virtualization Tech support, you can begin playing with the experimental virtual GPU support using the upstream kernel and libvirt.

Licensing FUD and Licensing Advice

  • On the Law and Your Open Source License [Ed: Black Duck is just a parasite selling proprietary software by bashing FOSS]
    "Looking back five or ten years, companies managing open source risk were squarely focused on license risk associated with complying with open source licenses," notes a report from Black Duck Software. Fast-forward to today, and the rules and processes surrounding open source licensing are more complex than ever.
  • Explaining the source code requirement in AGPLv3
    This condition was intended to apply mainly to what would now be considered SaaS deployments, although the reach of "interacting remotely through a computer network" should perhaps be read to cover situations going beyond conventional SaaS. The objective was to close a perceived loophole in the ordinary GPL in environments where users make use of functionality provided as a web service, but no distribution of the code providing the functionality occurs. Hence, Section 13 provides an additional source code disclosure requirement beyond the object code distribution triggered requirement contained in GPLv2 Section 3 and GPLv3 and AGPLv3 Section 6.