一、了解linux中的应用程序:

1.系统的组成:硬件、系统、内核、shell解释器、应用程序

应用程序:APP、安装在OS上完成特定功能的软件

2.linux应用程序的类型:

1
2
3
4
5
6
7
8
*.rpm ##redhat系统默认的软件格式(使用了二进制的文件格式,代码相对来说比较封闭)
		  rpm软件包名称格式:软件名-版本-发布次数-os平台-硬件平台(32bit/64bit).rpm
		  硬件平台:32位:i386、i586、i686
		 	 64位:x86.64
			 不区分硬件架构:noarch
*.deb ##debian分支默认的软件格式
源码软件 ##通用软件格式,压缩格式(xz、gz、bz2)的文件,也是生成rpm等包的基础
自带安装程序或免安装软件

3.程序文件存放位置:

1
2
3
4
5
/etc/ ##rpm包的配置文件
/var/log/ ##日志文件
/usr/share/doc/ ##软件的说明文档		
/usr/bin/ ##普通用户可运行的程序命令
/usr/sbin/ ##root可运行的程序命令

二、rpm命令管理软件包;

1.了解rpm;

rpm是redhat推出的包管理机制,用来管理(增删改查)软件包,rpm对于软件包的依赖关系处理时,选择忽略;

2.查询功能;

  • rpm -qa ##查询当前系统安装的所有rpm包
  • rpm -ql 软件名 ##查询软件包的所有有关文件
  • rpm -qi 软件名 ##查看软件包的详细信息
  • rpm -qf 文件名 ##查看此文件由哪个软件包提供的

3.安装、卸载、升级rpm软件包;

安装:

  • rpm -ivh 软件包的路径 --nodeps ##忽略依赖关系进行安装软件包,举例:包vsftpd

升级:

  • rpm -F 软件包的路径 ##为已安装的软件包升级

  • rpm -U 软件包的路径 ##为已安装的软件包升级,若未安装进行安装

卸载:

  • rpm -e 软件包名 --nodeps ##忽略依赖关系并进行卸载,常用

4.特殊用法:

  • --force:强制安装,当已经安装的软件的文件丢失或者被损坏时用到,或系统中以存在新版本需要安装旧版本时;

  • --nodeps:忽略依赖关系,安装或卸载时用到;

  • --import:导入iso的公钥(检查包的合法性和完整性,不导入会在安装时报warning)

三、yum命令管理软件包;

1.yum概述:C/S架构

  • 服务端:为客户端提供软件包的源,可以理解为一个服务站,可以使用ftp文件服务器提供yum的源,或者http(apache、 nginx)提供基于web的源,或者是本地file上传的文件;

  • 客户端:使用yum命令安装软件包

2.yum服务端的搭建:

将软件包集中在服务端的某个目录下; createrepo -g /mnt/repodata/repomd.xml ./软件包位置

3.yum的客户端的配置;

客户端使用yum命令进行安装、卸载、查找软件;

1).yum命令系统自动安装,可以通过以下命令进行查看;

  • enable yum //查看yum命令是外部命令还是内部命令
  • which yum //查看外部命令的位置
  • yum provides */yum //查看yum命令的提供软件包

2).配置yum仓库,源的文件;

  • mount /dev/cdrom /mnt //在虚拟机中将光盘镜像文件挂在到/mnt目录下
  • rm -rf /etc/yum.repos.d/*
  • vi /etc/yum.repos.d/centos.repo
1
2
3
4
5
6
7
8
9
[local]		//自定义名称,标记
name=local	//是对repo文件的描述
baseurl=file:///mnt		//yum服务器的访问路径,可以指定多个;
enabled=1	//为1代表开启此源,为0代表关闭此源,关闭后yum 默认不会找到此源,需要使用yum --enablerepo=
名称;
gpgcheck=0	//为0代表不进行gpg公钥的检查,为1代表进行检查,为了保证软件包的完整性,rpm --import 公钥
目录,进行导入公钥;
gpgkey=file:///		//指定软件校验公钥的存放位置
:wq

yum源支持的协议:

3).yum的配置文件;

1
2
3
4
/etc/yum.conf   //主配置文件,主要了解以下配置项:
keepcache=0 //将安装的软件包缓存到本地一份;               
cachedir=/var/cache/yum/$basearch/$releasever   //指定缓存软件包的路径;
logfile=/var/log/yum.log        //yum的日志文件

## 4.yum的用法(增删改查): 查(查找):

  • yum list //查看所有软件包

  • yum repolist //列出可用yum源

  • yum search 软件名(关键字) //查找软件

  • yum grouplist //列出所有可安装的yum源的软件组

  • yum groupinfo "软件组名" //查看软件组中软件包

  • yum provides */命令 //查看提供此命令的软件包

增(安装):

  • yum -y install 软件包名

  • yum -y groupinstall 软件组名

删(卸载):

  • yum -y remove 软件包名

  • yum -y erase 软件包名

  • yum -y groupremove 软件组名

改(修改yum本身):

  • yum clean all //清空yum的所有缓存,出错常用

  • yum -y update //更新系统,升级所有包,改变软件设置和系统设置,系统版本内核都升级

  • yum -y upgrade //升级所有包,不改变软件设置和系统设置,系统版本升级,内核不改变

四、源代码包的管理;

1.为什么要用源码安装;

部分软件无rpm包 源码包是最新的,可以得到新功能和补丁 源码编译安装实现功能定制,满足企业需求

2.源码包编译安装的流程;

  1. wget或lftp形式下载源码包安装文件(也可以在windows中下载,完成后上传到linux中);
  2. 解压软件包,通常包的格式都为.tar.gz或.tar.bz2,通常都解压到/usr/src/目录下;
  3. 配置安装目录,定制功能,由./configure --prefix=安装目录 ... 命令来完成;
  4. 编译:生成二进制可执行文件,make命令来完成;
  5. 安装:复制文件到系统目录中,make install 命令来完成;
  6. 修改配置,启动服务,测试,投入使用;

3.源码安装的条件;

源代码编译安装必须要安装的两个工具:make、gcc(包含在装系统时,开发工具包中)

4.编译安装的卸载;

删除安装目录即可;