Network Plus 2005 In Depth
.pdf
442 Chapter 9 NETWORKING WITH UNIX-TYPE OF OPERATING SYSTEMS
NET+
2.10
3.1
3.2
FIGURE 9-6 Output of ls –l / command in a Telnet session
Chapter Summary
UNIX is a stable, flexible, and efficient network operating system. It relies on TCP/IP and forms the basis of much of the Internet. Despite the preponderance of proprietary implementations of UNIX-type systems, the differences between the various versions—or “flavors”—are relatively minor.
UNIX was developed at AT&T Bell Laboratories, when a few programmers grew dissatisfied with the programming environments available in the late 1960s and decided to devise their own flexible operating system from scratch. Ken Thompson and Dennis Ritchie were the authors of the system.
Currently, The SCO Group owns the copyright to the UNIX source code. The Open Group, a nonprofit trade association, owns the UNIX trademark.
Many varieties of UNIX-type of systems exist, and each of these belong to one of two categories: proprietary and open source. Proprietary UNIX operating systems are those for which the source code is either unavailable or available only by purchasing a licensed copy from The SCO Group. Apple Computer, Sun Microsystems, and IBM sell the three most popular proprietary versions of UNIX—Mac OS X Server, Solaris, and AIX.
In the last few years, open source implementations of UNIX-type of systems have grown in popularity. Open source means that the source code is freely available to anyone. This category includes BSD, GNU, and Linux.
Different flavors of Linux include Fedora Core (a popular Linux packaged and distributed by Red Hat, Inc.), SUSE, and Mandrake.
This chapter focuses on three different UNIX-type of systems: Solaris (from Sun Microsystems), Fedora Core (from Red Hat), and Mac OS X Server (from Apple Computer).UNIX-type of systems make excellent Web servers. UNIX systems
CHAPTER SUMMARY |
Chapter 9 443 |
underlay the original ARPANET and Internet services, such as FTP, Telnet, gopher, HTTP, and POP. These services are standard with current implementations of most UNIX-type of systems.
Characteristics of UNIX-type of systems include the ability to support multiple, simultaneous users; hierarchical files; a uniform method for interacting with files, devices, and programs; hundreds of subsystems and dozens of programming languages; and source code portability between different implementations of the system.
Minimum hardware requirements for a Solaris 10 server include a SPARC system or Intel-based system with a Pentium-class processor, 512 MB of RAM, 5 to 7 GB of disk space, a Solaris-supported NIC, and a Solaris-supported CD-ROM or DVDROM drive.
Minimum hardware requirements for a Linux server include an Intel-compatible x86 processor, 64 MB of RAM, 2 GB of hard disk space, a NIC compatible with the rest of your network, and a CD-ROM drive.
Minimum hardware requirements for Mac OS X Server include a supported Pow- erPC-based Macintosh computer with 256 MB of RAM and 4 GB of available disk space. The NIC and CD-ROM drive is included with all Macintosh computers. UNIX-type of systems handle multiple processes and multiple threads (selfcontained subsets of a process) efficiently and support SMP (symmetric multiprocessing).
Like Windows Server 2003, UNIX-type of systems use virtual memory and also allocate a memory area for each application. UNIX-type of systems attempt to decrease the inefficiency of this practice, however, by sharing memory between programs wherever they can.
Most current UNIX-type of systems use a 32-bit addressing scheme that enables programs to access 4 GB of memory. UNIX-type of systems also run on systems with 64-bit CPUs.
The UNIX kernel, the core of the operating system, is loaded into memory from disk and runs when you turn on your computer. The kernel’s primary function is to coordinate access to all the computer’s hardware. You can add or remove functionality on a running UNIX-type system by loading and unloading UNIX kernel modules. The Mac OS X Server kernel is based on the operating system kernel named Mach, which was developed at Carnegie Mellon University.
UNIX-type of systems were among the first to include a hierarchical file system, in which directories can hold files and other directories.
Like other NOSs, UNIX-type of systems support multiple file system types. The native file system type for Linux, called ext3, is the “third extended” file system for Linux. The default file system for Solaris is UFS (for “UNIX file system”). The default Mac OS X Server file systems is HFS+ (for “hierarchical file system”).
UNIX-type of systems support network file systems that are analogous to Windows shares or NetWare network volumes. Common UNIX-type of network file systems include NFS and Samba.
444Chapter 9 NETWORKING WITH UNIX-TYPE OF OPERATING SYSTEMS
You can liken UNIX commands to ordinary sentences. The command is the action you want to perform, or the verb. The things you want the system to operate on are the nouns—often files. Options to the commands are similar to adjectives and adverbs.
Most UNIX commands are lowercase alphabetic characters. To specify an option, you usually type a hyphen (“-”) followed by a letter. The letter is often (but not always) a mnemonic abbreviation for the option (such as -l for a long file listing).
Command names are usually acronyms or abbreviations. Consult the command’s manual (man) page by typing man command at the shell prompt, and pressing Enter to learn more about a command.
The UNIX ls command is the most frequently used. When you use ls with the -l option, it allows you to learn everything about a file except its contents. ls -l reports the filename, the file size, the date and time that the file was last accessed, the number of “aliases” or links to the file, the user who owns the file, the group to which the file belongs, and the access rights for the owner, the group, and all others.
All the information about a file on a UNIX-type of system (except the file’s contents) is stored in an information node (i-node). I-nodes also contain pointers to file contents on the disk.
The useradd command allows you to add new users to your Linux or Solaris system.
The groupadd command allows you to add new groups to your Linux or Solaris system.
The Workgroup Manager application allows you to manage users and groups on a Mac OS X Server system.
The chgrp command assigns a file to a group.
The chmod command changes file access permissions.
Use the Mac OS X Server Finder Info dialog box to assign files and folders to a group and to set file and folder access permissions.
UNIX-type of systems interoperate well with other network operating systems. Installing the Samba application on a UNIX-type of server allows it to exchange information with Windows servers by using Windows file system and file access protocols.
Samba is included with Mac OS X Server and called Windows Services. You use the GUI application Server Manager to configure Windows Services.
All modern flavors of UNIX, Linux, and Mac OS X Server support data sharing using directory services based on LDAP. Solaris uses the Sun Java System Directory Server Enterprise Edition, Linux distributions include OpenLDAP, and Mac OS X Server uses Open Directory (the Apple implementation of OpenLDAP).
Any client that runs the TCP/IP protocol can connect to a UNIX-type of host, such as a Linux server, through the Telnet utility.
KEY TERMS |
Chapter 9 445 |
Key Terms
AIX—A proprietary implementation of the UNIX system distributed by IBM.
AppleShare IP—A proprietary network operating system from Apple Computer that offers file, print, Web, DNS, and mail services. AppleShare IP was the predecessor to Mac OS X Server.
Berkeley Software Distribution—See BSD.
BSD (Berkeley Software Distribution)—A UNIX distribution that originated at the University of California at Berkeley. The BSD suffix differentiates these distributions from AT&T distributions. No longer being developed at Berkeley, the last public release of BSD UNIX was version 4.4.
command interpreter—A (usually text-based) program that accepts and executes system programs and applications on behalf of users. Often, it includes the ability to execute a series of instructions that are stored in a file.
ext3—The name of the primary file system used in most Linux distributions.
Fedora Core—A version of Linux packaged and distributed by Red Hat.
file globbing—A form of filename substitution, similar to the use of wildcards in Windows and DOS.
flavor—The term used to refer to the different implementations of a particular UNIX-type of system. For example, different flavors of Linux include Red Hat’s Fedora Core, SUSE, and Mandrake.
freely distributable software—See open source software.
GNU—The name given to the public software project to implement a complete, free source code implementation of UNIX. It also refers to the collection of UNIX-inspired utilities and tools that are included with Linux distributions. The term “GNU” is an acronym within an acronym that stands for “GNU’s Not UNIX.”
HFS+—The primary file system used in Mac OS X Server.
hierarchical file system—The organization of files and directories (or folders) on a disk in which directories may contain files and other directories. When displayed graphically, this organization resembles a treelike structure.
information node—See i-node.
i-node (information node)—A UNIX-type file system information storage area that holds all details about a file. This information includes the size, the access rights, the date and time of creation, and a pointer to the actual contents of the file.
Java System Directory Server Enterprise Edition—The Sun Microsystems implementation of LDAP.
446 Chapter 9 NETWORKING WITH UNIX-TYPE OF OPERATING SYSTEMS
kernel—The core of a UNIX-type of system and a NetWare NOS. This part of the operating system is loaded and run when you turn on your computer. It mediates between user programs and the computer hardware.
kernel module—A portion of the kernel that you can load and unload to add or remove functionality on a running UNIX or Linux system.
line printer daemon—See lpd.
Linux—A freely distributable implementation of a UNIX-type of system. Finnish computer scientist Linus Torvalds originally developed it.
lpd (line printer daemon)—A UNIX service responsible for printing files placed in the printer queue by the lpr command.
lpr—The UNIX command. This command simply places files in the printer queue. The files are subsequently printed with lpd, the print service.
Mac OS X Server—A proprietary network operating system from Apple Computer that is based on a version of UNIX.
Mach—A UNIX-type of operating system kernel developed by researchers at Carnegie Mellon University in Pittsburgh, PA. Mach is the basis for the kernel in Mac OS X Server.
man pages—See manual pages.
manual pages—The online documentation for any variety of the UNIX operating system. This documentation describes the use of the commands and the programming interface.
mount—The process of making a disk partition available.
Network File System—See NFS.
NFS (Network File System)—A popular remote file system created by Sun Microsystems, and available for UNIX-type of systems.
OpenLDAP—A popular open source application included with many Linux distributions that implements LDAP.
Open Directory—The version of OpenLDAP by Apple Computer that is included with Mac OS X Server.
open source software—The term used to describe software that is distributed with few restrictions and whose source code is freely available.
pipe—A character that enables you to combine existing commands to form new commands. The pipe symbol is the vertical bar (“|”).
pipeline—A series of two or more commands in which the output of prior commands is sent to the input of subsequent commands.
PowerPC—The brand of computer central processing unit invented by Apple Computer, IBM, and Motorola, Inc., and used in Apple computers and IBM servers.
REVIEW QUESTIONS |
Chapter 9 447 |
proprietary UNIX—Any implementation of UNIX for which the source code is either unavailable or available only by purchasing a licensed copy from The SCO Group (costing as much as millions of dollars). Redistribution of proprietary UNIX versions requires paying royalties to The SCO Group.
root—A highly privileged user ID that has all rights to create, delete, modify, move, read, write, or execute files on a system. This term may also refer to the network administrator.
Samba—An open source software package that provides complete Windows-style fileand printer-sharing capabilities.
shell—Another term for the UNIX command interpreter.
Solaris—A proprietary implementation of the UNIX operating system by Sun Microsystems.
source code—The computer instructions written in a programming language that is readable by humans. Source code must be translated into a form that is executable by the machine, typically called binary code (for the sequence of zeros and ones) or target code.
SPARC—The brand of computer central processing unit invented by and used in Sun Microsystems servers.
System V—The proprietary version of UNIX that comes from Bell Labs.
The Open Group—A nonprofit industry association that owns the UNIX trademark.
The SCO Group—The company that owns the rights to the UNIX source code.
UFS—The primary file system used in the Solaris operating system.
Workgroup Manager—The application in Mac OS X Server that enables a network administrator to manage users and groups.
XNU—The Mach-based kernel in Mac OS X.
Xserve—The enterprise-class of server computer by Apple Computer, which is based on the PowerPC processor and which runs Mac OS X Server.
X Window system—The GUI environment for UNIX-type of systems.
Review Questions
1.Versions of UNIX that come from Bell Labs are known as
_________________________.
a.AppleShare IP
b.Linux
c.System V
d.Fedora Core
448Chapter 9 NETWORKING WITH UNIX-TYPE OF OPERATING SYSTEMS
2.On a Linux or Solaris system, the _________________________ command creates a new group ID and makes the group available for use.
a.groupadd
b.ext3
c.lpr
d.mount
3.Any modern client running the TCP/IP protocol suite will be capable of connecting to a UNIX-type of host via _________________________.
a.Solaris
b.Samba
c.DOS
d.Telnet
4._________________________ is equivalent to using wildcards in Windows and DOS.
a.Pipelining
b.File globbing
c.Mounting
d.Piping
5.Every UNIX-type system contains full documentation of UNIX commands in the
_________________________.
a.manual pages
b.pipeline
c.software
d.shell
6.True or false? The SCO Group is the company that owns the rights to the UNIX source code.
7.True or false? Any UNIX-type of operating system can act as a workstation or server operating system.
8.True or false? Most current UNIX-type systems use a 16-bit addressing scheme that enables programs to access 4 GB of memory.
9.True or false? Every file and directory on a UNIX-type of system is owned by exactly one user and is a member of exactly one group.
REVIEW QUESTIONS |
Chapter 9 449 |
10.True or false? UNIX modules make it possible to create sequences of commands that might require custom programming on other systems.
11.The core of all UNIX-type systems is called the _________________________.
12.A(n) _________________________ is a file that contains instructions for performing a specific task, such as reading data from and writing data to a hard drive.
13.Apple’s _________________________ is the native file system for Mac OS X Server.
14.A program that accepts the commands you type on the keyboard and runs the commands for you is called a(n) _________________________.
15.In UNIX, two or more commands connected by a pipe are called a(n)
_________________________.
This page intentionally left blank
Chapter 10
NetWare-Based
Networking
After reading this chapter and completing the exercises, you will be able to:
■Identify the advantages of using the NetWare network operating system
■Describe NetWare’s server hardware requirements
■Understand NetWare’s file system and directory structures
■Plan for and perform a simple NetWare server installation
■Explain how NetWare supports multiple clients and integrates with other network operating systems
