




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章 linux操作基础,本章学习要求 掌握linux系统中的用户角色 掌握登录linux系统的方法 掌握shell的语法格式 理解绝对路径和相对路径的概念 了解linux系统的运行级别 了解如何获得帮助信息,用户在学习本章及以后的章节时,建议使用一台安装有linux操作系统的计算机,进入图形用户界面(gui,graphical user interface)或文本界面。本书将以linux系统的文本界面(cli,command line interface)进行讲解。如果用户使用gui,则需要用户使用终端模拟器来执行本书中的命令。 在linux系统中,虽然有很多的应用都可以使用图形化界面实现,但大多数使用和高级管理linux的实用程序和技巧还得在cli界面下通过输入命令来实现。如linux系统下dns的安全配置、mysql的使用与安装等。,3.1 用户,用户要进入并操作linux系统,必须使用用户名和密码登录到linux系统。在linux系统中,不同的用户所具有的权限不同,要完成不同的任务需要不同的用户,也可以说不同的用户,可能完成的工作也不一样。,3.1.1 用户的角色,linux系统中用户的角色是通过uid(用户id)来识别的,并且uid是唯一的。,root root即根用户,也称超级用户。它在系统中是唯一的、真实的,可以登录系统,可以操作系统中的任何文件和命令,拥有最高的权限。,虚拟用户 这类用户被称为伪用户或假用户,它是与真实用户区分的。这类用户不具有登录系统的能力,但却是系统运行不可缺少的用户,如bin、daemon、adm、ftp、mail等。这类用户是系统自身拥有的,而不是后来添加的(当然管理员也可以添加虚拟用户)。 普通真实用户 这类用户能登录系统,但只能操作(写和执行)自己home目录的中的内容。这类用户的权限有限,是系统管理员(root用户)添加的。,root用户和普通用户登录到linux系统后,shell提示符是不同的。root用户登录到系统后,shell提示符是#,而普通用户登录后shell的提示符是$。,3.1.2 用户和用户组,用户组(group)就是具有相同特征的用户(user)的集合体。如管理员在创建用户时需要让多个用户具有相同的权限,如查看、修改某一文件或执行某个命令,这时就需要用户组,将创建的用户定义到同一个用户组中,然后通过修改文件或目录的权限,让用户组具有一定的操作权限,这样用户组下的所有用户对该文件或目录都具有相同的权限。,在linux系统中,用户(user)和用户组(group)是和文件及目录权限联系在一起的,它们是系统安全中非常重要的两个概念。,3.1.3 用户之间的切换,在linux系统中,root用户一般是完成一些系统管理的工作,该用户具有许多普通用户没有的特权,他可以对系统上的任何文件进行读、写和执行操作,并且可以执行普通用户不能执行的程序等。如果只需要完成一些由普通用户就能完成的任务,建议不要使用root用户,以免无意中破坏系统,以至于有时必须重新安装linux系统才能够让系统恢复正常的运行。,对于root用户,在操作linux系统时,应先使用一个普通用户登录系统,当需要执行一些特殊程序或要求以root身份登录系统时,使用su命令即可在不退出普通用户状态的模式下转到root权限,但这时系统会要求用户输入root的口令。正确输入口令后,会出现shell提示符,并且shell提示符由$变为#,表明当前用户已经改变了,并且是以root权限运行。 su命令也可以从root切换到普通用户。以root权限运行su命令,并给出用户名,如su labuser,回车后(这时系统不要求输入口令,因为已是root权限,所以口令是多余的。),系统将从root切换为labuser(linux系统中管理员创建的一普通用户)。,3.2 登录系统,用户在login:提示符后输入用户名后回车,要求用户输入密码,即出现提示符password:。在linux系统中,用户输入密码时,系统为了安全,密码将不回显。,3.2.1 终端登录 red hat enterprise linux server release 5 (tikanga) kernel 2.6.18-8.e15xen on an i686 localhost login:root password: last login: thu jun 4 04:56:43 on tty1 rootlocalhost # 如本例中的red hat enterprise linux server release 5 (tikanga)和kernel 2.6.18-8.e15xen on an i686。从中用户就可以了解到linux系统的发行版本(red hat enterprise linux server release 5 (tikanga))、内核版本(2.6.18-8.e15xen)及linux运行的平台(i686)。,3.2.2 远程登录 若linux系统上开启了远程登录服务,如ssh或telnet服务,则用户就可以通过网络远程登录并管理linux系统了。用户可以在windows系统中使用telnet命令和ssh工具,用户输入正确的用户名和密码后,屏幕上就会显示shell提示符,这表明用户登录系统成功,并且系统正在等待用户输入命令。在shell提示符所在行之前,系统会显示上次登录系统的一些信息,如登录的时间和位置,如本例中的登录时间为:thu jun 4 04:56:43,登录位置为:tty1。通过此信息,用户可检查在自己上次登录后,是否有其他人使用该用户登录系统。,(在windows系统中需要安装ssh工具,一般可以使用securecrt软件)远程登录linux系统,而在linux系统中可直接使用telnet和ssh命令远程登录其它linux系统。,在linux系统下使用ssh或telnet命令,并且跟上要远程登录计算机的ip地址或域名即可实现远程登录。如下例所示: rootlocalhost #ssh roots password: permission denied, please try again. roots password: last login: sun may 24 23:04:08 2009 from rootsonggz root#,3.2.3 虚拟控制台,为了系统的安全,被远程登录的计算机会将远程登录成功与否的信息全部记入/var/log/messages文件。因此,管理员可通过查看/var/log/messages文件,了解linux系统是否有非法用户进行远程登录及登录的状态。,虚拟控制台的选择可以通过按下alt键和一个功能键来实现,通常使用f1-f6键中的某一个作为功能键。如用户登录后按下alt+f2组合键,用户将可以再次看到login:提示符,说明用户可以登录第二个虚拟控制台,然后只需按alt+f1组合键就可以回到第一个虚拟控制台。,虚拟控制台可以使用户同时在多个控制台上登录并工作,真正体现了linux系统多用户的特性。用户可以在某一虚拟控制台上所进行的工作尚未结束时,切换到另一虚拟控制台以开始另一项工作。,3.3 关闭系统,3.3.1 退出系统,用户可按下ctrl+d组合键或在shell提示符后输入exit或logout命令后回车,即可退出当前shell或注销当前用户。,3.3.2 关机和重启,shutdown options time message,表3-1 shutdow选项及说明,示例: rootlocalhost #shutdown r +10 rootlocalhost #shutdown h now,linux系统中,为了立即关机的方便,用户也可使用poweroff(中间无空格)命令或halt代替shutdown -h now命令。,当系统工作在文本模式下时,shell将作为命令解释器运行。由shell来显示提示符,当用户输入命令并回车后,shell执行该命令并显示另一个提示符。 在linux系统中,shell存在很多种,如bash、tcsh(tc shell)、ksh(korn shell)等,用户可通过使用ps命令来查看当前运行的shell类型。在shell提示符下输入ps(显示进程状态)命令,然后按下enter键,操作如下: rootlocalhost #ps pid tty time cmd 3137 tty1 00:00:00 bash 3231 tty1 00:00:00 ps,3.4 shell,3.4.1 重复/编辑命令行,用户可通过方向键来重复或编辑以前输入的命令,如使用方向键中的向上键,用户可得到前一个命令,重复按此键,就会得到更前面的一些命令,然后按下enter键就可再次执行这些命令,从而免去了用户重复输入相同命令的难度。 系统中存放用户用过的命令数量是由系统变量histsize的大小来决定的,系统的默认值为1000。也就是说,用户使用方向键中的向上键,最多能看到最近使用过的1000条命令。,3.4.2 语法格式,在shell提示符后输入命令并按下enter键后,shell将执行相应的程序。shell还可以执行shell脚本、应用程序和用户编写的程序。包含命令和参数的行称为命令行,linux系统中的命令是指在命令行上输入的字符。命令行语法说明了行中各个元素的排列顺序和间隔方式。当用户输入命令并按下enter键后,shell将扫描命令行以进行语法检查。linux系统的命令行语法格式如下所示:,command arg1 arg2 argn enter,命令行使用一个或多个空格(一般都使用一个空格)来隔开每个元素。其中,command为命令名,arg1到arg2为命令使用的参数,enter为回车键,即用户按下enter键后,shell才会执行该命令行中的命令。语法中的表示参数是可选的,即命令可不使用参数也可以被shell执行。在linux系统中,有些命令不需要参数,有些命令需要可变数目的参数,而有些命令需要特定的参数。选项是一种特殊类型的参数,命令行的每一个选项之前通常需要使用一个或两个连字符(-或-)。 由于linux系统是一个对大小写非常敏感的系统,因此用户在输入命令名、参数或选项时,应严格区分大小写字符。,示例: rootlocalhost # ls anaconda-ks.cfg install.log install.log.syslog rootlocalhost # ls -a . .bash_history .bashrc .gstreamer install.log.syslog .tcshrc .bash_logout .cshrc .gtkrc .mysql_history .xresources anaconda-ks.cfg .bash_profile .gconfd install.log .ssh rootlocalhost # ls -l -h total 32k -rw-r-r- 1 root root 1.1k apr 30 08:58 anaconda-ks.cfg -rw-r-r- 1 root root 23k apr 30 08:55 install.log -rw-r-r- 1 root root 3.5k apr 30 08:54 install.log.syslog,在命令行中,用户还可以使用;将两个命令隔开,这样可以实现在一行中输入多个命令。命令的执行顺序和输入的顺序相同。,3.4.3 命令补齐,命令补齐(command line completion)就是指当用户键入的字符足以确定某一目录中的一个唯一文件或目录时,只须按tab键就可以自动补齐该文件名或目录名剩余的部分。如在shell提示符后,当要输入命令或参数,如目录很深或文件名很长时,用户只要按下tab键,系统就会在所有可能的命令或文件名中找到相匹配的项,并自动帮用户补齐。,如果有一个以上的文件符合输入的字符串而不能补齐时,用户就可以多按几下tab键,系统将会把所有符合条件的文件名列出来。 命令补齐,对于用户,只要记的命令的首字母,就可以通过tab键获得系统中所有以首字母开头的文件名,从而减轻管理员或用户记忆命令的难度,同时也减少了用户输入命令或参数(长文件名,尤其是大小写组合的长文件名。)错误的机率。,3.4.4 通配符,当用户输入包含特殊字符的部分文件名时,shell可以生成与已有文件的名字相匹配的文件名。这些特殊的字符在linux系统中常被称为通配符(wildcard)。,在linux系统中,通配符一般有如下三个: ? :表示?的位置可以是任意的单个字符。 * :表示*的位置可以是任意多个(也包括0)字符。 : 可替代内的任何单个字符。,特殊字符? ?是shell生成文件名的特殊字符,它与已有文件名中的某个单个字符匹配。下面的示例以ls显示当前工作目录下的所有文件,然后再以特殊字符?进行显示。 rootlocalhost test# ls onetest test1 test11 test2 test3 testa testsoft rootlocalhost test# ls test? test1 test2 test3 testa 模糊文件引用test?与onetest、test11和testsoft都不匹配。特殊字符?可以放在模糊文件引用的任何位置。,特殊字符* 特殊字符*与?的功能相似,不同处在于,*可以与文件名中的任意多个(也包括0)字符相匹配。如下例所示: rootlocalhost test# ls test* test1 test11 test2 test3 testa testsoft rootlocalhost test# ls *1 test1 test11 rootlocalhost test# ls *est* onetest test1 test11 test2 test3 testa testsof,特殊字符 特殊字符将字符列表括起来使得shell与列表中的每个单个字符进行匹配。test?是test后跟任意的单个字符相匹配,如test?与test1、test2、test3和testa相匹配,而匹配要求更加严格,如test2a则仅与test2和testa相匹配。,定义了一个字符类,该字符类由方括号内的所有字符组成。在字符类的定义中,将连字符(-)放在中可以定义一个字符范围,如0-9代表0123456789,a-z代表所有的小写字母,a-za-z代表所有的字母(包括大小写字母)。,示例: rootlocalhost test# ls test0-9 test1 test2 test3 rootlocalhost test# ls testa-z0-2 test1 test2 testa rootlocalhost test# ls test0-90-2 test11 在实际应用中,特殊字符?、*和可配合使用,如下例所示。 rootlocalhost test# ls test0-9* test1 test11 test2 test3,在特殊字符定义的字符类中,若字符类以!或开头,该类将与任何不在内的字符进行匹配。如0-9*表示与不以数字开头的文件名匹配。 在linux系统中,利用通配符可以使命令行的输入变得更加灵活和实用。,3.4.5 绝对路径与相对路径,命令行中的命令名和参数有时需要指定它们的路径,路径就是用来指定文件的位置。指定文件的路径一般有两种方法:绝对路径和相对路径。,绝对路径是由系统的根目录开始到该文件所在位置的路径上所有节点名的组成,各节点之间使用/分隔表示。由于linux系统的根目录使用/表示,所以绝对路径都以/开头。由于该路径是通过遍历从根目录到文件节点的路径得到,所以称之为绝对路径。绝对路径中跟在最后一个/后的名字称为文件名。如linux系统中的cp命令,使用绝对路径表示应为/bin/cp 。,相对路径是指从当前工作目录开始到文件的路径名。相对路径是相对于当前工作目录的,而绝对路径是相对于/的。即文件的相对路径是指该文件相对于当前工作目录的位置表示,绝对路径是文件相对于/目录的位置表示。,在表示文件的相对路径时,路径名中常会以.或开头。其中.表示为当前目录,表示上一级目录,即当前目录的父目录。绝对路径和相对路径从表示形式上看:绝对路径以/开头,而相对路径以.或开头。 举例: 若当前的工作目录为/etc,若表示系统的日志文件messages的路径时,绝对路径应为/var/log/messages;相对路径应为:/var/log/messages。,3.4.6 命令行的处理过程,shell对命令行的处理过程如图3-1所示,当命令行上输入命令的绝对路径或命令的相对路径时,shell将在指定目录下查找用户具有执行权限的对应文件。如用户输入了/bin/ls,shell将在/bin目录下查找具有可执行权限的ls文件,若用户输入了ls,shell将在系统所设置的环境变量path中查找具有可执行权限的ls文件。 shell没有找到文件的原因一般是:一是输入命令名有误;另一种是输入的命令文件所在的目录没有在系统的环境变量path中设置。,3.4.7 内置命令,内置命令是存放在shell内的命令,相当于dos系统的内部命令。每个shell都有自己的内置命令集合。 shell的内置命令在系统中找不到与之相对应的可执行的文件。而工具(或称普通命令,是相对于内置命令的。)是系统中的一个可执行的程序。也就是说,在使用shell的内置命令时,无需指定它的路径;而使用工具时,无论是使用绝对路径、相对路径或path,在系统中必然存在一个与该工具相对应的可执行的文件。,shell执行命令的顺序是:内置命令、工具。如当用户编辑了一个可执行的文件时,而它的文件名恰好与shell的某一内置命令有相同的文件名时,当用户在shell提示符后输入该文件名并按下enter键后,shell执行的是内置命令而不是用户编辑的可执行文件。即shell总是在查找命令或工具之前执行shell内置命令。 可以使用info bash builtin或type命令查看当前shell的内部命令: rootlocalhost #type echo who if ls rootlocalhost #info bash builtin,3.5 运行级别,运行级别是操作系统当前正在运行的功能级别,级别从0-6,具有不同的功能。在linux系统中,运行级别存放在/etc/inittab文件里,而这个文件是init程序寻找的主要文件。最先运行的服务是存放在/etc/rc.d目录下的文件。 大多数的linux发行版本,启动脚本位于/etc/rc.d/init.d目录下。这些脚本被ln命令链接到/etc/rc.d/rcn.d(n代表运行级别0-6)目录。如/etc/rc.d/rc2.d目录表示其下的文件就是和运行级别2相关的。该目录下的文件由三部分组成:第1个字母、0-99的数字和数字后的字母组合。如文件开头的s(start)表示启动服务,k(kill)表示不启动服务,数字表示服务启动的顺序,数字后面的字母组合,表示启动的服务。,如/etc/rc.d/rc2.d/s10network,表示系统在运行级别2时,启动系统时,第10项启动network服务,/etc/rc.d/rc2.d/k25squid,表示在运行级别2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 消防安全应急演练实施方案范文
- 防洪建筑方案设计说明(3篇)
- 月子护理宝宝知识培训课件
- 2026届贵州省安顺市普通高中高三化学第一学期期末考试试题含解析
- 农产品电子商务营销推广方案示范
- 月嫂陪护知识培训内容课件
- 2025年农田水利设施改造项目施工管理规范报告
- 2025年学历类自考专业(建筑工程)建筑材料-流体力学参考题库含答案解析(5套)
- 护理关键护理技术培训心得
- 2025年学历类自考专业(建筑工程)-结构力学(二)参考题库含答案解析(5套)
- 初级魔方社团课件
- 2025年水手理论考试题库
- 第9课 让我们的学校更美好 第1课时(课件)2025-2026学年道德与法治三年级上册统编版
- 储油储气项目社会稳定风险评估报告
- 《RWA 技术规范》标准草案
- 稳定基金管理办法
- 庭院围墙整治方案(3篇)
- 数据安全管理员职业技能鉴定经典试题含答案
- 农村公墓资金管理办法
- 2025年高考物理真题完全解读(广西卷)
- 动设备培训课件
评论
0/150
提交评论