Title: Network Guide to Networks, Fourth Edition
1Network Guide to Networks, Fourth Edition
- Chapter 9
- Networking with UNIX-Type of Operating Systems
2Objectives
- Describe the origins and history of the UNIX
operating system
- Identify similarities and differences between
popular implementations of UNIX
- Describe the features and capabilities of servers
running Solaris, Linux, and Mac OS X Server
- Explain and execute essential UNIX commands
3Objectives (continued)
- Install and configure Linux on an Intel-based PC
- Manage users, groups, and file access permissions
in Solaris, Linux, and Mac OS X Server
- Explain how computers running other operating
systems can connect to UNIX servers
4A Brief History of UNIX
- UNIX led to development of TCP/IP
- Numerous vendors sell different UNIX varieties
- Ken Thompson and Dennis Ritchie developed UNIX at
Bell Labs (part of ATT)
- System V
- UNIX source code was cheaply available from ATT
- Quickly distributed to many organizations
5A Brief History of UNIX (continued)
- Berkeley Software Distribution (BSD) Berkeley
versions of UNIX
- Added TCP/IP network subsystem to UNIX
- ATT sold rights to UNIX
- Now owned by two groups
- The SCO Group owns rights to UNIX source code
- The Open Group owns UNIX trademark
6Varieties of UNIX
- All flavors of UNIX share the following
features
- Support multiple, simultaneously logged-on users
- Coordinate multiple, simultaneously running
tasks
- Mount disk partitions on demand
- Apply permissions for file and directory access
and modification
- Uniform method of issuing data to or receiving
data from hardware devices, files, and running
programs
- Start programs without interfering running
programs
7Varieties of UNIX (continued)
- All flavors of UNIX share the following features
(continued)
- Hundreds of subsystems, including dozens of
programming languages
- Source code portability
- Window interfaces (e.g., X Windows)
- Two main categories
- Proprietary
- Open source
8Proprietary UNIX
- Source code either unavailable or available only
by purchasing licensed copy from the SCO Group
- Mac OS X Server Apple
- Runs on PowerPC-based computers
- Solaris Sun
- Runs on SPARC-based workstations and servers,
Intel-based Pentium-class workstations and
servers
- AIX IBM
- Runs on PowerPC-based computers
- Does not run on Macs
9Proprietary UNIX (continued)
- Advantages
- Accountability and support
- Optimization of hardware and software
- Predictability and compatibility
- Customer has no access to systems source code
- Cannot customize
10Open Source UNIX
- Open source software available to anyone, without
licensing fees
- Open source UNIX flavors
- GNU
- BSD
- Linux
- Users can modify code
- Add functionality
- Can be installed on wide range of systems
11Three Flavors of UNIX
- Solaris used by Sun Microsystems on its
SPARC-based servers
- Linux follows standard UNIX conventions, highly
stable, and free
- Developed by Linus Torvalds in 1991
- Widely supported and used
- Mac OS X Server Runs on Apples Xserve line of
computers as well as Power Mac computers
- All support TCP/IP and other protocols
- Support many network topologies and physical media
12UNIX Server Hardware Requirements
- Any UNIX-type OS can act as a workstation or
server OS
- Use of GUI optional
- Command line interface
- To estimate additional hardware required
- Server usage?
- Applications and services to be run on server?
- Number of users?
- Peak usage time periods?
- Maximum tolerable downtime?
13Solaris Hardware Requirements
Table 9-1 Minimum hardware requirements for
Solaris 10
14Linux Hardware Requirements
Table 9-2 Minimum hardware requirements for a
Linux server
15Mac OS X Server Hardware Requirements
Table 9-3 Apple hardware recommendations for Mac
OS X Server
16A Closer Look at UNIX UNIX Multiprocessing
- Allocate separate resources (e.g., memory space)
to each process as it is created
- Enables partitioning of processes in memory
- Prevent programs from disrupting operation of
entire system
- Support symmetric multiprocessing (SMP)
- Solaris up to 128 processors
- Linux up to 32 processors
- Mac OS X Server up to 2 processors
17The UNIX Memory Model
- Use both physical and virtual memory efficiently
- Allocate memory area for each application
- Sharing memory between programs wherever
possible
- Increases efficiency
- Most use 32-bit addressing scheme
- Enables programs to access 4 GB of memory
- Most can run on CPUs employing 64-bit addresses
- Virtual memory disk partition or a file
18The UNIX Kernel
- Core of all UNIX-type of systems
- Loaded into memory and runs computer turned on
- Coordinates access to computers hardware
- Can add or remove functionality by loading and
unloading kernel modules
- Files containing instructions for performing
specific tasks
- Kernel origins
- Solaris original ATT UNIX software
- Linux Linus Torvalds
- Mac OS X Server (XNU) Mach
19UNIX System File and Directory Structure
- First OSs to implement hierarchical file system
- /boot directory contains kernel and other system
initialization files
- Applications and services stored in /bin and
/sbin directories
- /var directory holds variable data
- Users login directories typically in /home
- /Users on Mac OS X Server
20UNIX System File and Directory Structure
(continued)
Figure 9-1 UNIX file system hierarchy
21UNIX System File Services
- Disk File Systems
- OSs facility for organizing, managing, and
accessing files through logical structures and
software routines
- Native file system type on Linux is ext3
- Solaris employs UFS
- Mac OS X Server employs HFS file system
- Can access FAT and NTFS partitions
22UNIX System File Services (continued)
- Network File Systems (NFSs) analogous to Windows
shares or NetWare network volumes
- Attach shared file systems (or drives) from
Windows, NetWare, or other UNIX servers and share
files with users on other computers
- Sun Microsystems NFS
- Samba open source application that implements
Windows SMB and CIFS file system protocols
- Included with Solaris, most Linux distributions,
and Mac OS X Server systems by default
- Mac OS X Server uses AFP
23A UNIX Command Sampler
- Command line is primary method of interacting
with UNIX-type systems
- Command interpreter (shell) program that accepts
and runs typed commands
- Primary UNIX command interpreter file is /bin/sh
- Every UNIX-type system contains full
documentation of UNIX commands in manual pages
(man pages)
- Access via man command
24A UNIX Command Sampler (continued)
- Nine man page sections
- Section 1 covers commands most typically entered
- Sections 2 through 5 document programmers
interface to UNIX system
- Section 6 documents some amusements and games
included in UNIX system
- Section 7 describes device drivers
- Section 8 covers commands used by administrators
to manage system
- Section 9 documents UNIX kernel functions
programmers use when writing device drivers
25A UNIX Command Sampler (continued)
- apropos command find possible manual page
entries for a command
- Most commands are lowercase alphabetic
characters
- To specify an option, usually type a hyphen (-)
followed by a letter
- File globbing equivalent to using wildcards in
Windows and DOS
- UNIX directory separator character is /
26A UNIX Command Sampler (continued)
Table 9-4 Commonly used UNIX commands
27A UNIX Command Sampler (continued)
Table 9-4 (continued) Commonly used UNIX commands
28A UNIX Command Sampler (continued)
Table 9-4 (continued) Commonly used UNIX commands
29A UNIX Command Sampler (continued)
- Most frequently used UNIX command is ls
- For each file, system stores all information
(except filename) in a file information node
(i-node)
- Beginning of disk partitions contain reserved
space for all i-nodes on partition
- Contain pointers to actual file contents
- Pipe () combine commands
- Output of one command is input to next
- Pipeline two or more commands connected by a pipe
30A UNIX Command Sampler (continued)
Figure 9-3 Anatomy of ls l output
31Installing Linux Planning a Linux Installation
- Be prepared to answer following questions
- What is the new servers name?
- What is the servers IP address?
- Also need subnet mask, IP address of servers
primary gateway, and IP address of new servers
domain name server
- What kind of video card is installed in the
server?
- What is the administrative users password?
- Root administrating user name
- How can this information be remembered?
32Installing and Configuring Fedora Core
- Installation tasks
- Select language
- Confirm keyboard layout
- Select Server installation type
- Select disk drive partitioning options
- Choose booting options
- Configure the network interface(s)
- Configure firewall and security level options
- Set the time and time zone
- Enter the root password
33Administering a UNIX-type of Server
- User names and passwords used to connect clients
to network
- Access rights for groups
- Users may be members of multiple groups
- groupadd command enables addition of new group
- useradd command enables addition of new users
- Mac OS X Server uses GUI Workgroup Manager
application
34Establishing Groups and Users on Linux and Solaris
- groupadd command creates new group ID and makes
group available for use
- Assign unique ID number to each group
- Does not automatically assign access rights
- useradd command adds new user ID
- Creates user ID and assigns it to one or more
groups
- -g option specifies initial group
- -G option specifies additional groups
35Establishing Groups and User on Mac OS X Server
- Use Workgroup Manager application
- Creating new group does not assign users
- Assign unique name and numeric ID to groups
36Establishing Groups and User on Mac OS X Server
(continued)
Figure 9-4 User creation in Mac OS X Servers
Workgroup Manager
37Changing File Access Permissions
- Every file and directory is owned by exactly one
user and is a member of exactly one group
- By default, when a user creates a file or
directory, that user is the file or directorys
owner
38Changing File Access Permissions on Linux and
Solaris
- Use chgrp command to assign a file or directory
to a group
- Use chmod command to change file and directory
permissions
- Uses two sets of abbreviations to specify
permission changes for files
- First set identifies for whom change will occur
files owner (u for user), files group (g),
all others (o)
- Second set identifies access rights read (r),
write (w), and execute (x)
- Separated by plus or minus sign
39Changing File Access Permissions on Mac OS X
Server
- Accomplished through the GUI
- Must be logged on as system administrator
40Connecting to UNIX-Type of Servers
- UNIX-type of systems and Windows can both
communicate via TCP/IP
- File systems not necessarily compatible
- Samba one application that bridges file system
incompatibility
- Provides networking services necessary to make a
UNIX-type system a fully featured Windows file-
and printer-sharing server
- Communicates with Windows servers using SMB
file-sharing protocol and CIFS protocol
41Connecting to UNIX-Type of Servers (continued)
- All modern flavors of UNIX, Linux, and Mac OS X
Server support data sharing using directory
services based on LDAP
- Solaris Sun Java System Directory Server
Enterprise Edition
- Linux OpenLDAP
- Mac OS X Server Open Directory
- UNIX-type of systems include full complement of
Internet tools
- e.g., Telnet
42Connecting to UNIX-Type of Servers (continued)
Figure 9-5 Windows Telnet session
43Summary
- UNIX is a stable, flexible, and efficient NOS
that relies on TCP/IP and forms the basis of much
of the Internet
- Many varieties of UNIX-type of systems exist, and
each of these belong to one of two categories
proprietary and open source
- 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
44Summary (continued)
- UNIX-type of systems use virtual memory and also
allocate a memory area for each application
- The UNIX kernel, the core of the OS, is loaded
into memory from disk and runs when you turn on
your computer
- UNIX-type of systems were among the first to
include a hierarchical file system
- UNIX-type of systems support multiple file system
types
- UNIX-type of network file systems include NFS and
Samba
45Summary (continued)
- Consult the commands manual (man) page by typing
man command at the shell prompt, and pressing
Enter to learn more about a command
- ls command is most frequently used command
- The useradd and groupadd commands allow you to
add new users and groups
- The chgrp and chmod commands assign files to
groups and change file access permissions
46Summary (continued)
- 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 - All modern flavors of UNIX, Linux, and Mac OS X
Server support data sharing using directory
services based on LDAP
- 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