装修网站开发,百度seo怎么关闭,荥阳市建设局网站,符合网络营销的网站6 软件包管理
6.1 简介
软件包分类#xff1a;
源码包 源代码#xff08;大多数是C语言#xff09; 安装时慢#xff0c;容易报错 脚本安装包 对源码包进行改装#xff0c;使安装更简单#xff0c;不多。
rpm包 二进制包 Ubuntu系列的二进制包不是rpm#xf…6 软件包管理
6.1 简介
软件包分类
源码包 源代码大多数是C语言 安装时慢容易报错 脚本安装包 对源码包进行改装使安装更简单不多。
rpm包 二进制包 Ubuntu系列的二进制包不是rpm这是根本不同 源码包优点
开源如果有足够的能力可以修改源代码
可以自由选择所需的功能
软件是编译安装所以更加适合自己的系统更加稳定也效率更高比rpm高5%
卸载方便直接把安装目录删掉 源码包缺点
安装过程步骤较多尤其安装较大的软件集合如LAMP环境搭建容易出现拼写错误
编译过程时间较长安装比二进制安装时间长
因为是编译安装安装过程中一旦报错新手很难解决
用源码包安装一个Linux大概用3天老手 二进制包优点
包管理系统简单只通过几个命令就可以实现包的安装、升级、查询、卸载
安装速度比源码包安装快得多 二进制包缺点
经过编译不再可以看到源代码
功能选择不如源码包灵活
依赖性 6.2 包命名与依赖性
httpd-2.2.15-15.e16.centos.1.i686.rmp
httpd 包名
2.2.15 版本
15 发布次数
e16.centos 适合的Linux平台
i686 适合的硬件平台 noarch 表示任何Linux版本都可以安装
rpm rpm包扩展名
包全名操作的包是没有安装的软件包时使用包全名。而且要注意路径。安装、升级操作
包名操作已经安装的软件包时使用包名。是搜索/var/lib/rpm/中的数据库。查询、卸载操作 树形依赖 a - b - c
环形依赖 a - b - c - a 解决办法a b c 同时安装 RPM包库依赖 以 .so.2 结尾不是独立的是某个软件包中的文件
模块依赖 查询网站 www.rpmfind.net输入xxx.so.2可以查看属于哪个包。
只要把包含此文件的软件安装上即可。 6.3 安装与升级
安装
rpm -ivh 包全名
-i install
-v verbose
-h hash 显示
实验步骤
1、先将光盘挂载mount -t iso9660 /dev/sr0 /media
2、cd /media/Packages
3、此时就可用 rpm -ivh 包全名 命令进行安装了 升级
rpm -Uvh 包全名
-U upgrade 升级 卸载
rmp -e 包名
-e erase 卸载 --nodeps 不检查依赖性 6.4 查询
查询功能非常常用 查询是否安装
rpm -q 包名
rpm -qa
-q query 查询 -a all 所有
rpm -qa| grep httpd 此命令查询所有和httpd相关的包安装信息 |管道符 查询软件包详细信息
rpm -qi 包名 #查询已安装的包信息
rpm -qip 包全名 #查询未安装包的信息这些信息已经在包中写好
-i information 查询软件信息 -p package 查询未安装包信息 查询包中文件安装位置 包的安装位置都是默认的
rpm -ql 包名
rpm -qlp 包全名 查询未安装包打算的位置已在包中设置好
-l list 列表 查询系统文件属于哪个RPM包
rpm -qf 系统文件名
-f file 查询系统文件属于哪个软件包 etc目录下都是系统的配置文件 查询软件包的依赖性
rpm -qR 包名
rpm -qRp 包全名 查询未安装包的依赖性
-R requires 查询软件包的依赖性 6.5 校验
RPM包校验 判断系统文件是否被更改 rpm -V 已安装包名
-V verify 校验指定RPM包中的文件 例rpm -V httpd
如果出现任何信息则表示没有任何修改。
如果有修改会显示“修改标志位 文件名” 修改标志位有8位信息 点(.)代表未被修改
S 文件大小是否修改
M 文件类型 或者 文件权限rwx是否修改
5 文件MD5校验文件内容是否修改 MD5 -- 一种加密方式
D 设备中从代码是否改变
L 文件路径是否修改
U 文件所有者是否修改
G 文件所属组是否修改
T 文件修改时间是否修改 文件类型对应上面的M
c config file 配置文件
d documentation 普通文档
g ghost file 鬼文件 很少见 就是该文件不应该被这个RPM包包含
l license file 授权文件
r read me 描述文件 6.6 文件提取
目的从rpm包中提取指定文件用于恢复某些文件。 rpm2cpio 包全名 | cpio -idv . 文件绝对路径
#rpm2cpio命令可将rpm包转换为cpio处理格式
#cpio 是一个标准工具用于创建软件档案文件和从档案文件中提取文件 cpio 选项 [文件|设备]
-i copy-in模式还原
-d 还原时自动新建目录
-v 显示还原过程 rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.e16.i686.rpm | cpio -idv . /bin/ls
提取RPM包中ls命令到当前目录的/bin/ls下 6.7 yum在线管理
yum在线管理 redhat收费 centos免费 内网需配置ip 子网掩码
公网还需配置 网关 DNS IP地址配置
方法一
setup redhat系列专有命令
service network restart 方法二
vi /etc/sysconfig/network-scripts/ifcfg-eth0
把 ONBOOTno改为 ONBOOTyes #启动网卡
如果文件中没有设置DNS则添加DNS11114.114.114.114
service network restart 网络yum源
(.repo都是合法的yum源 默认是CentOS-Base.repo生效)
配置文件为/etc/yum.repos.d/CentOS-Base.repo
这个文件默认已经配置好了不需要更改 [base] 容器名称一定要放在[]中
name 容器说明可以自己随便写
mirrorlist 镜像站点
baseurl yum源服务器的地址。默认是CentOS官方yum源服务器如果觉得慢可以改成别的yum源地址
enabled 此容器是否生效不写默认为1代表生效
gpgcheck RPM数字证书是否生效如果是1则生效
gpgkey 数字证书公钥文件保存位置不用修改 查询
yum list #查询所有可用软件包列表
yum search 关键字 #搜索服务器上所有和关键字相关的包 yum全用包名 RPM则有包名和包全名之分 安装
yum -y install 包名
-y 自动回答yes
例yum -y install gcc 升级
yum -y update 包名
例yum -y update //此命令升级所有软件包包括内核慎用 卸载
yum -y remove 包名
#不要用yum卸载软件包
会将其依赖的包卸载出现别的问题。 服务器使用的原则
1.最小化安装
2.使用什么软件安装什么软件
3.尽量不卸载软件 yum软件组管理命令
yum grouplist #列出所有可用的软件组列表
yum groupinstall 软件组名 #安装指定软件组组名可用grouplist查询如果组名有空格用双引号引起来
yum groupremove 软件组名 #卸载指定软件组 6.8 yum光盘管理 1 挂载光盘 mount -t iso9660 /dev/sr0 /media 2 让网络yum源文件失效
方法一将所有选项都置成enable0
方法二yum源检测的是.repo后缀名 所以改名即可 mv CentOS-Base.repo CentOS-Base.repo.bak mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak mv CentOS-Vault.repo CentOS-Vault.repo.bak 3 修改光盘yum源 vim CentOS-Media.repo
修改两处 baseurlfile:///mnt/cdrom/ #地址为自己的光盘挂载点并把其他地址注释掉 enabled1 #让此yum源生效 yum list | more 分屏显示 注释有严格格式最好单行顶格写注释 6.9 源码包与RPM包的区别
安装之前概念上的区别
安装之后安装位置不同 RPM包 系统指定的默认位置不要人为手工修改安装目录
/etc/ 配置文件
/usr/bin/ 可执行命令
/usr/lib/ 函数库
/usr/share/doc/ 使用手册
/usr/share/man/ 帮助文件 源码包 人为手工指定安装位置
一般是 /usr/local/软件名/ 安装位置不同带来的影响
RPM包安装的服务可以使用系统服务管理命令service来管理--启动、重启、关闭
例如RPM包安装的Apache的启动方法是 /etc/rc.d/init.d/httpd start #/etc/rc.d/init.d/是所有服务的安装路径 或者 service httpd start redhat系列专有命令工作原理去/etc/rc.d/init.d/目录下去找httpd服务 源码包安装的服务只能通过绝对路径进行管理 /urs/local/apache2/bin/apachectl start 6.10 源码包的安装过程
源码包安装注意事项
源码包保存位置 /usr/local/src/
软件安装位置 /usr/local
如何确定安装过程报错安装过程停止并出现error、warning、no的提示 安装Apache源码包过程
1、下载源码包到/usr/local/src/
2、解压缩下载的源码包
3、可选du -sh 文件名/目录 查看文件夹大小 disk usage summarize human
4、进入解压缩目录
两个重要文件INSTALL(安装说明文件)、README(使用说明文件)
5、查看INSTALL文件内容
INSTALL关键内容
$ ./configure --prefixPREFIX
$ make
$ make install
$ PREFIX/bin/apachectl start ./configure 软件配置与检查有三个作用
定义需要的功能选项
检测系统环境是否符合安装要求
把定义好的功能选项和检测系统环境的信息都写入Makefile文件用于后续的编辑 6、./configure --prefix/usr/local/apache2 #跟安装路径此命令完成后出现Makefile文件
7、make #编译如果出错make clean 命令来清空产生的临时文件
8、make install #编译安装,此步真正向安装目录写入文件
9、安装完成后/usr/local/apache2/bin/apachectl start 源码包的卸载
不需要卸载命令直接删除安装目录即可
不会遗留任何垃圾文件 源码包 和 RPM包 如何选择
用途
对外访问如httpd则采用源码包安装
本地应用如gcc则采用RPM包 6.11 脚本安装包
脚本安装包并不是独立的软件包类型常见安装的是源码包
是人为把安装过程写成了自动安装的脚本只要执行脚本定义简单的参数就可以完成安装
非常类似于Windows下软件的安装方式 常见的脚本安装包是硬件的驱动 ./setup.sh 1 下载软件
2 解压缩并进入解压缩目录
3 执行安装脚本