unix操作.docx
《unix操作.docx》由会员分享,可在线阅读,更多相关《unix操作.docx(126页珍藏版)》请在冰豆网上搜索。
unix操作
第一课UNIX操作系统概述
一、操作系统及其功能
●操作系统是系统软件的核心,是对计算机的硬件和软件资源进行控制管理的程序模块集合。
●操作系统具备能够接受并解释用户命令的接口:
命令接口、程序接口、图形接口
●操作系统管理应用软件,并为应用软件提供很好的运行和开发环境。
称之为软件工作平台。
●操作系统提供的服务通常归结为:
程序执行、资源分配、I/O操作、文件系统管理、出错检测、中断处理、资源统计、资源保护
二、UNXI操作系统的历史与发展
●UNIX操作系统是一个多用户、多任务的分时操作系统,具备完善的网络功能,也是网络操作系统。
●UNIX操作系统对于工作站、微型计算机、大型机和超级计算机等各种不同类型的计算机来说,都是一种标准的操作系统。
●UNIX操作系统是由肯.汤普逊(KenThompson)1969年在贝尔实验室开发成功。
宗旨是处理用户所遇到的各种各样的任务,有别于传统的基于特定硬件的系统,使得操作系统非常灵活,成为面向用户的操作环境。
1、UNXI操作系统的诞生
1969年Thompson和他的同事DennisRitchie、RuddCanaday等人在一台DECPDP-7创建成功一个多任务的操作系统,其中包括一个文件系统、一个命令解释器和一些实用程序。
这个新的多任务操作系统可同时支持两个用户,被称为UNICS,意为非多重方式的信息与计算机系统。
20世纪70年代后被改为UNIX。
后来,Thompson所在的科研小组为UNIX添加了文本格式化程序runoff,并将UNIX移植到PDP-11/20机上。
这个UNIX操作系统增加了一个编辑器和runoff(后来演变成troff),成为第一个带文本处理能力的电子出版程序。
1973年,Ritchie和Thompson用C语言重写了UNIX系统内核,成为UNIX第4版。
较之于当时多数小型机上用汇编语言编写的系统,UNIX具备了更加易于维护和移植的特性,开始流行起来。
AT&T将UNIX系统提供给了大学、商业公司和政府部门,为UNIX的迅速发展奠定了基础。
2、UNIX的发展(AT&T、伯克利)
●1975-77年,贝尔实验室推出UNIXVersion5和UNIXVersion6,当时已经可在600台以上计算机运行。
包含了许多新的工具和实用程序。
●1979年,贝尔实验室推出UNIXVersion7,含有BourneShell、UUCP和C,是现代UNIX的直接祖先。
●1979年,加州大学伯克利分校的3BSD发行,基于2BSD和UNIXVersion7:
(研究生BillJoy和ChunkHaley)
✓提供了虚拟内存支持,允许程序可以在在物理内存大小不够用的情况下,继续模拟出虚拟内存来进行使用。
✓创新了CShell和vi。
1980年—4BSD发行,由DARPA资助;1983年—4.1BSD、4.2BSD,引进包括能用于文件传输和远程通讯的TCP/IP网络在内的网络功能、可实现快速存取的文件系统;1987年—4.3BSD;1993年—4.4BSD。
BSD的多数重要特性都被合并到UNIXSystemⅤRelease4中。
●1982年,AT&T发布了其第一个商品版UNIXSystemⅢ
至此UNIX已经产生很多商业版、研究版和实验版,造成系统某些特定功能的不稳定应用。
UNIXSystemⅣ为内部发行版
●1983年,AT&T发布了UNIXSystemⅤRelease1,支持向上兼容并包括BSD的屏幕编辑器vi和屏幕控制程序库curses
●1984年,AT&T发布了UNIXSystemⅤRelease2,增加了断电与死机时的文件保护与锁定,改进了系统管理,增加了作业控制特性
另外跟随的2.1、2.2,引入请求调页、文件记录索引等
●1987年,AT&T发布了UNIXSystemⅤRelease3,包括建立网络软件的工具STREAMS、网络文件共享的远程文件系统RFS、网络应用的传输层接口TL1
3.1支持更广泛的字符集、日期与时间格式;3.2提供了强化的系统安全性能,并引入面向菜单用户接口的命令环境
●1989年,AT&T发布了UNIXSystemⅤRelease4,统一了在AT&T内、外部开发的各种各样的UNIX系统版本,给UNIX市场和标准化工作带来巨大冲击,几乎所有厂家都提供基于SVR4或者符合基于SVR4开发标准的版本
3、UNIX系统的变种:
UNIX有数十种变种,主要是指AT&T与BSD等外部开发的各种商业版与实验版、开放发行版等,特性大多相同,较为现代的变种之间移植软件较为简单。
1)LINUX
开发始于1991年,芬兰赫尔辛基大学学生LinuxTorvalds决定创建运行在PC上的拥有Minix特性的UNIX版本,并将之发布到Internet上,开放源代码,邀请免费下载与改进完善。
Liunx思想支持软件应当是开放和免费的,由此Liunx迅速流行,庞大的开发团队不断为其增加新功能和特性
ØLiunx受GNU(“GNU‘sNotUnix”的递归缩写,又称革奴计划,由RichardStallman在1983年9月27日公开发起,目标是创建一套完全自由的操作系统。
)条例保护。
绝大多数基于Linux内核的的操作系统使用了大量的GNU软件,包括了shell程序、程序库、编译器(例如Emacs)及其它工具。
ØLinux内核可在Internet上数百个FTP服务器上得到。
Ø目前最著名的发行版本:
Debian,RedHat、ubuntu、OpenSuse(原Suse)、Mandriva(原Mandrake)、CentOS、fedora等。
国内比较著名的linux版本:
红旗linux等。
Ø各公司的发行版中,与Linux内核一道发行的程序包都有所不同。
一个典型的Linux发行版包括:
Linux内核,一些GNU程序库和工具,命令行shell,图形界面的XWindow系统和相应的桌面环境,如KDE或GNOME,并包含数千种从办公套件,编译器,文本编辑器到科学工具的应用软件。
ØLinux的开放特性同时使得发行版本之间的差异难以克服,在一个发行版上运行的程序可能无法在另一个发行版上运行。
Linux与UNIXSystemⅤ有许多共同的特性,但是Linux也作了很多改进,在硬件平台支持上更占优势,已经成为UNIX用于个人电脑的流行版本,并开始用于服务器。
目前,Linux可用于许多不同的处理器,如IntelX86系列、Motorola68K、DigitalAlpha、Sparc、MIPs、PowerPC等。
基于其低廉成本与高度可设定性,Linux常被应用于嵌入式系统,例如机顶盒、移动电话及移动装置等。
(在移动电话上,Linux已经成为与SymbianOS、WindowsMobile系统并列的三大智能手机操作系统之一。
)
目前国际上采用Linux的超级电脑亦愈来愈多,使用率近75%。
可浏览
2)XENIX
1980年微软公司推出XENIX操作系统,是UNIX从大型机到微型机的变种和商业版本。
被移植到许多不同的微处理器上。
最初的XENIX基于UNIX第7版,后来的版本增加了4.1BSD的实用程序和AT&TUNIXSystemⅢ的新功能。
1985年XENIX转到以UNIXSystemⅤ为基础。
1987年,微软与AT&T联手推出UNIXSystemⅤRelease3.2,实现了XENIX与UNIXSystemⅤ的合并,产生了一个能够从微机到超级计算机上运行的唯一的UNIX版本。
XENIX的商业版可支持UNIFY数据库进行数据管理。
3)UNIX的其他变种
●Solaris
SunMicrosystems公司开发,最初的操作系统叫做SunOS。
基于UNIXSystemⅤRelease1和4.3BSD。
其子公司SunSoft将SunOS移植为基于UNIXSVR4的新版本,即Solaris1.0,是SunOS的改进版。
最有影响力的版本是1993年11月发行的Solaris2.3,对Solaris环境作了许多修改,引入XWindows的最新版本,符合POSIX标准。
随后的版本又引入通用桌面环境(CDE)、POSIX线程及TCP上的NFS等特性。
Solaris2.6是第一个支持Java的Solaris版本。
1998年SunMicrosystems公司发布Solaris7。
可支持64位应用程序和基于Web的管理与配置。
最新版本是Solaris9。
可浏览:
●SCOUNIX和UNIXWare
是SantaCruzOperation(SCO)公司的操作系统,最早基于UNIXSystemⅤ/386Release3.2。
SCO公司曾先后推出一系列OpenServer产品:
Ø用于工作站的SCOOpenServerRelease5桌面系统;
Ø支持高可靠性网络应用的SCOOpenServerRelease5企业系统;
ØSCOOpenServerRelease5开发系统;
Ø高可靠性、非联网、多用户解决方案平台SCOOpenServerRelease5主系统。
UNIXWare是Novell公司用于UNIXSystemⅤ的产品的商标名。
1995年11月SCO公司从Novell公司买下所有UNIXWare产品,并拥有了UNIXSVR4的源代码所有权,开始供应UNIXWare。
1995年,UNIXWare2.0发布,基于UNIXSystemⅤRelease4.2和NovellNetWare,支持客户/服务器模式。
●SystemⅤRelease5
1997年由SCO开发。
作为UNIXSystemⅤ的所有者,SCO改进了SystemⅤ的内核,系统性能、系统负荷能力及可靠性得到改善,支持64位文件系统并实现了64位命令、程序库和API。
SCO随后把SystemⅤRelease5的内核用作其所有UnixWare产品的基础。
UnixWare7为最新发布版,基于SVR5内核,支持64位机,内含通用桌面环境(CDE)以及一个集成的Netscape浏览器和Web服务器,直接支持Java。
SCO提供免费的UnixWare7和OpenServerUnix系统。
还提供用特别的免费许可进行多重安装的廉价媒介。
可浏览
●HP-UX
由惠普公司开发出售,用于计算机及工作站的UNIX系统变种。
最早基于UNIXSystemⅤRelease2.0。
1986年发布第一个版本;
1992年推出HP-UX9.0,包含4.3BSD的许多特性和可视化用户环境(VUE)的图形用户界面;
1995年推出HP-UX10.0,包括了SVR4的文件系统目录结构、增强了规范性和安全性、支持CDE。
1997年推出HP-UX11.0。
提供64位操作环境和完整的服务器、工作站支持。
网址:
●AIX
IBM公司的UNIX版本,主要为IBM工作站开发,基于UNIXSystemⅤRelease3,具有4.3BSD特性。
最新版本AIX4.3,已被OpenSource以UNIX98注册。
网址:
●IRIX
SiliconGraphics公司提供的专利版UNIX。
64位操作系统,优化了需要大量CPU的图形处理功能。
新版IRIX6.5提供可缩放性、大规模数据库管理、实时3D视觉能力及中间平台,并为许多领域提供新功能。
网址:
●A/UX(Apple’sUNIX)
Apple公司的UNIX操作系统。
1998年Apple公司推出包括许多UNIX标准的服务器操作系统MacOSXserver,基于4.4BSD,包含流行的Web服务器软件—Apache。
●ULTRIX
DigitalEquIPment公司(DEC)的UNIX版本,基于4.28BSD和ALpha处理器。
1988年IBM、DEC、HP等公司成立开放系统基金会组织OSF(OpenSoftwareFoundation),开发了OSF/1。
DECOSF/1为其变种,后又改
变为DigitalUNIX。
1998年康柏(Compaq)公司收购了DEC公司,并继续DigitalUNIX开发,新名为tru64UNIX。
网址:
4、UNIX的未来
从开发UNIXSVR4开始到统一于OpenSource的唯一UNIX规范,UNIX一直在继续演变。
对于服务器上的复杂应用和网络环境,UNIX非常适合。
UNIX还可被改装到所有类型的硬件平台上。
UNIX的新特性与Internet相得益彰,共同促进并协作发展。
UNIX操作系统是各大厂商开发新型宽口径用户、复杂任务、分时系统与网络操作平台的最佳蓝本。
大量开发人员也在志愿创造可供免费使用的UNIX新功能。
三、UNIX的特点
Ø可移植性好
Ø并行处理能力
Ø良好的用户界面:
传统SHELL及其前端GUI
Ø树型分级结构的文件系统
Ø字符流式文件:
文件是无结构的字符流序列
Ø丰富的核外系统程序:
语言处理程序、系统实用程序及软件开发工具等
Ø设计思想先进,核心精干:
面向用户
Ø管道文件连通
Ø提供电子邮件和对网络通信的有力支持
Ø系统安全:
机制严密,运行稳定
第二章UNIX操作基础
一、概述
UNIX系统通常可分为4个主要部分:
内核(kernel)、shell、文件结构和应用程序。
UNIX操作系统的基础结构包括内核、shell、文件结构三个模块。
而一些外加的应用程序也逐渐被认为是UNIX标准特征。
如编辑器、过滤器、通信程序等。
本章内容包括:
Ø常用简单命令
Ø命令的一般格式
Ø文件操作类命令
Ø目录操作命令
Ø简单的文件与账户管理命令
Ø磁盘使用命令
Ø进程管理与相关命令
1、UNIX内核
内核是运行程序、管理硬件设备的核心程序。
是UNIX操作系统常驻内存部分,直接附着在硬件上,为核外的所有程序提供运行环境。
内核实现了UNIX的多用户、多任务机制,将用户命令和程序组织为可由计算机处理单元轮流工作的进程。
内核用C语言开发,具备易于访问内部结构的特性。
2、shell
是UNIX系统的中间层,提供了一个内核与用户之间的界面(或称接口)。
shell被描述为命令解释器,或者是把命令翻译成内核操作格式的语言处理器。
shell通常提供行式命令界面,后来的UNIX版本为系统加入了图形用户界面(GUI),用图标与菜单来标志命令。
但GUI只是一个shell的前端,仍需shell解释命令并发送给内核。
shell除了解释命令以外,还可以配置和编程。
Shell拥有自己的语言,允许用户编写程序并以一种复杂的方式运行。
shell的类型主要有3种:
Bourneshell、Kornshell、Cshell
●Bourneshell:
贝尔实验室开发,成为UNIXSystemⅤ的shell
●Kornshell:
是Bourneshell的增强版
●Cshell:
由BSDUNIX系统开发
SVR4引入了这三种shell
另外还有上述三种shell的增强版:
•BASHshell:
Kornshell与Cshell的升级版。
Linux系统的默认shell
•Zshell:
Kornshell的增强版
•TCSHshell:
Cshell的增强版
所有版本的shell在命令级都大部分兼容。
但是Bourneshell与Cshell在编程上区别很大:
Bourneshell编程语言是一种更加通用的语言;Cshell编程语言非常类似于C编程语言,也是一种复杂的语言。
3、UNIX的文件结构
UNIX操作系统以文件形式管理所有的软、硬件资源。
一切均由文件构成,文件组成目录。
整个UNIX操作系统就是一个相互关联的目录集合。
目录是一种组织和控制文件访问的很好方式。
用户可以为目录设置访问权限。
目录被组织成层次状的树型结构。
超级用户可以遍历整个系统并进入任何一个目录。
用户在权限范围内可以对文件和目录进行创建、复制、改名、删除、移动等操作。
这种文件结构的互连模式使得共享数据变得十分容易。
UNIX数据只有一种类型,即字节流,可以多种方式使用。
如下图示:
4、应用程序:
编辑器、过滤器和通信程序是主要的三类应用程序,还有一些执行文件操作、程序管理的应用程序。
●UNXI操作系统有几种标准编辑器:
早期的行编辑器ed、ex;全屏幕编辑器vi、emacs。
●过滤器从用户、文件或其他数据源读取输入的数据,然后检查并处理数据,最后输出结果。
过滤器之间可由管道相连,将一个过滤器的输出作为另一个过滤器的输入:
如:
$catfile1file2|sort|lp
●UNIX通过通信应用程序与本系统或其他系统上的用户通信。
可以通过网络与其他UNIX系统的用户通信,也可以远程登录到其他系统上并直接通过网络传输文件。
二、进入和退出系统
◆UNIX系统的整个启动过程大致分为如下几个阶段:
Ø加载操作系统装入程序(PDL)
ØUNIX系统核心程序装入
ØUNIX系统初始化-由系统程序/sbin/init完成
Ø硬件检测和配置
Ø系统进程的生成
Ø管理人员干预(自动启动则无此阶段)
Ø生成各终端进程
◆用户登录过程
Øinit进程为每一个终端用户激活一个getty进程
Øgetty进程启动login进程
ØLogin监控用户登录,调入shell
◆用户进入与退出系统
1、进入系统
在boot:
下或等待几秒钟,系统启动结束后每个终端都会出现如下注册提示行:
login:
键入用户注册名并按下,屏幕出现:
password:
键入用户口令并按下,系统对用户名与口令检测无误后就会显示进入用户环境的信息,并出现用户提示符$,进入shell界面。
Cshell的用户提示符为%。
超级用户(管理员用户)的界面提示符统一为#。
每一条命令后都须键入,命令格式为小写
2、退出系统
在用户提示符$(%、#)下键入
或如下:
$exit($logout)
则退到login:
状态
3、关闭系统
注册关机用户,或键入关机命令haltsys(事先可键入写磁盘命令sync)、shutdown、reboot等。
第二课UNIX的简单命令与文件操作类命令
一、UNIX命令格式
命令名称[选择项][参数](命令名称须小写)
二、简单命令
●pwd—显示当前工作目录的全路径(绝对路径)
●date—显示当前系统日期与时间
●who—显示当前注册的用户信息:
用户名、终端名、注册时间
●echo—显示命令行所有参数(键入信息)
●ls—显示目录或文件中的内容
加选择项-a,可显示‘.’打头的文件(隐藏文件)
加选择项-l,则显示长格式的文件信息
例:
ls-la/usr
ls-l/usr/lj
●cd—到上一级目录
●cal—显示日历cal82000calAug2000
●uname—显示操作系统信息
加选择项-m,显示机器硬件名
加选择项-r,显示操作系统发行版本
加选择项-s,显示操作系统名称(可缺省)
加选择项-v,显示操作系统版本
加选择项-X,显示详细信息(教材P10)
●logname—显示用户注册名
●env—显示或设置当前环境(教材p10)
三、文件操作类命令
1、文件及其分类:
1)普通文件:
类型标志‘-’
2)目录文件:
类型标志‘d’
3)特别文件:
即设备文件
块设备文件(磁盘、磁带、CD-ROM),类型标志‘b’
字符设备文件(显示器、打印机等I/O设备),类型标志‘c’
2、文件显示命令:
lsmorecatfileheadtailpr
3、匹配、排序、显示指定内容:
grepsortuniq
4、文件内容比较:
commdiffcmp
5、文件的复制、删除、移动:
cpmvrm
6、命令的输入与输出:
系统提供的三个标准I/O文件:
●标准输入文件(STDIN)--对应键盘
●标准输出文件(STDOUT)--对应屏幕
●标准错误输出文件(STDERR)--对应屏幕
用户可在命令行使用I/O重定向符将输入输出改向—如命令输入取自某文件、输出存入某文件
1)输出重定向符号‘>’
2)输入重定向符号‘<’
3)输出附加定向符号‘>>’$catfile1>>file2
4)管道线符号‘|’
5)tee命令:
将标准输入拷贝到标准输出,同时拷贝到指定文件(p24)
7、文件打印
●lp—将打印请求发送到打印机$lp-depsonlj
●cancel—取消打印请求(打印进程)$cancelepson
$cancelprinter-99
●lpstat—显示打印进程信息(教材p27)
8、文件查找(教材p28)
可在树型目录结构中全路径搜索符合条件的文件及目录
$find/usr–namelj-print
$find/usr–typed-size+5-perm0777-print
$find/usr–useruser-execrm{}\;
第三课UNIX的目录类操作、权限与口令、进程管理、磁盘管理
一、目录类操作
1、UNIX文件系统布局
在进行目录操作之前,我们先来了解一下UNIX文件系统的布局。
●一个UNIX发布版通常包括几百个文件和程序,以树型结构被系统管理。
根目录用‘/’表示。
●系统文件通常分为两类:
静态文件和动态文件。
●静态文件通常存在于三个目录中:
/usr、/opt、/sbin
●动态文件通常存在于七个目录中:
/home、/etc、/stand、/tmp、/dev、/mnt、/var
●操作系统可共享部分的数据通常存放于/usr、/sbin、/opt(其下的应用程序子目录)中,这些目录下的资源可以在网络主机之间共享。
●/tmp下的内容随时可以删除。
〈见下页表〉
目录
定义
/usr
可共享的操作系统命令、库和文档
/sbin
引