Linux用户基础

Linux用户基础


Linux用户基础
用户基础Linux教学目标
熟悉Linux系统的运行环境
掌握Linux中常用命令的使用
掌握Linux系统管理的相关内容
文件系统管理、用户管理、进程管理、
软件安装管理、TCP/IP网络配置管理
掌握Shell及使用
掌握vi编辑器
配置网络和网络服务
掌握代理服务器的配置
Linux 用户基础
第一章
Linux系统概述
本章要点
UNIX与Linux简介
Linux的组成及功能
Linux的内核版本与发行套件
Linux的现状与未来
与Linux相关的基本概念
什么是Linux ?
Linux是一个功能强大的操作系统
同时它是一个自由软件,是免费的、源代码开放的

编制它的目的是建立不受任何商品化软件权制约的、全世界都能自由使用的Unix兼容产品。


UNIX历史简介
20世纪70年代,贝尔实验室开发出UNIX
目前分为AT&T System V和Berkley BSD两个系列

目前常见的UNIX版本有:
Sun Solaris
SCO UNIX
HP-OS
AIX
注:Linux同时兼容System V和BSD两种Unix系统
POSIX 简介
POSIX – Portable Operating System Interface

各家厂商发展自己的Unix -> 各Unix系统不兼容!

1988年,NTST/CSL的组织召开各Unix厂商,组织和用户共同制定了POSIX,可禁用词语操作系统标准界面(IEEE 1003.1)

结果:只要遵循POSIX,某一个Unix环境下的软件,只需做少许的修改,就能在其他的Unix环境下编译成功。
Linux历史简介
芬兰大学生Linus Torvalds在从1990年底到1991年的几个月中,利用Minix操作系统作为开发平台,为他自己的操作系统课程和后来的上网用途而陆续编写了若干程序。

1991.10.5 在Internet的comp.os.minix讨论区发表了一篇文章,表明他正在研制一个要超越Minix的操作系统,从而宣告了Linux的诞生。

1993年,Linux 1.0问世

1999年,Linux Kernel 2.2.x问世

2001年,Linux Kernel 2.4.x问世
开放源代码(Open Source)
宗旨
允许任何人自由传播复制及修改软件的程序代码,而不在于不收费

起源
1983.9,Richard M. Stallman (RMS) ,FSF(Free Software Foundation)的创始人,目前为GNU Project的项目主持人

产品种类
- Kernel
- Editor
- Shell
GNU&GPL 简介
GNU – Gnu’s Not Unix
是自由软件基金会FSF(Free Software Foundation)中头一个名为GNU的团体,目前近400人。

GPL – General Public License
软件的源程序可以自由流通,软件公司不应该把源程序拒为己有,或借发行编译过的软件赢利,软件公司要赚取的应该是系统集成和服务的费用

所有的程序员可以交换心得,保证软件质量
GNU与Linux
Linus本人认为:“使Linux成为GPL的一员是我一生中所作过的最漂亮的一件事”。

GNU的开发过程:
先开发gcc等强大工具,最后再开发GNU Kernel ( Hurd ) ? 最优秀的操作系统Gnu’s Not Unix

Linux的出现 ? Linux Kernel + GNU Software ? Debian/Linux ?填补Hurd出现前的真空状态
Linux的特点
开放性的系统
多用户多任务的系统
具有出色的稳定性和速度性能
具有可靠的系统安全性
提供了丰富的网络功能
标准兼容性和可禁用词语性
提供了良好的用户界面
为什么使用Linux
Linux是一套具有Unix全部功能的免费操作系统

Linux不仅为用户提供了强大的操作系统功能,而且还提供了丰富的应用软件

Linux为广大用户提供了一个在家里学习和使用Unix操作系统的机会

Linux能与现有存在的操作系统共存

随着各大公司的加盟,有理由相信Linux将以更迅猛的势头发展,并最终成为一个多平台的、市场占有率较高的、极其优秀的网络操作系统。
Linux系统的组成
Linux内核
Linux Shell
Linux文件系统

Linux实用工具

内核,Shell和文件系统一起形
成了基本的操作系统结构
Kernel(内核)和版本
Kernel实现操作系统的基本功能
硬件方面:控制硬件设备,内存管理,硬件接口,基本I/O
软件方面:管理文件系统,为程序分配内存和CPU时间等

版本号有三个数字组成:r.x.y
r:目前发布的Kernel版本
x:偶数:稳定版本,奇数:开发中版本
y:错误修补的次数


范例:2.0.38;2.2.16
说明:2.1修正了132次后才变为2.2版
操作系统的内核
Microkernel 微内核
内核提供操作系统的核心功能。微内核是内核的精简版本,它设计成在很小的内存空间内增加禁用词语性,提供模块化设计,以使用户安装不同的接口,如UNIX、DOS、Windows、Workplace OS、Workp1ace UNIX等
Linux 发行套件
Linux 发行套件(Distribution) :以Linux Kernel为核心,搭配各种应用程序和工具。
目前有200余种Linux Distribution
常见的Linux Distribution
--------

西文版/国际版
RedHat Linux
Mandrake Linux
Debian GNU/Linux
Slackware Linux
SuSE Linux
Turbo Linux
中文版
Xteam Linux
红旗Linux
Turbo Linux 中文版
BluePoint Linux
Linux Shell
Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器)
它接收用户输入的命令并把它送入内核去执行

目前主要有下列版本的Shell有:
Bourne Shell:是贝尔实验室开发的。
BASH:是GNU的Bourne Again Shell,是GNU操作系统上默认的shell。
Korn Shell:是对Bourne SHell的发展,在大部分内容上与Bourne Shell兼容。
C Shell:是SUN公司Shell的BSD版本。
Linux 文件系统
文件系统是文件存放在磁盘等存储设备上的组织方法。

主要体现在对文件和目录的组织上。

Linux采用统一的树型结构的文件系统
在Linux文件系统下可以。
切换目录、访问文件
设置目录和文件的权限
设置文件的共享

Linux支持多种类型的文件系统。
Linux 的应用
Linux的应用领域
Linux服务器
嵌入式Linux系统
桌面市场
典型应用
Titanic:特效 -> 350台SGI及160台DEC Alpha工作站,运行Red Hat 4.1
Linux超级电脑:Los Alamos National Laboratory利用70台DEC Alpha 533Mhz,128M内存, 3G硬盘的计算机,运行Red Hat 5.0,造价15万美元,运算速度类似SGI Origin 2000(造价180万美元)
第二章 操作系统功能及安装
1、处理器管理
2、设备管理
3、文件管理
4、作业管理
5、存储器管理
处理器管理
1、CPU管理(进程管理)
把一个程序在一个数据集合上的一次执行称为一个“进程”
进程的管理:
1)、进程控制:创建进程、撤销进程控制进程的状态转换
2)、进程同步:对并发执行的进程进行协调
3)、进程通信:管理相互合作的进程之间的通信
4)、进程调度:当一个进程放弃CPU后重新调其它进程运行。
设备管理
1)、缓冲区管理:利用缓冲区来缓冲CPU和I/O设备之间速度不匹配的矛盾。
2)、设备分配:分配给用户使用
3)、设备处理:启动指定的I/O设备,响应设备反回消息
4)、虚拟设备:把独享设备变成共享方式
文件管理
1)、文件存储空间的管理:
2)、目录管理
3) 、对文件的读或写
4)、文件保护
5)、提供接口供编程使用
作业管理
1)、作业调度:选择作业进入内存,让其进程获得竞争CPU的资格。
2)、作业控制:有脱机控制方式和联机控制方式
存储器管理
1)、存储器的分配和回收
2)、主存空间的共享和保护
3)、地址映射
4)、虚拟存储技术
学习Linux之前应该掌握的概念
磁盘及分区
理解Linux文件系统标准
掌握Linux下设备的使用方法
理解LILO和GRUB的用途
普通用户与超级用户
比较字符工作方式和图形工作方式
硬盘结构与磁盘分区


WIN2KP(2.93GB FA状态良好) (D:)3.91GBFA状态良好 800MB状态良好 2.93GB状态良好 1.95GB状态良好 204MB状态良好 3.26GB FA状态良好 Win2KS(3.19GB NT状态良好)
主分区 逻辑分区 逻辑分区 逻辑分区 逻辑分区 逻辑分区 逻辑分区 逻辑分区
扩展分区
整块硬盘

Linux常用分区类型
Linux native主分区:用于存放文件系
常用类型:Ext2、Ext3

Swap:暂时存储数据的交换分区 ,弥补内存不足,一般来说是物理内存的两倍大。
硬盘/光驱对照表


配置名称
说 明
/dev/hda
/dev/hdb
IDE I的Master/Slave硬盘/光盘
/dev/hdc
/dev/hdd
IDE II的Master/Slave硬盘/光盘
/dev/sda
/dev/sdb
第一,第二个SCSI硬盘
/dev/scd0
/dev/scd1
第一,第二个SCSI光驱

Linux 文件系统标准结构

Linux各分区功能
/boot系统过程中所要用到的文件
注意:如果想用lilo启动red?hat?linux系统的话,含有/boot的分区必须完全在柱面1023以下。又由于8gb后的数据lilo不能读取,所以red?hat?linux要安装在8gb的区域以内。
/usr分区,系统存放软件的地方
/home分区,是用户的home目录所在地,
/var/log分区,是系统日志记录分区
Linux各分区功能
/dev分区,存放设备文件。?
/opt分区,存放可选的安装的软件。?
/sbin分区,存放标准系统管理文件。
/tmp分区,用来存放临时文件

/bin分区,存放标准系统实用程序。?

/etc目录,存放系统配置文件
LILO与GRUB简介
LILO全称为LInux Loader
GRUB全称为GRand Unified Boot loader

是位于硬盘引导扇区的一个小程序
是引导Linux系统内核的最常见的方式
可以用来引导多个操作系统
可以同时支持多个不同的系统内核映像。
为每个系统内核映像提供了密码保护。
支持位于不同磁盘和分区中的引导扇区、映象文件和启动映像。
安装多系统的顺序
1、Windows98
2、Windows2000
3、WindowsXP
4、Linux
恢复Linux引导记录
1、在安装时把LILO安装在非MBR中
2、用fdisk/mbr清除主引导记录
3、用fdisk激活linux 的boot分区所在的分区
普通用户与超级用户
Linux是一个多用户多任务的操作系统,在同一时刻可以有多个用户使用系统。可以将用户大致分为两类,即普通用户和超级用户。

普通用户可以在其权限许可的范围内使用系统资源,而超级用户(用户名为root)不仅可以使用系统中的所有资源而且可以管理系统资源。

除了用户的概念之外,Linux中还有组的概念。组是若干个用户的逻辑集合。
Linux的运行方式
字符运行方式
本地虚拟终端
使用Telnet远程登录
使用SSH远程登录

图形运行方式
本地使用KDE/Gnome集成环境
运行X Server远程使用图形环境
Linux的安装
本节要点
获取和安装方式
安装前的准备工作
系统使用初步
获取方式和安装方式
获取方式
下载发布版本
购买发布版本
安装方式
本地安装
本地光盘安装
本地硬盘安装
远程网络安装
FTP
NFS
HTTP
安装Linux前的准备
了解Linux支持的硬件
光盘启动安装不需要任何准备
本地硬盘安装和网络安装需要制作启动盘
Boot.img
Bootnet.img
boothd.img
启动盘的制作"
在redflag4.0光盘中的dosutils目录中有一个程序:rawrite.exe
一、在dos下(或windows中的命令方式下)运行rawrite,按提示选择在光盘中的images中的某个映象文件和软驱。
二、在Linux下用:dd if=boot.img of=/dev/fd0 bs=1440k
f(facility)设备、工具
系统虚拟控制台及其切换
系统提供多个虚拟控制台
(Virtual Console)
(在/etc/inittab文件中增删)

切换各个虚拟控制台
字符界面 Alt + F1-F7
图形界面
-Linux的系统运行级

0 - 系统停机状态
1 - 单用户工作状态
2 - 多用户状态(没有NFS)
3 - 多用户状态(有NFS)
字符方式的默认运行级
4 - 系统未使用,留给用户
5 - X11控制台(xdm,gdm或kdm)
6 - 系统正常关闭并重新启动
-文件类型
普通文件
文本文件
二进制文件
可执行程序,声音,图像文件

目录文件

链接文件
硬链接
软链接

特殊文件
-特殊文件
设备文件
/dev/ttys1:标准终端
/dev/hda:第一块IDE硬盘

管道文件
例:用户使用lp打印一个文件时,lp建立打印进程并向一个管道发送信息
-第三课 安装及图形界面使用
请自己动手安装并使用图形界面(和Windows系统很相似)
-Shell
Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器)

它接收用户输入的命令并把它送入内核去执行。

目前主要有下列版本的Shell有:
Bourne Shell:是贝尔实验室开发的。
BASH:是GNU的Bourne Again Shell,是GNU操作系统上默认的shell。
Korn Shell:是对Bourne SHell的发展,在大部分内容上与Bourne Shell兼容。
C Shell:是SUN公司Shell的BSD版本。
-Shell的重要功能
命令行解释
交互模式(interactive)
后台运行(run commands in the background)

命令的多种执行顺序
命令替换 (` `)
I/O重定向(Input/output redirection)
管道(pipes) |
通配符(wild-card characters)
系统环境维护
Shell Script
-命令解释过程
无-命令规则、路径和文件
命令规则
命令动词 [参数] [操作对象]

路径
绝对路径
相对路径

文件
命名规则
-文件通配符
*
匹配多个字符

匹配单个字符
[abc]
匹配abc中任意一个字符
[!abc]
匹配abc之外的任意一个字符
-登录、注销、关机
系统登录和注销的方法
登录系统( login)
注销登录( logout 或 exit)
注:系统中任何用户均可使用

系统关机和重启的方法
关机( halt)
重新启动( Reboot )
注:只有超级用户可用
-Linux常用命令 1
文件目录操作命令
ls touch cp mv rm cd ln
cat more less head tail
pwd mkdir rmdir
find grep
tar gzip compress
sort paste wc
- ls
用法:ls 参数:
-a:显示所有文件,包括隐藏文件(以.开头的文件)
-l:以长格式显示
-F:在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通 文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套 接字(sockets)。
-ls
-d:将目录象文件一样显示,而不是显示其下的文件
-t:按修改时间先后显示
-R:显示目录及下级子目录结构
-m: ?横向输出文件名,并以“,”作分格符。
-S: ?以文件大小排序。
范例:
ls –a
ls –alR
ls -F
-用颜色代表不同文件
蓝色:目录
绿色:可执行文件
红色:压缩文件
浅蓝色:链接文件
灰色:其他文件
-touch
作用:
生成一个空文件或修改文件的时间
范例:
touch * :将当前目录下所有文件时间修改为当前系统时间
touch –d 20010602 test:将文件test的时间修改为20010602
touch test2:如果abc存在,则修改为当前系统时间,如果不存在,则生成一个为当前时间的空文件
-cp – copy file
用法:cp –afpx source target
-a:尽可能保持文件的结构和属性
-p:保持原始文件日期
-f :如果目标文件已经存在,则覆盖它
-i :提示是否覆盖现有的普通目标文件
-R:包含子目录
范例:
cp ls.txt mydir1
cp –a mydir1 mydir2
cp /etc/syslog.conf ./
cp -a /etc/sound/ /home/so/
-mv – move file
用法:mv –b source target
-b:给被覆盖的文件建立一个备份
范例:
mv abc bcd
mv abc mydir/
mv -b abc mydir/
-rm – remove
rm –irf 文件或目录
i:交互模式
r:删除目录及以下所有内容
f:强制删除

注意:
Root用户在删除文件时要特别小心
权限问题