王 璐 dqx_wl@163.com 中原工学院计算机学院 2009-2 Linux操作系统 王 璐 dqx_wl@163.com 中原工学院计算机学院 2009-2
Ch5 应用软件 了解Linux应用程序的组成部分 linux下的软件安装方法 掌握图形界面下应用程序管理工具的使用 常用软件简介 使用RPM工具管理软件包的方法 应用程序源代码包的编译安装方法 使用软件工具自动安装的方法 掌握图形界面下应用程序管理工具的使用 常用软件简介
应用程序与命令 应用程序基础 应用程序的组成 包管理系统 RPM包管理 RPM包管理系统 应用程序的编译安装 应用程序安装与管理 编译前的准备工作 应用程序编译 编译前的配置 启动包管理程序 编译与安装 程序的一般操作 图形界面管理工具 软件包安装实例 管理工具的特点
Linux应用程序与命令 应用程序与命令的关系 基本命令是Linux系统中不可缺少的组成部分 命令保存在/bin和/sbin目录中 应用程序保存在/usr/bin和/usr/sbin目录中 命令的作用是完成对Linux系统本身的管理工作,应用程序则完成与Linux系统管理相对独立的任务 命令只能以命令行的形式运行,命令格式中包括命令字、命令选项和命令参数 应用程序可以是以命令行的形式运行,也可以是字符界面或图形界面的窗口程序,形式比较多样
应用程序与第三方应用程序 系统应用程序与第三方应用程序的比较 系统应用程序通常遵从Linux发行版本中的软件包管理格式进行安装和卸载
Linux应用程序组成 应用程序中不同类型的文件保存在Linux系统的不同目录中 文件类型 保存目录 普通执行程序文件 /usr/bin 服务器执行程序文件和管理程序文件 /usr/sbin 应用程序配置文件 /etc 应用程序文档文件 /usr/share/doc 应用程序手册页文件 /usr/share/man
linux下的软件安装方法 软件包(编译好的二进制文件)管理形式的软件安装 源代码形式的软件安装 使用工具软件的自动安装方式 *.rpm形式的二进制软件包 *.tar.gz或*.tar.bz2形式的二进制软件包 提供安装程序的软件包 源代码形式的软件安装 使用工具软件的自动安装方式
RPM 软件包 RPM最早是由Red Hat公司提出的软件包管理标准,目前应用于很多Linux发行版 RPM软件包的文件名 RPM Package Manager RPM软件包的文件名 bash-3.0-19.2.i386.rpm 软件包名称 软件版本号 软件运行硬件平台 软件包扩展名
rpm命令的功能 RHEL4中使用rpm命令对RPM软件包进行管理 rpm命令可以完成对软件包的所有管理功能 查询已安装在Linux系统中的RPM软件包的信息 查询RPM软件包安装文件的信息 安装RPM软件包到当前Linux系统 从当前Linux系统中卸载已安装的RPM软件包 升级当前Linux系统中已安装的RPM软件包
rpm查询命令 命令 功能 rpm -qa 查询Linux系统中的所有软件包 rpm -q 包名称 查询指定名称的软件包是否安装 rpm -qi 包名称 查询指定名称软件包的详细信息 rpm -ql 包名称 查询指定名称软件包中所包括的文件列表 rpm -qf 文件名称 查询指定文件所属的软件包 rpm -qpi 包文件名 查询指定RPM包文件的详细信息 rpm -qpl 包文件名 查询指定RPM包中包含的文件列表
软件包查询实例2-1 查询系统中已安装的软件包信息 $ rpm -qi bash 命令参数,被查询的软件包名称 命令名 命令选项:
软件包查询实例2-2 查询指定RPM软件包文件的信息 $ rpm -qpl bash-3.0-19.2.i386.rpm 命令名 命令选项: -q表示执行查寻 p表示查询软件包文件 l表示查询包中的文件列表 命令参数,被查询的软件包安装文件的名称
RPM安装命令 rpm命令配合“-i”选项用于安装RPM软件包 rpm命令配合“-ivh”在安装RPM软件包时会显示更多的提示信息 rpm -i vim-common-6.3.035-3.i386.rpm 命令名 -i选项表示安装软件包 要安装的软件包文件名作为命令参数 rpm命令配合“-ivh”在安装RPM软件包时会显示更多的提示信息 rpm -ivh vim-common-6.3.035-3.i386.rpm
RPM软件包之间的依赖关系 vim-enhanced包的运行依赖于 vim-common包 vim-enhanced-6.3.035-3.i386.rpm 包依赖关系 vim-common-6.3.035-3.i386.rpm 因此,vim-common包需要在 vim-enhanced包之前进行安装
RPM包卸载 rpm命令配合“-e”选项用于安装RPM软件包 RPM软件包的卸载同样存在依赖关系 rpm -e vim-enhanced 命令名 -e选项表示卸载软件包 要卸载的软件包名称作为命令参数 RPM软件包的卸载同样存在依赖关系 被依赖的软件包应该最后被卸载
RPM包升级 rpm命令配合“-U”选项用于安装RPM软件包 当系统中未安装需要升级的软件包时,升级的过程等同于安装软件包的过程 rpm -U vim-enhanced-6.3.035-3.i386.rpm 命令名 -U选项表示升级软件包 用于升级的软件包文件名称作为命令参数 当系统中未安装需要升级的软件包时,升级的过程等同于安装软件包的过程
阶段总结 应用程序和系统命令的执行文件放置在不同的系统目录中 应用程序软件包中不同类型的文件保存在不同的系统目录中 Red Hat Linux系列发行版中使用RPM作为软件包的管理格式 rpm命令用于软件包的管理 rpm -q实现软件包查询功能 rpm -i实现软件包安装功能 rpm -e实现软件包卸载功能 rpm -U实现软件包升级功能
阶段练习 使用rpm查询命令配合less命令分页浏览系统中已经安装的所有软件包的列表 查询ls命令的命令文件属于系统中的哪个软件包
应用程序编译安装 开放源代码应用程序的编译安装 编译应用程序前的准备工作 编译前的配置 编译与安装过程
应用程序源代码安装的一般步骤 确认当前系统中具备软件编译的环境 获得应用程序的源代码软件包文件 解压缩源代码软件包文件 进行编译前的配置工作 进行程序源代码的编译 将编译完成的应用程序安装到系统中
编译应用程序前的准备工作 确认系统中已经安装了编译环境 获得(下载)程序的源代码安装包文件 释放程序源代码软件包文件 进入源代码目录 $ rpm -qa | grep gcc 获得(下载)程序的源代码安装包文件 释放程序源代码软件包文件 $ tar jxf prozilla-2.0.4.tar.bz2 进入源代码目录 $ cd prozilla-2.0.4
程序编译前的配置 程序源代码目录中的“configure”命令用于完成程序编译前的配置工作 查看“configure”命令支持的配置选项 ./configure --help 指定安装路径进行配置 ./configure --prefix=/home/teacher/proz 命令名 用于设置安装路径的配置选项 为命令选项设置的值
编译与安装 程序编译过程 程序安装过程 验证(执行)已编译安装完成的程序 使用make命令进行应用程序的编译 $ make 使用make install命令进行应用程序的编译 $ make install 验证(执行)已编译安装完成的程序 查看安装目录中的文件,执行命令程序 $ cd /home/teacher/proz ; ls $ bin/proz --help
使用工具软件的自动安装方式 apt-get yum ...... Debian下最令人称道的就是其软件包管理(dpkg和apt)程序,dpkg是Debian系列特有的软件包管理工具,它被誉为Linux软件包管理工具最为强大的软件包技术,apt则是自动管理dpkg软件包的一个工具,配合apt程序,最为常见的就是apt-get,在Debian下”apt-get upgrade &&apt-get update “可将所有的软件自动更新 更新软件包信息库,就是与服务器同步软件包列表,于是当你apt-get install *时就能下到最新的软件。在Debian中,软件包是通过一个数据库来管理的,通过这个数据库中可跟踪你系统中已安装、没有安装和现在可安装的软件包信息。apt -get安装软件包时就是依靠这个数据库来解决软件包间的依赖关系,从而可自动安装相关软件。 yum YUM的全名是YellowDog Updater, Modified,YU是YellowDog这个Linux套件自行开发的RPM软件套件管理系统,这个YU系统的特色是可以配合网络上的软件数据库直接进行软件的更新和移除, 后来美国Duke University将之改良,yum可以自动更新/移除RPM套件,它会自动计算相依性,判断哪些RPM套件应该安装而哪些不必安装,正因为yum的出现可以解决安装 RPM套件时烦人的相依性 (dependency) 问题并且可直接透过网络进行系统升级,所以广泛用于Red Hat、centos与Fedora Core Linux,所以您可以很容易地透过yum自动升级Fedora Code Linux系统。 ......
启动包管理程序 包管理程序启动可以使用命令和菜单两种方式 $ system-config-packages 选择菜单启动包管理程序 普通用户启动包管理程序需输入root用户口令
程序管理工具的操作 进行软件包类别中的详细设置 选择程序类别末尾的Details链接
软件包安装实例 选择安装开发工具软件包 软件包安装完成 按照提示更换安装盘 要安装的包个数和需要的磁盘空间 选择Update按钮
应用程序管理工具的特点 应用程序管理工具对RHEL4安装光盘中包括的软件包按照类型划分后进行管理,结构比较清晰 管理工具只能用于管理RHEL4发行版中自带的应用程序,不能管理其他的RPM软件包 由于软件包之间存在复杂的依赖性关系,很多软件包只能通过管理工具进行安装和卸载,通过rpm命令很难手工完成管理工作 管理工具特别适合完成安装和卸载某个类型的所有软件包
阶段总结 为了实现特定的管理目的,一些应用程序只能通过源码编译的方式进行安装 应用程序源码编译安装需要系统中有编译环境 应用程序源码编译包括配置、编译、安装等步骤 ./configure make make install 应用程序管理工具是Red Hat Linux系列发行版中特有管理程序,只能管理发行版自身包括的软件包
阶段练习 使用configure命令查看程序源代码的配置支持哪些配置项 启动并熟悉程序管理工具的操作界面
小结 应用程序与命令 应用程序基础 应用程序的组成 包管理系统 RPM包管理 RPM包管理系统 应用程序的编译安装 应用程序安装与管理 应用程序和命令在功能和文件保存位置上都有所不同 应用程序与命令 应用程序中不同类型的文件保存在不同的目录中 应用程序基础 应用程序的组成 RPM是RHEL4中使用的软件包格式 包管理系统 RPM包管理 rpm命令用于对RPM软件包进行管理 RPM包管理系统 开源软件可以从程序源代码进行编译安装 应用程序的编译安装 应用程序安装与管理 确认编译环境、获取和释放程序源代码 编译前的准备工作 应用程序编译 configure命令对程序源代码进行配置 编译前的配置 make命令进行编译 make install进行安装 命令和菜单两种方式启动包管理程序 启动包管理程序 编译与安装 选择安装指定的软件包 程序的一般操作 图形界面管理工具 安装开发工具类软件包 软件包安装实例 更适合安装整个类型的软件包 管理工具的特点
实验 任务1:使用fcitx输入法软件包替换iiimf输入法软件包 任务2:使用图形界面添加删除应用程序 任务3:从源代码编译安装应用程序 提示:rpm命令的格式比较复杂,在实验中应明确rpm命令进行查询、删除和安装所使用的命令选项 任务2:使用图形界面添加删除应用程序 提示:在使用应用程序管理工具安装某类应用程序时,可以更细致的定制需要安装的软件包,但不要破坏软件包之间的依赖关系 任务3:从源代码编译安装应用程序 提示:进行应用程序的源代码编译安装时,尽量不要将程序安装到Linux中的系统目录,否则很难卸载
常用应用软件 OpenOffice VI etc
文本编辑器概述 文本编辑器的作用 文本编辑器的分类 Linux系统中的配置文件以文本文件的形式保存 行编辑器与全屏幕编辑器 字符界面编辑器与图形界面编辑器
Linux中的多种文本编辑器 vi Emacs nano gedit Linux学习者需要掌握的第一个文本编辑器 用于编辑程序源代码文件的文本编辑器 nano 在字符界面提供了菜单操作,易用性较好 gedit GNOME图形环境中的文本编辑器
vi编辑器的三种模式 vi编辑器中有三种状态模式 命令模式 输入模式 末行模式 Shell提示符 末行模式 输入模式 命令模式 退出vi vi file 末行模式 输入模式 转义命令 按[Esc]键 文本输入命令 执行完毕或按[Esc]键 命令模式
vi编辑器的基本使用 vi编辑器的启动与退出 文件操作 光标移动操作 编辑操作 查找与替换操作 vi编辑器的在线帮助
vi编辑器的启动与退出 直接进入编辑环境 进入编辑环境并打开(新建)文件 退出vi编辑环境 $ vi $ vi myfile 输入末行命令放弃对文件的修改,并退出编辑器 :q!
vi中的文件操作 打开新文件 读取文件 保存文件 另存为文件 退出vi编辑器
文件的打开与读取操作 打开新文件 读取文件内容到当前vi编辑器中 打开新的文件到vi编辑器中 :e filename :r filename
文件保存与另存为 保存文件 保存对vi编辑器中已打开文件的修改 :w 另存为文件 将vi编辑器中的内容另存为指定文件名 :w myfile
退出vi编辑器的多种方法 未修改退出 保存并退出 不保存退出 没有对vi编辑器中打开的文件进行修改,或已对修改进行了保存,直接退出vi编辑器 :q 保存并退出 对vi编辑器中的文件进行保存并退出vi编辑器 :qw 不保存退出 放弃对文件内容的修改,并退出vi编辑器 :q!
光标移动和翻页操作 操作类型 光标操作键 功能 光标移动 h 向左移动光标 l 向右移动光标 k 向上移动光标 j 向下移动光标 翻页 Ctrl + f 向前翻整页 Ctrl + b 向后翻整页 Ctrl + u 向前翻半页 Ctrl + d 向后翻半页
行内快速跳转 操作键 功能 ^ 将光标快速跳转到本行的行首字符 $ 将光标快速跳转到本行的行尾字符 w 将光标快速跳转到当前光标所在位置的后一个单词的首字母 b 将光标快速跳转到当前光标所在位置的前一个单词的首字母 e 将光标快速跳转到当前光标所在位置的后一个单词的尾字母
文件内行间快速跳转 命令 功能 :set nu 在编辑器中显示行号 :set nonu 取消编辑器中的行号显示 1G 跳转到文件的首行 G 跳转到文件的末尾行 #G 跳转到文件中的第#行
进入输入模式 命令 功能 i 在当前光标处进入插入状态 a 在当前光标后进入插入状态 A 将光标移动到当前行的行末,并进入插入状态 o 在当前行的下面插入新行,光标移动到新行的行首,进入插入状态 O 在当前行的上面插入新行,光标移动到新行的行首,进入插入状态 cw 删除当前光标到所在单词尾部的字符,并进入插入状态 c$ 删除当前光标到行尾的字符,并进入插入状态 c^ 命令删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态
输入模式的编辑键操作 按键 功能 方向键 进行上下左右方向的光标移动 Home 快速定位光标到行首 End 快速定位光标到行尾 PageUp 进行文本的向上翻页 PageDown 进行文本的向下翻页 Backspace 删除光标左侧的字符 Del 删除光标位置的字符
删除操作 命令 功能 x 删除光标处的单个字符 dd 删除光标所在行 dw 删除当前字符到单词尾(包括空格)的所有字符 de 删除当前字符到单词尾(不包括单词尾部的空格)的所有字符 d$ 删除当前字符到行尾的所有字符 d^ 删除当前字符到行首的所有字符 J 删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容
撤销操作 命令 功能 u 取消最近一次的操作,并恢复操作结果 可以多次使用u命令恢复已进行的多步操作 U 取消对当前行进行的所有操作 Ctrl + r 对使用u命令撤销的操作进行恢复
复制与粘贴操作 命令 功能 yy 复制当前行整行的内容到vi缓冲区 yw 复制当前光标到单词尾字符的内容到vi缓冲区 y$ p 读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)
字符串查找操作 命令 功能 /word 从上而下在文件中查找字符串“word” ?word 从下而上在文件中查找字符串“word” n 定位下一个匹配的被查找字符串 N 定位上一个匹配的被查找字符串
字符串替换操作 命令 功能 :s/old/new 将当前行中查找到的第一个字符“old” 串替换为“new” :s/old/new/g :s/old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认
vi编辑器的在线帮助 使用vi在线帮助需安装的软件包 使用vi在线帮助的两种方法 vim-common-6.3.035-3.i386.rpm vim-enhanced-6.3.035-3.i386.rpm 软件包在RHEL4的第2张安装光盘 使用vi在线帮助的两种方法 在vi编辑器中按“F1”键 输入help末行命令 :help
使用vi打开多个文件 在输入vi命令时使用多个文件名作为参数 vi file1 file2 file3 ...
vi多文件操作命令 命令 功能 :args 显示多文件信息 :next 向后切换文件 :prev 向前切换文件 :first 定位首文件 :last 定位尾文件 Ctrl + ^ 快速切换到编辑器中切换前的文件
图形界面中使用gedit编辑器 gedit编辑器界面 使用命令启动gedit 使用菜单启动gedit
小结 文本编辑器的作用 文本编辑器概述 文本编辑器的分类 文本编辑器简介 文本编辑 vi编辑器的模式 vi文本编辑器 vi编辑器的基本使用 Linux系统中通过编辑配置文件进行系统管理 文本编辑器的作用 行编辑器与全屏幕编辑器 字符界面编辑器与图形界面编辑器 文本编辑器概述 文本编辑器的分类 vi Emacs nano gedit都有各自的特点和应用场合 文本编辑器简介 vi编辑器中有命令模式、输入模式和末行模式三种状态模式 文本编辑 vi编辑器的模式 vi编辑器提供了完备的文本编辑功能 vi文本编辑器 vi编辑器的基本使用 vi编辑器支持对多个文本文件的编辑操作 编辑器的多文件操作 gedit文本编辑器
实验 任务1:使用vi编辑文本文件 任务2:vi编辑器多文件操作 提示 可以在vi编辑器中读取/etc目录下系统配置文件的内容,但是不要将进行的修改保存到系统配置文件中 任务2:vi编辑器多文件操作 在进行多文件间的切换之前,要将更改进行保存或放弃更改,否则无法进行正常的文件切换
Thanks