资源预览内容
第1页 / 共225页
第2页 / 共225页
第3页 / 共225页
第4页 / 共225页
第5页 / 共225页
第6页 / 共225页
第7页 / 共225页
第8页 / 共225页
第9页 / 共225页
第10页 / 共225页
亲,该文档总共225页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第零单元总览任课讲师:_UNIX概述UNIX历史UNIX特点UNIX原则UNIX历史UNIX操作系统诞生于60年代末期的Bell实验室美国电话电报公司(AT&T)在70年代中期开始发行UNIX的非商业许可证从70年代末开始在市场上出现了不同的UNIX商品化版本UNIX特点可靠性高伸缩性强开放性好植根于网络面向数据库使用UNIX基本原则所有对象,包括硬件都是文件配置数据以文本形式保存由短小的单目的程序构成避免不必要的用户交互可使用多个程序合作完成复杂任务.GNU项目介绍GNU是GNUs not UNIX的缩写1984,Project GNU 由Richard Stallman发起GNU的基本体系是micro kernelGNU的基本原则是共享GPLGNU通用公共授权FSF,Free Software FoundationFree Software的概念 不是免费(gratis)copyleft open sourceLinux 起源核心编写者 Linus Torvalds自由的类Unix操作系统遵循 GNU 和GPL为何选择Linux?支持UNIX的API,可以实现所有UNIX的功能遵循开源许可协议多用户多任务系统广泛的网络协议和配置支持广泛的硬件支持广泛的技术支持Red Hat Linux最新的系统内核 拥有常用的实用程序和应用软件 简单的安装和配置软件 提供技术支持 推荐硬件配置奔腾系列或者更高的CPU128 MB或更大的内存最少600MB(文本模式)或1.2GB(图形模式)的硬盘空间可以用于引导系统的CDROM或3.5寸软驱。Linux图形环境XFree86:标准的Linux X Window系统 XFree86 3.3.X XFree86 4.2.XGNOME(The GNU Network Object Model Environment)基于GTK的工具包KDE 基于QT的工具包第一单元基础操作任课讲师:_Linux用户环境内核(Kernel) Shell 终端模拟器(Terminal Emulator) X Window系统 窗口管理器(Window Manager) 桌面环境(Desktop Environment) 本地登录Red Hat Linux release 9.0 (Shrike)Kernel 2.4.20-8 on an i686login:root(用户名)password:_(密码)提示符与home目录rootstationXX root#当前用户名主机名当前目录提示符因用户而异home目录是用户登入系统后即所在的默认目录。创建用户useradd 用户名password 用户名example:rootstationXX root# useradd studentrootstationXX root# passwd studentChanging password for user studentNew password: (无回显)Retype new password: (无回显)passwd: all authentication tokens updated successfullyrootstationXX root#运行指令指令名 选项 参数例子: ls -l /etc/X11帮助和在线帮助指令 -help例:mknod -helpman 指令例:man mknodinfo 指令例:info mknod基础指令(一)man 的使用技巧 man -k keyword man -f keyword man -a keyword man n keyword基础指令(二)ls 查看文件cp 拷贝文件mv移动或重命名文件rm 删除文件touch 创建空文件或更新文件时间基础指令(三)cd 改变当前路径pwd察看当前完整路径mkdir 创立新目录rmdir 删除空目录基础指令(四)cat察看文件内容more 逐屏察看文件内容less逐行察看文件内容date 显示当前时间cal显示月历基础指令(五)df 显示磁盘用量du 计算目录下文件占用磁盘的大小基础指令(六)head 显示文件开头部分内容tail 显示文件结尾部分内容设 备 文 件设备在Linux中以特殊文件的形式存在块(block)设备文件字符(character)设备文件设备文件所在位置查看设备类型虚拟控制台及用户身份切换在系统中有12个虚拟控制台,前6个可供用作本地登录用户可以用Alt+Fn(n=112)来切换。用su可以用来切换用户身份 su - username离开系统重启rebootshutdown -r nowinit 6关机haltshutdown -h nowpoweroffinit 0第二单元文件任课讲师:_检查文件用ls l以长模式察看文件的详细信息包含当前目录的硬盘使用空间、文件类型、文件权限、硬连接数、文件拥有者、文件所属组、文件大小、更动时间、文件名。用file检查文件类型由于linux中的文件名中没有扩展名,所以可能需要用file来查看文件类型文件类型在linux中,所有东西都被当成文件。文件权限前的第一个字母用来标识文件类型:-:一般文件d:目录文件b:块设备文件c:字符设备文件l:链接文件p:人工管道文件权限 对于每一个文件,Linux都提供了一套文件权限系统。文件权限系统,将操作文件的用户都分成三类文件的拥有者(u)文件所属组的成员(g)其他用户(o)文件权限类型 对于每一类用户,权限系统又分别提供他们三种权限读(r) :用户是否有权力读文件的内容写(w) :用户是否有权利改变文件的内容执行(x) :用户是否有权利执行文件改变文件权限 使用chmod 来改变文件的当前权限chmod -R 权限 文件名只有文件的拥有者和root才可以改变文件的权限使用数字来改变文件权限 chmod后可以用三个数字来表示用户权限第一位代表文件拥有者权限第二位代表文件所属组成员权限第三位代表其他用户权限每一个数字都采用加和的方式4(读)2(写)1(执行)建立链接ln硬链接语法:ln 源文件 新建链接名软链接语法:ln s 源文件 新建链接名ext2/3中文件的构成在ext2和ext3文件系统中,文件以inod+block的方式存在。一但用rm指令删除文件中的inode记录。文件无法被找回。stat指令可以用来检查文件的block与inode状况。所属用户每一个文件都有一个拥有者。文件的拥有者可以改变文件的权限。root用户可以用chown来改变文件的拥有者。所属组每一个文件只能属于一个指定的组。文件的拥有者与root用户,可以用chgrp来改变文件所属的组文件名文件名最大为255个字符。开头为.的文件为隐藏文件。第三单元目录任课讲师:_目录目录在文件类型上用d标识用 / 分隔目录层Linux 操作系统都有且仅有一个起始目录,我们用一个单独的 / 来表示,称其为根目录。对每一个shell和操作环境,都有一个当前工作目录。.文件与.文件在每一个目录下都有一个.文件与.文件。.文件是对当前目录的一个硬连接.文件是对上级目录的一个硬连接目录权限目录也是一种文件目录上的读写执行权限与普通文件有所不同:读:用户可以读取目录内的文件写:单独使用没有作用。与执行权限连用可以在目录内添加与删除文件。执行:用户可以进入目录,调用目录内的资料强制位与冒险位除了读写执行权限以外,ext2文件系统还支持强制位(setuid 和setgid)与冒险位(sticky)的特别权限。针对u,g,o,分别有set uid,set gid,及sticky。强制位与冒险位添加在执行权限的位置上。如果该位置上原已有执行权限。则强制位与冒险位以小写字母的方式表示,否则,以大写字母表示。set uid与set gid在u和g的x位置上各采用一个s,sticky使用一个t。set gid对目录的作用默认情况下,用户建立的文件属于用户当前所在的组。目录上设置了setgid,表示在此目录中,任何人建立的文件,都会属于目录所属的组。冒险位对目录的作用默认情况下,如果一个目录上有w和x权限,则任何人可以在此目录中建立与删除文件。一旦目录上设置了冒险位,则表示在此目录中,只有文件的拥有者、目录的拥有者与系统管理员可以删除文件。强制位对文件的作用在可执行文件上,用户可以添加set uid和set gid。默认情况下,用户执行一个指令,会以该用户的身份来运行进程。指令文件上的强制位,可以让用户执行的指令,以指令文件的拥有者或所属组的身份运行进程。设置强制位与冒险位用户可以用chmod指令来为文件设置强制位与冒险位。set uid:chmod u+s 文件名set gid:chmod g+s 文件名sticky:chmod o+t 文件名强制位与冒险位也可以通过一个数字加和,放在读写执行的三位数字前来指定。4(set uid)2(set gid)1(sticky)umask每个用户建立文件时,此文件都会有默认权限。默认权限的值由环境中的umask值来确定用户可以自主改动umask值,并在改动后建立的文件上得到体现。一般用户的默认umak值为002,系统用户的默认umask值为022。根目录下的目录/bin:存储常用用户指令。/boot:存储核心、模块映像等启动用文件/dev:存储设备文件/etc:存储系统、服务的配置目录与文件/home:存放个人主目录/lib:存放库文件,诸如核心模块、驱动/lost+found:存储fsck用的孤儿文件根目录下的目录(二)/mnt:系统加载文件系统时用的常用挂载点/opt:第三方工具使用的安装目录/proc:虚拟文件系统,包含系统讯息等资料/root:root用户的主目录/sbin:存储系统管理用指令/tmp:临时文件的暂存点/usr:存放与用户直接相关的文件与目录/var:存储在系统运行中可能会更改的数据第四单元过滤器、输入输出及管道任课讲师:_过滤器Linux中的应用工具分为三种:交互工具过滤器编辑器能够接受数据,过滤再输出的工具,称为过滤器对过滤器和进程,存在着输入源与输出对象输入、输出、重定向输入:过滤器的数据来源标准输入stdin(0):默认是键盘输出:过滤器的数据去向标准输出stdout (1):默认是终端屏幕错误输出 :报错讯息与标准输出走不同的I/O通道标准错误输出stderr(2):默认是终端屏幕重定向:标准输入、输出与错误输出,都可以用特定符号改变数据来源或去向输入重定向使用“”来重定向输入源大多数工具都会以其后的文件名为输入源有一些过滤器一定需要添加 以明确输入源从当前文档输入使用 改变数据输出目标范例:ls l listfile将当前目录下的文件以长模式显示,然后写入listfile文件文件已有内容会被消除覆盖与追加使用进行输出重定向,文件的原内容会被覆盖ls l listfile使用,可以将输出追加入文件ls l listfile错误输出重定向系统错误与标准输出使用的I/O管道不同默认情况下,系统报错会显示到终端屏幕上使用2将报错讯息重定向入一个文件find / -type s 2 /dev/null使用2将报错讯息追加入一个文件find / -name passwd 2 results双重输出重定向使用和2可以将一次操作的正确、错误输入,被单独地送到不同的地方:find / -perm -2 2 error results使用&将所有输入都送向同一个地方:find / -perm +6000 file管道使用 | 将前一个过滤器的输出直接送入后一个过滤器的输入ls l | grep pass允许多重管道注意管道前过滤器的输出与管道后过滤器的输入数据类型匹配重定向、管道的常用范例ls l | more分屏显示当前目录下的文件cat fileb拷贝filea到filebcat file.* file将数个小文件合并成一个文件第五单元文件查找与文件管理任课讲师:_可执行文件的搜索which显示一个可执行文件的完整路径按照alias - $PATH的顺序查找whereis搜索一个可执行工具及其相关配置、帮助slocate语法:slocate 关键字段locate 关键字段所有文件名及其所在路径包含关键字段的文件与目录都会显示slocate先将当前目录结构做成一个数据库,然后再在此数据库中搜索匹配记录find语法:find 路径 参数 表达式从指定路径下递归向下搜索文件支持按照各种条件方式搜索支持对搜索得到的文件进一步用指令操作操作找到的文件语法:find 路径 参数 表达式 -exec 指令 ;代表find找到的文件 禁止转意;表示本行指令结束常用的文件操作指令wc 统计文件的行、词、字数grep 显示文件中匹配关键字的行sort 按序重排文本并送显示常用的文件操作指令(二)diff 报告文本差异内容comp 报告文本差异位置uniq 去除文件中重复的行cut 显示文件中的某一列paste 将文本按列拼接压缩gzip,gunzipLinux标准压缩工具对文本文件可以达到75%的压缩率compress,uncompress旧的Unix压缩工具bzip2,bunzip2更新的Linux压缩工具比gzip有着更高的压缩率Z系列指令对于用gzip压缩的文件,有一系列以z为开头的文件,可以在不经解压的情况下,直接操作文件zcat:直接显示压缩文件的内容zless:直接逐行显示压缩文件的内容zdiff:直接报告压缩文件的差异内容zcmp:直接报告压缩文件的差异处tar用于在磁带机、软盘、ZIP设备上做备份。也可以备份在一个硬盘文件上。主要参数:c:将文件备份出来v:将过程输出x:从一个文件中解出备份范例备份:tar cvf backup.tar *.txt解开:tar xvf backup.tar C backup/dump/restore备份与还原ext2/3文件系统不可以在其他文件系统上使用可以选择进行完全备份或增量备份范例:dump 0u f /var/tmp/hda2dump /dev/hda1restore rf /var/tmp/hda2dump第六单元交互工具与编辑器任课讲师:_交互工具mesg - 控制终端是否接收讯息常用的交互工具:write:指定一个在线用户发送短消息wall:向所有在线用户广播编辑工具我们通常用各种编辑工具来处理文本文件常用的编辑工具:VIMEMACSVi作为一个编辑器,vi被广泛地运用在各种Unix操作系统上。Vi是Linux中的标准文本编辑器。在Red Hat Linux上,一般采用的“可视编辑器 / visual editor” 是vim(vi improved)打开文件vi 文件名如果文件已存在,则此文件被打开且显示文件内容如果文件不存在,则vi在第一次存盘时自动建立在硬盘上存写文件从命令模式下::w 保存当前文件:q 如果未对文件做改动则退出:wq /:x /ZZ 保存当前文件并退出:q! 放弃存储并退出:e 文件名文件名 打开另一文件并开始编辑vi 模式vi 提供两种模式命令模式浏览、删除、剪贴、查找等可以用各种命令进入插入模式插入模式输入新文档用退出插入模式回命令模式删除与块操作在命令模式下可以直接删除字符在命令模式下键入v则进入块操作:1.移动光标以选定操作块2.c 剪切选定块 或 y 复制选定块3.p 将选定内容贴在光标所在位置右手边取消操作u:取消上一个更动U:取消一行内的所有更动:重做:e! :放弃所有更动,重新编辑查找文本vi支持用户在全文中查找一个关键字段在命令模式下,用 / 向上查找或用 ? 向下查找查找一直到文件尾或文件头在查找后,可以用 n 继续寻找下一个关键字段。命令模式的输入选项 : r 把文件插入到光标处 :r ! 把的输出插入到当前文本中 :nr 把插入到第n行 :! 运行,然后返回 :sh 转到SHELL :so 读取,再执行文件里面的命令 第七单元BASH任课讲师:_Shell简介Shell:命令行解释器,是用户与系统沟通时的媒介。在Unix系统中有各种Shell,Linux采用bash为其默认shell系统可以使用的shell记录在/etc/shells中bashbash:Bourne Again Shell的缩写。GNU计划的一个组件。与Unix上的Bourne Shell完全兼容。支持命令行输入、操作历史查询、快捷键、使用变量等功能。预定义环境变量在bash中有很多预定义环境变量系统通过预定义环境变量来定义shell的环境用户可以用set或env查询当前的环境变量常用的预定义变量:HOME:当前用户的主目录PATH:当前用户的可执行文件搜索路径LANG:程序应该使用的默认语言PS1:行提示符history在bash中输入history指令可以查询用户的过往操作。内存中记录的过往指令数根据环境变量中HISTSIZE而定。history表存储在内存中,在用户logout时会记录入用户主目录下的.bash_history文件中。在下次login时载入。.bash_history中的指令数根据环境变量中的HISTFILESIZE而定。调用过往指令使用 ! 来调用过往指令:!:重复执行上一条指令!a:重复执行上一条以a为首的指令!number:重复执行上一条在history表中记录号码为number的指令!-number:重复执行前第number条指令可以用来在history表中查询某条过往指令alias在shell下键入alias可以查询当前alias列表。用户可以alias来为一条命令取一个简单的别名用户也可以用unalias来取消一条别名记录。alias记录在shell中总是先行。命令行表达式命令行输出“ ”将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,则转义。命令行输出 将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,不转义。执行引用符 引用命令的执行结果命令行表达式(二)数学运算$ 在中括号内的表达式会被数学计算逸脱符用于取消命令行中字符的特殊含义用于表示一行未结束命令行表达式(三)命令行结束符;用于在一行内分隔两个独立命令,表示一行已结束,作用相当于回车键pwd ; ls l 子shell激活()在小括号内的命令行表示激活一个子shell后在子shell中运行逻辑运算符shell命令行支持在同一行的两条命令中插入&(逻辑与)与 |(逻辑或)&:当前一条指令执行成功时再执行后一条指令 |:当前一条指令执行失败时再执行后一条指令登录shell默认情况下,在shell下改变变量、umask、alias,只在此次登录中有效。一旦logout后再login,则设定恢复初始值。一个通过登录而得到的shell,一般是用户的初始shell。在登录shell下激活的shell采用登录shell的环境设定登录shell从配置文件中读取其环境设定定制登录shellbash 在用户登录时从四个文件中读取环境设定:全局设置文件: /etc/profile /etc/bashrc用户设置文件: /.bashrc /.bash_profile其他shell设定文件/.bash_logout:在用户logout的时候自动执行。/.bash_history:用户login时自动读取其内容并加载到内存history记录中,logout时将内存history记录写入。/etc/profile.d/*.sh:在/etc/profile中被执行,其中的环境设定,也会被全局引用常用快捷键Ctrl + d:输入已结束。在shell下相当于一个exitCtrl + c:键盘中断请求。Ctrl +s & Ctrl + q:暂停/恢复屏幕输出Ctrl + l:清屏,相当于clear。Tab:自动补完命令行与文件名Tab键双击可以列出所有可能匹配的选择第八单元X window任课讲师:_X window 系统支持在Linux上运行图形界面 创立于1986年,至今仍在被使用客户端/服务器端模型XFree86 自由、开放源代码的执行XGNOME三个主要构件稳定,易于使用的桌面环境为开发工具提供的完整工具组与库GNOME office的应用工具使用GTK+来设置桌面装饰KDEKDE是K Desktop Environment的缩写稳定的桌面环境Koffice应用工具使用QT来设置桌面装饰SawfishGNOME的默认窗口管理工具可主题化http:/sawfish.themes.org非常灵活且易于定制sawfish-ui同样也是GNOME配置工具的一部分其他X环境无GNOME或KDE的X11一个可以为低性能硬件考虑的解决方案WindowMaker以NeXTSTEP GUI为范本的窗口管理器fvwm成熟、稳定的窗口管理器,在许多版本的Linux中采用过twm一个古旧的X窗口管理器切换桌面可以在桌面环境中使用switchdesk切换桌面可以选择使用GNOME、KDE或其他窗口管理器建立/.Xclients、/.Xclients_defaults或其他主机配置文件,并在其中指定桌面:GNOME(exec gnome-session)KDE(exec startkde)鼠标配置X为三键鼠标而设计双键鼠标可以用双键齐按的方式来模拟中键支持鼠标滚轴轮并不是对所有的应用工具都生效鼠标配置工具 redhat-config-mouse 或 mouseconfig拷贝与粘贴以鼠标左键来选择文本(高亮化)用鼠标中键来粘贴在双键鼠标中可以双键齐按来模拟中键启动XFree86设定runlevel为5自动激活图形登录窗口进入X用gdm、kdm、xdm开启图形登录窗口进入X用startx在字符界面下进入XGUI 终端xtermXFree86的一个组件(不支持中文)gnome-terminal标准GNOME终端konsole标准KDE终端nautilusGNOME文件管理器从面板上可以点选“start here”来开启nautilus支持http及ftp连接支持text、html、man、info、mp3等文件句柄的嵌入文书编辑器gvimGUI下的vimkwrite默认的KDE文本编辑器xemacsx下的emacs编辑器gedit简单的GNOME文本编辑器图片浏览器gimp强大的GNU图片处理程序display图片阅览器convert图形格式转换工具gqview图片目录册ee高性能图片浏览器声音工具xmmsLinux上的winampgmixGNOME标准混声器gtcdGNOME下的CD播放器网络应用工具gftpFTP客户端xchatIRC客户端evolution邮件客户端mozilla网页浏览器Office组件Open Office源代码开放的staroffice组oowriter ,ooimpress,oodraw,oomath,oocalckoffice完整的KDE下的office组件kword,kspread,kpresenter,kontour,kchartX中有用的快捷键CtrlAltBackspace 退出XCtrl+Alt+Fn 切换到虚拟控制台nAlt+Tab 改变窗口配置 X 环境 redhat-config-xfree86 Red Hat 开发的X配置工具 需要root的权限 显卡的选择 显示器的选择 分辨率的选择 色彩的选择第九单元系统监视任课讲师:_了解系统状况unam e:显示系统信息hostname:显示主机名last:列出最近的用户登录lastlog:列出每一个用户的最近登录情况free:显示内存使用状况top:系统监视器进程系统通过进程来完成工作每一个进程都有一个独立的进程号,系统通过调用进程号来调度操控进程系统的原始进程是initinit的PID总是1一个进程可以产生另一个进程,除了init以外,所有的进程都有父进程查询进程查询进程的指令:ps optionpstree可以用来以树状的方式表现进程的父子关系top是一个常用的系统监视工具。控制进程kill:语法:kill -signal PID向进程传送一个特定向进程传送一个特定的讯号的讯号默认为15(终结)kill -l:列出所有可以由kill传递的讯号killall进程的优先级进程的优先级,用nice值来表示nice:以一个不同的nice值来运行指令nice -n num commandrenice:改变一个运行进程的nice值renice -n pid前台和后台默认情况下,一个命令执行后,此指令将独占shell,并拒绝其他输入。我们称之为前台进程。反之,则称为后台进程。对每一个控制台,都允许多个后台进程。对前台/后台进程的控制与调度,被称为任务控制。将进程丢入后台command &:将一个进程直接丢入后台运行nohup command &:将一个进程直接丢入后台运行,而且在该控制台退出后,进程仍不挂断ctrl + Z:将一个正在运行的前台进程暂停,并丢入后台工作jobs:列出系统当前的后台进程fg:将后台进程拉回前台bg:激活后台暂停的进程/proc目录/proc目录是一个虚拟的文件系统,包含了来自正在运行着的核心的信息用户可以通过cat /proc/下的文件,来获得系统的信息这些信息包括系统硬件、网络设置、内存使用,及其他一些东西/proc/sys目录下的文件,允许系统管理员更动,这些变动会直接影响当前核心系统日志系统日志记录着系统运行中的记录信息在服务或系统发生故障的时候,通过查询系统日志,可以帮助我们诊断。系统日志可以预警安全问题系统日志一般都存放在/var/log目录下常用的系统日志/var/log/dmesg核心启动日志/var/log/messages系统报错日志/var/log/maillog邮件系统日志常用的系统日志(二)/var/log/xferlogFTP服务用日志/var/log/secure安全信息系统登录与网络连接的信息/var/log/wtmp登录记录第十单元Shell Scripts任课讲师:_Shell 脚本Shell Scripts是一个包含shell指令的文本文件。Shell脚本支持变量与简单的语法来完成批量工作。Shell脚本支持交互的方式,在执行时从标准输入读取数据。有大量的系统工作都是通过Shell脚本的方式来完成,例如系统开机,服务控制。编辑shell脚本我们可以使用各种编辑工具来编辑shell script。在脚本中,#开头表示该行被注释。脚本中可以采用shell下能使用的所用命令、变量、正则表达式变量赋值与继承在shell与shell脚本中,我们允许自己定义变量并为他们赋值。语法:变量名=值默认情况下,变量值不会被继承入子shell用export将变量变成环境变量export 变量名用unset取消变量定义。脚本的数据读取与写出使用read将数据读入read username从标准输入读取数据来为username这个变量赋值使用echo完成简单地输出echo “hello world”也可以使用printf来产生各种格式的输出运行shell脚本有三种执行shell脚本的方式1.sh /路径/脚本名2./路径/脚本名3. /路径/脚本名if条件判断控制语句:if 条件 then 动作elif 条件 then 动作else 动作ficase条件判断控制语句:case 表达式 in匹配值 1)动作;匹配值 2)动作;* )动作;esacselect循环控制语句select 变量 in 数组do动作donefor循环控制语句for 变量in 数组do动作donewhile循环控制语句while条件 do动作doneuntil循环控制语句until条件 do动作doneShell 脚本命令行参数使用带命令行参数的Shell脚本 #command option1 option2 .引用Shell 脚本命令行参数 $0 命令名本身 $1 第一个参数(option1) $2 第二个参数(option2) .第十一单元用户管理任课讲师:_检查用户身份用户可以使用下列指令了解用户身份who:查询当前在线的用户groups:查询用户所属的组id:显示当前用户信息finger:查询用户信息添加用户用指令添加命令useradd passwd 系统添加用户的标准步骤1.编辑/etc/passwd与/etc/group2.创建用户主目录3.从/etc/skel拷贝文件与目录4.让新用户获得其主目录与文件的拥有权限5.给新用户一个密码更改/删除用户更改用户的资料可以通过:redhat-config-users或kusers之类的图形界面工具来完成在字符界面下可以使用usermod指令来更改系统管理者可以用userdel指令来删除已存在的用户参数-r可以帮助系统将一个用户的目录等一并删除。/etc/passwd文件passwd文件中记录的是个用户的登录信息。每一行代表一个用户,用 : 分隔成七项,即用户的基础登录信息。添加或删除一个用户,最基础的操作,即在passwd文件中添加或删除相应的个人记录。passwd文件详细login name:登录用名passwd:密码uid:用户身份编号gid:登录默认所在组编号full name:用户全名或注释home directory:用户主目录shell:用户默认使用shellHome directorylogin.defs中的create home选项决定系统在建立用户的时候是否同时创建其主目录系统在建立用户主目录时,会将/etc/skel下的内容复制到新目录下。最后,系统会使该目录与其下的文件归属于新用户。chown R user.group 目录名/etc/shadow目前,Red Hat Linux默认将用户密码存储在/etc/shadow文件中。passwd文件默认权限为644,shadow文件默认权限为400。shadow文件支持密码过期设定等功能shadow文件中每一行表示一个系统用户的密码记录,用 : 号分隔。用户可以通过authconfig来设定是否使用shadow文件及md5加密。shadow文件详细shadow文件的每一行中的每一项具体来说:登录用名用户密码(一般经md5加密)从1970年1月1日起到密码上一次被更改的时间密码再过几天可以被变更(0表示随时可被变更)密码再过几天必须被变更(99999表示永不过期)密码过期前几天系统提醒用户(默认为一周)密码过期几天后帐号会被取消从1970年1月1日算起,多少天后帐号失效。组管理系统中组的信息,记录在/etc/group中系统用户可以直接修改/etc/group文件达到更改组数据的目的,也可以使用以下指令:groupadd:添加一个组groupdel:删除一个已存在组groupmod:更改组的信息用户可用newgrp指令改变当前所在组组文件/etc/group中的每一行代表一个组,用 : 隔开不同项group_name:组名password:组密码(一般不用)GID :组身份编号user_list:组成员列表第十二单元硬件配置与管理任课讲师:_设备文件Linux沿袭Unix的风格,将所有设备认成一个文件。设备文件分为两种块设备文件(b)字符设备文件(c)设备文件一般存放在/dev目录下常用的块设备文件/dev/hda-t:IDE设备/dev/sda-z:SCSI设备/dev/fd0-7:标准软驱/dev/md0-31:软raid设备loop0-15:本地回访设备ram0-19:内存常用的字符设备文件/dev/null:无限数据接收设备/dev/zero:无限零资源/dev/tty0-31:虚拟终端/dev/ttyS0-9:串口/dev/lp0-3:并口/dev/console:控制台/dev/fb0-31:framebuffer常用的符号连接设备文件/dev/cdrom/dev/hda-t,sda-z/dev/modem /dev/ttyS0-9/dev/pilot/dev/ttyS0-9设备文件的使用用户可以通过操作设备文件来完成对设备的操作。echo hello /dev/tty2在第二个tty终端上显示一个hellocp /dev/fd0 /dev/fd1将第一个软驱中的软盘拷入第二个软驱中的软盘dd if=/dev/hda of=/root/mbr bs=512 count=1备份第一个硬盘上的mbr为/root目录下的mbr文件dddd指令是一个功能强大的copy命令支持在拷贝文件的过程中转换文件格式支持指定范围的复制常用参数if=文件名:指定源文件of=文件名:指定目标文件bs=xxx:指定块的大小count=n:指定复制块的数量mknod系统用户可以用mknod指令来建立所需的设备文件语法:mknod 文件名 文件类型 主号 从号主号与从号可以在 /usr/src/linux-2.4/Documentation/devices.txt中找到kudzukudzu:Red Hat Linux上的硬件自检工具,它维护两份文件/etc/sysconfig/hwconf;使用硬件列表/etc/modules.conf:为硬件指定驱动kudzu以/usr/share/hwdata为数据库寻找硬件hwbrowser是图形界面下的硬件管理器硬盘结构对于每一个硬盘:主引导记录/Master Boot Record/MBR硬盘分区表/Standard Partition Table/SPT主分区/Primary Partition扩展分区/Extended Partition逻辑分区/Logical Partition硬盘分区一块硬盘只能有四个主分区用户可以也只可以将一个主分区变成扩展分区在扩展分区上,用户可以以链表方式建立逻辑分区Red Hat Linux对一块IDE硬盘最多支持到63个分区,SCSI硬盘支持到15个。fdisk工具最多只能辨认出16个分区。为硬盘分区硬盘分区工具disk druid:方便的分区工具,只能在安装时使用fdisk:运用广泛的字符界面下硬盘分区工具分区改变后需重启系统才会生效。第十三单元文件系统任课讲师:_文件结构为了能在设备上储存与读取文件,我们需要在分区上创立文件系统文件系统记录目录与文件我们称之为文件结构每一个文件系统在Linux里都被解释成由一个根目录为起点的目录树结构Linux将各个文件系统挂载(mount)在系统目录树中使用。文件系统对应不同的操作系统与设备,计算机里有许许多多种文件系统。不同的文件系统存放、搜索文件的方式都有不同Linux支持多种文件系统的读写。Linux自身最主要使用的是ext2/ext3文件系统ext2/ext3文件系统ext2/ext3文件系统支持rwx权限及文件属性(attributes)。ext2/ext3文件系统采用block+inode的方式存放文件ext2/ext3文件系统上有一块空间被称为超级块(superblock)用于存放文件系统的元数据,诸如卷标名、block数、inode数等等inode存放文件的元数据,包含文件权限、属性、更改时间等等数据。文件属性在ext2/3文件系统中,对每一个文件,还提供额外的属性支持用户可以用lsattr来检查文件的属性系统用户可以用chattr来改变文件的属性+号添加、-号去除ext3文件系统ext3文件系统即一个添加了日志功能的ext2,可与ext2文件系统无缝兼容ext2文件系统可以通过增加日志的方式简单地升级成为ext3文件系统ext3文件系统支持三种日志模式规则(默认,仅记录元数据)日志化(将数据象元数据一样记录入日志)写回(只在fsck时发生)其他常见的文件系统minix:古老的文件系统msdos/fat:microsoft早年的文件系统vfat:win95与win98采用的文件系统ntfs:win2000使用的文件系统iso9660:光盘使用的文件系统ReiserFS/JFS:仍然在完善的带日志文件系统创建文件系统如果我们需要使用一个分区用于存储文件,则我们要在这个分区上建立文件系统常用的创建文件系统的工具:mkfs可以用于创建各种文件系统,由-t参数指定mke2fs创建ext2/3文件系统,支持指定block大小等功能使用文件系统为了使用一个文件系统,往其中存读文件,用户需要先挂载该文件系统。挂载文件系统的指令是mount。语法:mount -t 文件系统类型 其他参数 设备 挂载点mount参数-t 文件系统类型:用于指定挂载文件系统的类型,一般这个参数是必须的。-o 参数:补充追加的参数ext2文件系统默认采用的参数:rw、suid、dev、exec、auto、nouser、async/etc/fstab配置文件系统挂载信息mount文件系统时若给出的参数不全,系统会从/etc/fstab中读取参数补完系统启动会参考/etc/fstab中的配置项自动加载文件系统也被fsck、dump、quotaon、swapon等程序使用当前挂载系统用户可以通过直接键入mount后回车来检查当前挂载中的文件系统用户也可以通过查看/etc/mtab文件来查看当前挂载中的文件系统。卷标由于设备文件名可能在硬盘结构发生变化时更动,因此Red Hat Linux对ext2文件系统使用卷标来挂载与卸载。卷标记录在ext2/ext3文件系统的超级块中用户可以用e2label指令来查询与更改ext2文件系统的卷标卸载文件系统当一个文件系统使用完毕,用户应当卸载该文件系统。umount指令用于卸载文件系统语法:umount 参数 设备/挂载点一个正在使用中的文件系统不能被卸载文件系统维护fsck/filesystem check:用于检查与修复文件系统e2fsck:检查与修复ext2文件系统系统在启动时自动会被检查tune2fs:更改ext2文件系统属性resize2fs:更改ext2文件系统的大小parted:更改多种文件系统大小自动挂载系统通过autofs服务自动挂载文件系统需要后台的automount进程autofs服务的开闭由/etc/init.d/autofs脚本控制主要应用于软驱与光驱等场合如果该设备一段时间没有被使用,autofs会自动卸载磁盘限额Linux内核支持基于文件系统的磁盘限额每一个组或用户,可以单独设置其磁盘限额磁盘限额包括对block的限制与对inode的限制,每一种限制又可以分为软限制与硬限制软限制被突破后,经过一段时间(grace time),会自动变成硬限制quota的配置与使用1.在/etc/fstab中需要设置磁盘限额的文件系统所在行的第四项(mount参数)中添加usrquota、grpquota参数2.使用mount o remount 需要限制的文件系统,将mount参数带入/etc/mtab中quota的配置与使用(二)3. 执行quotacheck auvg,在文件系统的根目录下建立aquota.user及aquota.group两文件4. 使用edquota 用户名与edquota g 组名编辑用户与组的磁盘限额5. 用quotaon auvg打开quota功能第十四单元计划任务任课讲师:_Linux的计划任务Linux系统支持一些能够自动执行任务的服务我们称其为计划任务:at:指定一个时间执行一个任务 cron:根据一个时间表自动执行任务anacron:在一个指定时间间隔错过后自动执行任务atat服务:安排一个任务在未来执行at服务需要系统后台有一个atd进程常用指令at:安排延时任务atq:查询当前的等待任务atrm:删除等待任务batch:以一个低优先级延时执行任务at的使用控制at的使用控制文件/etc/at.allow/etc/at.deny基于用户的使用控制cron允许系统根据时间表自动完成任务服务需要后台运行的系统进程crond开关cron服务系统管理员可以用service crond start|stop来开关cron服务用chkconfig或ntsysv选择cron服务的默认开启关闭。定制个人计划任务用户级别crontab e:编辑当前的守护进程表crontab l:列出当前的守护进程表crontab r:删除当前的守护进程表crontab u user:以某一个用户的身份/var/spool/cron:存放用户守护进程表crontab格式 * * * * * echo “hello” | wall分钟/小时/日/月/星期 命令#每分钟向所有在线用户的屏幕上发送hello定制系统计划任务系统级别采用/etc/crontab作为其crond的运行配置文件与个人的crontab文件格式有所不同默认情况下,系统会自动执行以下目录内的脚本/etc/cron.hourly:每小时的零一分/etc/cron.daily:每天四点零二分/etc/cron.weekly:每周日四点二十二分/etc/cron.monthly:每月一日四点四十二分/etc/cron.d/目录下存放着附加的系统守护文件cron的使用限制默认情况下,所有用户都可以定制自己的守护任务系统的守护任务只能由root来编辑限制/允许 用户使用cron/etc/cron.allow/etc/cron.denyanacroncron服务的扩展防止非24小时开机的计算机遗漏守护任务每次计算机通电时自动检测配置文件:/etc/anacrontab范例:7 80 cron.weekly run-parts /etc/cron.weeklytmpwatch为指定目录清理古旧文件有效应用于防止/tmp目录被填满tmpwatch每天在/etc/cron.daily中运行语法:/usr/bin/tmpwatch 小时数 指定目录第十五单元RPM 包及其管理任课讲师:_什么是RPMRPM:RedHat Package ManagerRPM的安装和卸除安装与卸除安装:rpm -i升级:rpm -U更新:rpm -F卸除:rpm -e可能会用到的补充参数输出用:-v,-h预设条件:-nodeps,-force重定位:-rootRPM包的查询RPM包的查询:rpm -q:查询某一个RPM包是否已安装rpm -qi:查询某一个RPM包的详细信息rpm -ql:列出某RPM包中所包含的文件rpm -qf:查询某文件属于哪一个RPM包rpm -qa:列出当前系统所有已安装的包rpm -qp:指定一个等待安装的RPM包RPM包的校验及检查RPM包的校验rpm -V:校验某个RPM包rpm -Va:校验所有已安装的RPM包RPM包的检查rpm -K:检查RPM包的GPG签名第十六单元 打印与电子邮件任课讲师:_在Linux中进行打印打印机可以是本地打印机也可以是网络打印机打印请求首先被送入打印队列排队的请求任务按照先来先服务的原则送到打印机在打印前或打印中可以取消任务打印命令lpr - 提交一个任务到打印队列以供打印 可接受的格式:ASCII,PostScriptlpq - 查看打印队列的内容lprm - 从打印队列中删除一个任务System V 的打印命令也在支持之列(例如:lp,lpstat 和cancel )从应用程序中打印大部分的应用程序输出PostScript格式从应用程序输出仍然使用LPRng打印系统 任务被送到打印队列 lpr的参数可以被使用打印工具enscript - 把文本文件转化成PostScript文件a2ps - 把文本文件转化成PostScript文件gv - PostScript 文件浏览器ps2pdf - PostScript到PDF转换器pdf2ps - PDF到PostScript转换器mpage - 在一张纸上打印多页邮件一台Linux主机可以是一个邮件服务器或邮件客户端有很多可用的邮件客户端 文本模式 pine,mutt 图形模式 mozilla Mail,evolution,kmail,balsa 命令行模式 mail邮件客户程序pine - 菜单驱动接口,简便易用mutt - 可详细配置的邮件客户程序evolution - 邮件,任务管理器,联系管理器mozilla mail - 图形,高级过滤,支持多个邮件帐号kmail - 图形,简单易用,KDE的一部分POP和IMAPPOP - Post Office Protocol 允许远端收取和删除邮件 在客户端的邮件必须是压缩的IMAP - Internet Message Access Protocol 允许远端邮件收取和基于服务器的邮件目录管理邮件过滤mozilla mail拥有很灵活的过滤功能pine和mutt的过滤功能由procmail来实现fetchmail收取远端的邮件然后送到本地的邮件系统支持许多协议 POP IMAP SMTP第十七单元sed,awk,和其他语言任课讲师:_sedStream EDitor (流编辑器) 用来编辑文本流 只读取文件一次 通常用在命令的输出 占用的系统资源很少sed 地址告诉sed在哪里执行编辑 没有地址 - 编辑整个文件 一个地址 - 编辑所有匹配的 两个地址 - 编辑所有在之间的sed脚本编辑内容可以写成脚本脚本是包含sed命令的文本文件有很多的命令和选项!一个sed例子把文件aboutsed.txt中所有的单词slow换成fast$ sed s/slow/fast/g aboutsed.txt output.txtawk编辑文本的程序语言在一个文件中搜索匹配一个模式或多个模式的行在匹配的行上执行特殊的操作awk程序规则通常由新行来分离规则包含一个模式和在 内包含的操作 pattern action运行awk程序简单的程序可以在命令行下直接输入: $awk program input file更长的程序保存在文件中 $awk -f program_file input_file一个简单的awk例子用awk搜索文件/etc/passwd中包含bash字符串的行 $ awk /bash/ print /etc/passwd一个更加复杂的awk例子统计/project目录下所有属于用户joshua的文件的总大小. #ls -l /project | awk $3 = joshua sum += $5 END print sum 何时使用awk从大量的原始数据中产生报告从其他程序的输出中总结信息当你需要一个又小又快的文本处理程序的时候到哪里学到更多sed和awk有详细的info页 $info sed $info awk其他语言Red Hat Linux支持的其他语言和程序库包括:PerlJavaC和C+Tcl/Tk和ExpectGTK+Qtphp
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号