Linux with Operating System Concepts



Download 5,65 Mb.
Pdf ko'rish
bet3/254
Sana22.07.2022
Hajmi5,65 Mb.
#840170
1   2   3   4   5   6   7   8   9   ...   254
Bog'liq
Linux-with-Operating-System-Concepts-Fox-Richard-CRC-Press-2014

Trademark Notice:
Product or corporate names may be trademarks or registered trademarks, and are used only for 
identification and explanation without intent to infringe.
Visit the Taylor & Francis Web site at
http://www.taylorandfrancis.com
and the CRC Press Web site at
http://www.crcpress.com


With all my love to
Cheri Klink, Sherre Kozloff, and Laura Smith



vii
Contents
Preface, xix
Acknowledgments and Contributions, xxi
How to Use This Textbook, xxiii
Author, xxv
C
hapter


I
ntroduCtIon
to
L
Inux
1
1.1 WHY LINUX? 1
1.2 OPERATING SYSTEMS 3
1.3 THE LINUX OPERATING SYSTEM: GUIs 5
1.3.1 User Account and Logging In 
6
1.3.2 Gnome 
7
1.3.3 KDE Desktop Environment 
13
1.4 THE LINUX COMMAND LINE 15
1.4.1 The Interpreter 
15
1.4.2 The Shell 
16
1.4.3 The CLI over the GUI 
17
1.5 VIRTUAL MACHINES 19
1.6 UNIX AND LINUX 21
1.7 TYPES OF USERS 23
1.8 WHAT IS A COMPUTER? 25
1.8.1 The IPOS Cycle 
25
1.8.2 Computer Hardware 
26
1.8.3 Software and Users 
28
1.8.4 Types of Computers 
29
1.9 THIS TEXTBOOK 31
1.10 CHAPTER REVIEW 32
REVIEW QUESTIONS 34


viii

Contents
C
hapter


t
he
B
ash
s
heLL
37
2.1 INTRODUCTION 37
2.2 ENTERING LINUX COMMANDS 38
2.2.1 Simple Linux Commands 
39
2.2.2 Commands with Options and Parameters 
40
2.3 MAN PAGES 43
2.4 BASH FEATURES 46
2.4.1 Recalling Commands through History 
46
2.4.2 Shell Variables 
47
2.4.3 Aliases 
51
2.4.4 Command Line Editing 
52
2.4.5 Redirection 
54
2.4.6 Other Useful Bash Features 
57
2.5 OTHER SHELLS 59
2.6 INTERPRETERS 61
2.6.1 Interpreters in Programming Languages 
61
2.6.2 Interpreters in Shells 
62
2.6.3 The Bash Interpreter 
63
2.7 CHAPTER REVIEW 64
REVIEW QUESTIONS 67
C
hapter


n
avIgatIng
the
L
Inux
F
ILe
s
ystem
71
3.1 INTRODUCTION 71
3.1.1 File System Terminology 
72
3.1.2 A Hierarchical File System 
73
3.2 FILENAME SPECIFICATION 74
3.2.1 The Path 
74
3.2.2 Specifying Paths above and below the Current Directory 
76
3.2.3 Filename Arguments with Paths 
76
3.2.4 Specifying Filenames with Wildcards 
77
3.3 FILE SYSTEM COMMANDS 79
3.3.1 Directory Commands 
80
3.3.2 File Movement and Copy Commands 
81
3.3.3 File Deletion Commands 
85
3.3.4 Creating and Deleting Directories 
86


Contents

ix
3.3.5 Textfile Viewing Commands 
87
3.3.6 File Comparison Commands 
88
3.3.7 File Manipulation Commands 
89
3.3.8 Other File Commands of Note 
91
3.3.9 Hard and Symbolic Links 
92
3.4 LOCATING FILES 93
3.4.1 The GUI Search Tool 
94
3.4.2 The Find Command 
94
3.4.3 Other Means of Locating Files 
97
3.5 PERMISSIONS 99
3.5.1 What Are Permissions? 
99
3.5.2 Altering Permissions from the Command Line 
100
3.5.3 Altering Permissions from the GUI 
103
3.5.4 Advanced Permissions 
104
3.6 LINUX FILE SYSTEM STRUCTURE 105
3.7 SECONDARY STORAGE DEVICES 107
3.7.1 The Hard Disk Drive 
108
3.7.2 Magnetic Tape 
110
3.7.3 Optical Disk and USB Drive 
111
3.8 FILE COMPRESSION 113
3.8.1 Types of File Compression 
113
3.8.2 The LZ Algorithm for Lossless Compression 
113
3.8.3 Other Lossless Compression Algorithms 
115
3.9 CHAPTER REVIEW 116
REVIEW QUESTIONS 118
C
hapter


m
anagIng
p
roCesses
125
4.1 INTRODUCTION 125
4.2 FORMS OF PROCESS MANAGEMENT 127
4.2.1 Single Process Execution 
128
4.2.2 Concurrent Processing 
129
4.2.3 Interrupt Handling 
132
4.3 STARTING, PAUSING, AND RESUMING PROCESSES 133
4.3.1 Ownership of Running Processes 
133
4.3.2 Launching Processes from a Shell 
135
4.4 MONITORING PROCESSES 138


x

Contents
4.4.1 GUI Monitoring Tools 
138
4.4.2 Command-Line Monitoring Tools 
140
4.5 MANAGING LINUX PROCESSES 145
4.6 KILLING PROCESSES 147
4.6.1 Process Termination 
147
4.6.2 Methods of Killing Processes 
149
4.6.3 Methods to Shut Down Linux 
150
4.7 CHAPTER REVIEW 151
REVIEW QUESTIONS 155
C
hapter


L
Inux
a
ppLICatIons
159
5.1 INTRODUCTION 159
5.2 TEXT EDITORS 160
5.2.1 vi (vim) 
161
5.2.2 emacs 
164
5.2.3 gedit 
170
5.3 PRODUCTIVITY SOFTWARE 171
5.4 LATEX 172
5.5 ENCRYPTION SOFTWARE 175
5.5.1 What Is Encryption? 
175
5.5.2 Openssl 
177
5.6 EMAIL PROGRAMS 180
5.6.1 Sending Email Messages 
181
5.6.2 Reading Email Messages 
182
5.7 NETWORK SOFTWARE 183
5.7.1 Internet Protocol Addressing 
184
5.7.2 Remote Access and File Transfer Programs 
185
5.7.3 Linux Network Inspection Programs 
188
5.8 CHAPTER REVIEW 195
REVIEW PROBLEMS 198
C
hapter


r
eguLar
e
xpressIons
201
6.1 INTRODUCTION 201
6.2 METACHARACTERS 203
6.2.1 Controlling Repeated Characters through *, 
+
, and ? 
203
6.2.2 Using and Modifying the ‘.’ Metacharacter 
205
6.2.3 Controlling Where a Pattern Matches 
206


Contents

xi
6.2.4 Matching from a List of Options 
207
6.2.5 Matching Characters That Must Not Appear 
209
6.2.6 Matching Metacharacters Literally 
210
6.2.7 Controlling Repetition 
211
6.2.8 Selecting between Sequences 
212
6.3 EXAMPLES 213
6.4 GREP 216
6.4.1 Using grep/egrep 
216
6.4.2 Useful egrep Options 
219
6.4.3 Additional egrep Examples 
221
6.4.4 A Word of Caution: Use Single Quote Marks 
224
6.5 SED 225
6.5.1 Basic sed Syntax 
225
6.5.2 Placeholders 
228
6.6 awk 230
6.6.1 Simple awk Pattern-Action Pairs 
231
6.6.2 BEGIN and END Sections 
234
6.6.3 More Complex Conditions 
235
6.6.4 Other Forms of Control 
239
6.7 CHAPTER REVIEW 240
REVIEW QUESTIONS 241
C
hapter


s
heLL
s
CrIptIng
245
7.1 INTRODUCTION 245
7.2 SIMPLE SCRIPTING 246
7.2.1 Scripts of Linux Instructions 
246
7.2.2 Running Scripts 
247
7.2.3 Scripting Errors 
248
7.3 VARIABLES, ASSIGNMENTS, AND PARAMETERS 249
7.3.1 Bash Variables 
249
7.3.2 Assignment Statements 
250
7.3.3 Executing Linux Commands from within 
Assignment Statements 
252
7.3.4 Arithmetic Operations in Assignment Statements 
254
7.3.5 String Operations Using 
expr
256
7.3.6 Parameters 
257


xii

Contents
7.4 INPUT AND OUTPUT 258
7.4.1 Output with echo 
258
7.4.2 Input with read 
260
7.5 SELECTION STATEMENTS 263
7.5.1 Conditions for Strings and Integers 
263
7.5.2 File Conditions 
266
7.5.3 The If-Then and If-Then-Else Statements 
268
7.5.4 Nested Statements 
270
7.5.5 Case Statement 
272
7.5.6 Conditions outside of Selection Statements 
276
7.6 LOOPS 277
7.6.1 Conditional Loops 
277
7.6.2 Counter-Controlled Loops 
278
7.6.3 Iterator Loops 
279
7.6.4 Using the Seq Command to Generate a List 
281
7.6.5 Iterating over Files 
281
7.6.6 The While Read Statement 
284
7.7 ARRAYS 285
7.7.1 Declaring and Initializing Arrays 
286
7.7.2 Accessing Array Elements and Entire Arrays 
287
7.7.3 Example Scripts Using Arrays 
288
7.8 STRING MANIPULATION 289
7.8.1 Substrings Revisited 
289
7.8.2 String Regular Expression Matching 
290
7.9 FUNCTIONS 293
7.9.1 Defining Bash Functions 
293
7.9.2 Using Functions 
295
7.9.3 Functions and Variables 
296
7.9.4 Exit and Return Statements 
298
7.10 C-SHELL SCRIPTING 299
7.10.1 Variables, Parameters, and Commands 
299
7.10.2 Input and Output 
300
7.10.3 Control Statements 
301
7.10.4 Reasons to Avoid csh Scripting 
303
7.11 CHAPTER REVIEW 304
REVIEW QUESTIONS 307


Contents

xiii
C
hapter


I
nstaLLIng
L
Inux
313
8.1 INTRODUCTION 313
8.1.1 Installation Using Virtual Machines 
314
8.1.2 Preinstallation Questions 
314
8.2 THE LINUX-OPERATING SYSTEM 316
8.2.1 Operating Systems and Modes of Operation 
316
8.2.2 System Calls 
317
8.2.3 The Kernel 
318
8.2.4 Loading and Removing Modules 
320
8.3 INSTALLING CENTOS 6 321
8.3.1 The Basic Steps 
321
8.3.2 Disk-Partitioning Steps 
325
8.3.3 Finishing Your Installation 
330
8.4 INSTALLING UBUNTU 331
8.5 SOFTWARE INSTALLATION CHOICES 334
8.6 VIRTUAL MEMORY 335
8.7 SETTING UP NETWORK CONNECTIVITY AND A PRINTER 338
8.7.1 Establishing Network Connections 
338
8.7.2 Establishing Printers 
339
8.8 SELINUX 341
8.8.1 SELinux Components 
342
8.8.2 Altering Contexts 
343
8.8.3 Rules 
344
8.9 CHAPTER REVIEW 345
REVIEW PROBLEMS 347
C
hapter


u
ser
a
CCounts
351
9.1 INTRODUCTION 351
9.2 CREATING ACCOUNTS AND GROUPS 352
9.2.1 Creating User and Group Accounts through the GUI 
352
9.2.2 Creating User and Group Accounts from the Command Line 
354
9.2.3 Creating a Large Number of User Accounts 
358
9.3 MANAGING USERS AND GROUPS 361
9.3.1 GUI User Manager Tool 
361
9.3.2 Command Line User and Group Management 
362


xiv

Contents
9.4 PASSWORDS 365
9.4.1 Ways to Automatically Generate Passwords 
365
9.4.2 Managing Passwords 
367
9.4.3 Generating Passwords in Our Script 
368
9.5 PAM 370
9.5.1 What Does PAM Do? 
370
9.5.2 Configuring PAM for Applications 
370
9.5.3 An Example Configuration File 
372
9.6 ESTABLISHING COMMON USER RESOURCES 373
9.6.1 Populating User Home Directories with Initial Files 
373
9.6.2 Initial User Settings and Defaults 
375
9.7 THE SUDO COMMAND 377
9.8 ESTABLISHING USER AND GROUP POLICIES 380
9.8.1 We Should Ask Some Questions before Generating Policies 
380
9.8.2 Four Categories of Computer Usage Policies 
381
9.9 CHAPTER REVIEW 383
REVIEW QUESTIONS 385
C
hapter
10 

t
he
L
Inux
F
ILe
s
ystem
391
10.1 INTRODUCTION 391
10.2 STORAGE ACCESS 392
10.2.1 Disk Storage and Blocks 
392
10.2.2 Block Indexing Using a File Allocation Table 
393
10.2.3 Other Disk File Details 
394
10.3 FILES 394
10.3.1 Files versus Directories 
395
10.3.2 Nonfile File Types 
395
10.3.3 Links as File Types 
397
10.3.4 File Types 
398
10.3.5 inode 
399
10.3.6 Linux Commands to Inspect inodes and Files 
402
10.4 PARTITIONS 405
10.4.1 File System Redefined 
405
10.4.2 Viewing the Available File Systems 
406
10.4.3 Creating Partitions 
409
10.4.4 Altering Partitions 
411


Contents

xv
10.4.5 Using a Logical Volume Manager to Partition 
411
10.4.6 Mounting and Unmounting File Systems 
414
10.4.7 Establishing Quotas on a File System 
417
10.5 LINUX TOP-LEVEL DIRECTORIES REVISITED 419
10.5.1 Root Partition Directories 
419
10.5.2 /dev, /proc, and /sys 
422
10.5.3 The /etc Directory 
424
10.5.4 /home 
426
10.5.5 /usr 
426
10.5.6 /var 
427
10.5.7 Directories and Changes 
427
10.6 OTHER SYSTEM ADMINISTRATION DUTIES 428
10.6.1 Monitoring Disk Usage 
428
10.6.2 Identifying Bad Blocks and Disk Errors 
429
10.6.3 Protecting File Systems 
430
10.6.4 Isolating a Directory within a File System 
435
10.7 CHAPTER REVIEW 436
REVIEW PROBLEMS 439
C
hapter
11 

s
ystem
I
nItIaLIzatIon
and
s
ervICes
445
11.1 INTRODUCTION 445
11.2 BOOT PROCESS 446
11.2.1 Volatile and Nonvolatile Memory 
446
11.2.2 Boot Process 
447
11.3 BOOT LOADING IN LINUX 448
11.3.1 Boot Loaders 
448
11.3.2 Loading the Linux Kernel 
449
11.4 INITIALIZATION OF THE LINUX OPERATING SYSTEM 450
11.4.1 inittab File and Runlevels 
450
11.4.2 Executing rcS.conf and rc.sysinit 
453
11.4.3 rc.conf and rc Scripts 
454
11.4.4 Finalizing System Initialization 
456
11.5 LINUX SERVICES 457
11.5.1 Categories of Services 
457
11.5.2 Examination of Significant Linux Services 
458
11.5.3 Starting and Stopping Services 
463


xvi

Contents
11.5.4 Examining the atd Service Control Script 
465
11.6 CONFIGURING SERVICES THROUGH GUI TOOLS 471
11.6.1 Firewall Configuration Tool 
472
11.6.2 kdump Configuration Tool 
473
11.7 CONFIGURING SERVICES THROUGH CONFIGURATION
FILES 475
11.7.1 Configuring Syslog 
475
11.7.2 Configuring nfs 
477
11.7.3 Other Service Configuration Examples 
478
11.8 CHAPTER REVIEW 480
REVIEW PROBLEMS 481
C
hapter
12 

n
etwork
C
onFIguratIon
485
12.1 INTRODUCTION 485
12.2 COMPUTER NETWORKS AND TCP/IP 486
12.2.1 Broadcast Devices 
486
12.2.2 The TCP/IP Protocol Stack 
487
12.2.3 Ports 
490
12.2.4 IPv6 
491
12.2.5 Domains, the DNS, and IP Aliases 
492
12.3 NETWORK SERVICES AND FILES 494
12.3.1 The Network Service 
494
12.3.2 The /etc/sysconfig/network-scripts Directory’s Contents 
495
12.3.3 Other Network Services 
497
12.3.4 The xinetd Service 
499
12.3.5 Two /etc Network Files 
502
12.4 OBTAINING IP ADDRESSES 503
12.4.1 Static IP Addresses 
503
12.4.2 Dynamic IP Addresses 
504
12.4.3 Setting up a DHCP Server 
505
12.5 NETWORK PROGRAMS 507
12.5.1 The ip Program 
507
12.5.2 Other Network Commands 
509
12.6 THE LINUX FIREWALL 510
12.6.1 The iptables-config File 
511
12.6.2 Rules for the iptables File 
511


Contents

xvii
12.6.3 Examples of Firewall Rules 
515
12.7 WRITING YOUR OWN NETWORK SCRIPTS 517
12.7.1 A Script to Test Network Resource Response 
518
12.7.2 A Script to Test Internet Access 
519
12.7.3 Scripts to Compile User Login Information 
521
12.8 CHAPTER REVIEW 522
REVIEW QUESTIONS 526
C
hapter
13 

s
oFtware
I
nstaLLatIon
and
m
aIntenanCe
531
13.1 INTRODUCTION 531
13.2 SOFTWARE INSTALLATION QUESTIONS 532
13.3 INSTALLING SOFTWARE FROM A GUI 533
13.3.1 Add/Remove Software GUI in CentOS 
533
13.3.2 Ubuntu Software Center 
535
13.4 INSTALLATION FROM PACKAGE MANAGER 536
13.4.1 RPM 
537
13.4.2 YUM 
540
13.4.3 APT 
544
13.5 INSTALLATION OF SOURCE CODE 546
13.5.1 Obtaining Installation Packages 
547
13.5.2 Extracting from the Archive 
547
13.5.3 Running the configure Script 
549
13.5.4 The make Step 
549
13.5.5 The make install Step 
551
13.6 THE GCC COMPILER 553
13.6.1 Preprocessing 
553
13.6.2 Lexical Analysis and Syntactic Parsing 
553
13.6.3 Semantic Analysis, Compilation, and Optimization 
554
13.6.4 Linking 
555
13.6.5 Using gcc 
557
13.7 SOFTWARE MAINTENANCE 558
13.7.1 Updating Software through rpm and yum 
558
13.7.2 System Updating from the GUI 
560
13.7.3 Software Documentation 
561
13.7.4 Software Removal 
561


xviii

Contents
13.8 THE OPEN SOURCE MOVEMENT 562
13.8.1 Evolution of Open Source 
562
13.8.2 Why Do People Participate in the Open Source Community? 
565
13.9 CHAPTER REVIEW 566
REVIEW QUESTIONS 569
C
hapter
14 

m
aIntaInIng
and
t
rouBLeshootIng
L
Inux
571
14.1 INTRODUCTION 571
14.2 BACKUPS AND FILE SYSTEM INTEGRITY 572
14.2.1 Examining File System Usage 
572
14.2.2 RAID for File System Integrity 
573
14.2.3 Backup Strategies 
576
14.3 TASK SCHEDULING 578
14.3.1 The at Program 
579
14.3.2 The crontab Program 
581
14.4 SYSTEM MONITORING 584
14.4.1 Liveness and Starvation 
584
14.4.2 Fairness 
587
14.4.3 Process System-Monitoring Tools 
588
14.4.4 Memory System-Monitoring Tools 
590
14.4.5 I/O System-Monitoring Tools 
592
14.5 LOG FILES 594
14.5.1 syslogd Created Log Files 
595
14.5.2 Audit Logs 
598
14.5.3 Other Log Files of Note 
601
14.5.4 Log File Rotation 
602
14.6 DISASTER PLANNING AND RECOVERY 604
14.7 TROUBLESHOOTING 607
14.8 CHAPTER REVIEW 613
REVIEW QUESTIONS 616
BIBLIOGRAPHY, 621
APPENDIX: BINARY AND BOOLEAN LOGIC, 631


xix
Preface
L
ook around at the Unix/Linux textbook market and you find nearly all of the 
books target people who are looking to acquire hands-on knowledge of Unix/Linux, 
whether as a user or a system administrator. There are almost no books that serve as text-
books for an academic class. Why not? There are plenty of college courses that cover or 
include Unix/Linux. We tend to see conceptual operating system (OS) texts which include 
perhaps a chapter or two on Unix/Linux or Unix/Linux books that cover almost no OS 
concepts. This book has been written in an attempt to merge the two concepts into a text-
book that can specifically serve a college course about Linux.
The topics could probably have been expanded to include more OS concepts, but at 
some point we need to draw the line. Otherwise, this text could have exceeded 1000 pages! 
Hopefully we have covered enough of the background OS concepts to satisfy all students, 
teachers, and Linux users alike.
Another difference between this text and the typical Unix/Linux text is the breadth of 
topics. The typical Unix/Linux book either presents an introduction to the OS for users or 
an advanced look at the OS for system administrators. This book covers Linux from both 
the user and the system administrator position. While it attempts to offer thorough cov-
erage of topics about Linux, it does not cover some of the more advanced administration 
topics such as authentication servers (e.g., LDAP, Kerberos) or network security beyond 
a firewall, nor does it cover advanced programming topics such as hacking open source 
software.
Finally, this book differs from most because it is a textbook rather than a hands-on, how-
to book. The book is complete with review sections and problems, definitions, concepts and 
when relevant, foundational material (such as an introduction to binary and Boolean logic, 
an examination of OS kernels, the role of the CPU and memory hierarchy, etc.).
Additional material is available from the CRC Website: http://crcpress.com/product/
isbn/9781482235890.



xxi
Acknowledgments 
and Contributions
F
irst, I am indebted to Randi Cohen and Stan Wakefield for their encouragement 
and patience in my writing and completing this text. I would also like to thank Gary 
Newell (who was going to be my coauthor) for his lack of involvement. If I was working 
with Gary, we would still be writing this! I would like to thank my graduate student office-
mate from Ohio State, Peter Angeline, for getting me into Unix way back when and giving 
me equal time on our Sun workstation.
I am indebted to the following people for feedback on earlier drafts of this textbook.
• Peter Bartoli, San Diego State University
• Michael Costanzo, University of California Santa Barbara
• Dr. Aleksander Malinowski, Bradley University
• Dr. Xiannong Meng, Bucknell University
• Two anonymous reviewers
I would like to thank the NKU (Northern Kentucky University) students from CIT 370 
and CIT 371 who have given me feedback on my course notes, early drafts of this textbook, 
and the labs that I have developed, and for asking me questions that I had to research 
answers to so that I could learn more about Linux. I would like to specifically thank the 
following students for feedback: Sohaib Albarade, Abdullah Saad Aljohani, Nasir Al Nasir
Sean Butts, Kimberly Campbell, Travis Carney, Jacob Case, John Dailey, Joseph Driscoll, 
Brenton Edwards, Ronald Elkins, Christopher Finke, David Fitzer, James Forbes, Adam 
Foster, Joshua Frost, Andrew Garnett, Jason Guilkey, Brian Hicks, Ali Jaouhari, Matthew 
Klaybor, Brendan Koopman, Richard Kwong, Mousa Lakshami, David Lewicki, Dustin 
Mack, Mariah Mains, Adam Martin, Chris McMillan, Sean Mullins, Kyle Murphy, Laura 
Nelson, Jared Reinecke, Jonathan Richardson, Joshua Ross, Travis Roth, Samuel Scheuer, 
Todd Skaggs, Tyler Stewart, Matthew Stitch, Ayla Swieda, Dennis Vickers, Christopher 
Witt, William Young, John Zalla, and Efeoghene Ziregbe.


xxii

Acknowledgments and Contributions
I would like to thank Charlie Bowen, Chuck Frank, Wei Hao, Yi Hu, and Stuart Jaskowiak 
for feedback and assistance. I would like to thank Scot Cunningham for teaching me about 
network hardware.
I would also like to thank everyone in the open source community who contribute their 
time and expertise to better all of our computing lives.
On a personal note, I would like to thank Cheri Klink for all of her love and support, 
Vicki Uti for a great friendship, Russ Proctor for his ear whenever I need it, and Jim Hughes 
and Ben Martz for many hours of engaging argumentation.


xxiii
How to Use This Textbook
T
his textbook is envisioned for a 1- or 2-semester course on Linux (or Unix). For a 
1- semester course, the book can be used either as an introduction to Linux or as a sys-
tem administration course. If the text is used for a 1-semester junior or senior level course, 
it could potentially cover both introduction and system administration. In this case, the 
instructor should select the most important topics rather than attempting complete cover-
age. If using a 2-semester course, the text should be as for both introduction and system 
administration.
The material in the text builds up so that each successive chapter relies, in part, on previ-
ously covered material. Because of this, it is important that the instructor follows the chap-
ters in order, in most cases. Below are flow charts to indicate the order that chapters should 
or may be covered. There are three flow charts; one each for using this text as a 1-semester 
introductory course, a 1-semester system administration course, and a 1-semester course 
that covers both introduction and system administration. For a 2-semester sequence, use 
the first two flow charts; one per semester. In the flow charts, chapters are abbreviated as 
“ch.” Chapters appearing in brackets indicate optional material.
1-semester introductory course:
ch 1
ch 2
ch 3
ch 4
ch 5
ch 6
ch 7
ch 8

















[appendix]
1-semester system administration course:
[
]
[
]
[
]
ch 5
ch 6
ch
ch 8
ch 9
ch 10
ch 11
ch 12
ch 1
7












[appendix]
33
ch 14
ch 15


1-semester combined course:
[ch 1] 

appendix* 

ch 2 

ch 3 

ch 4 

ch 5* 

ch 6* 

ch 7

ch 8* 

ch 9 

ch 10 

ch 11 

ch 12 

ch 13* 

ch 14


xxiv

How to Use This Textbook
As the 1-semester combined course will be highly compressed, it is advisable that chap-
ters denoted with an
asterisk (*) receive only partial coverage. For Chapter 5, it is recom-
mended that only vi be covered. For Chapter 6, it is recommended that the instructor skips 
the more advanced material on 

Download 5,65 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   254




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish