一、rpm和源码包的异同
源码包
- 开源,如果有足够的能力,可以修改源代码
- 可以自由选择所需的功能
- 软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高
- 卸载方便
但是安装步骤比较麻烦
rpm包##
- 包管理系统简单,只通过几个命令就可以
- 实现包的安装、升级、查询和卸载
- 安装速度比源码包安装快的多
但是不可以看到源代码,也不好灵活的选择功能
在rpm包安装时区分包名和包全名
包全名与包名
- 包全名:操作的包是没有安装的软件包时,
- 使用包全名。而且要注意路径.
- 包名:操作已经安装的软件包时,使用包名。
- 是搜索/var/lib/rpm/中的数据库
二、软件管理
rpm包##
2、缺点、依赖性
解决树形依赖,就是先装a在装b最后装c
解决环形,就是一条命令一起装abc
使用rpm命令进行软件操作
安装i 升级U 卸载e 查询q:
rpm -ivh 包全名
-i 安装
-U 升级
-e 卸载
-q 查询 加a表示查询所有
-v 显示详细信息
-h 显示进度
-i 查询软件信息
-p 查询未安装包信息
-l 列表
-R 查询软件包的依赖性
-V 效验指定RPM包中的文件
--noseps 不检查依赖性
-f就要加系统文件名 查询系统文件属于哪个软件包
使用yum进行对rpm包的管理###
查询所有可用软件包列表
yum list
搜索服务器上所有和关键字相关的包
yum search
其它操作
安装:
yum -y install 包名
升级:
yum -y install 包名
卸载//尽量卸载不用yum卸载,因为他会卸载掉关于这个包所以的依赖包,
而有些依赖包是不需要卸载包共同使用的依赖包,
卸载了,其它包就会报错。如果是系统包依赖的,会导致系统崩溃
yum -y remove 包名
源码包
安装位置一般都在/usr/local/软件名
安装源包所需要以下几步
- 安装c语言编译器
- 手动下载源码包和解压
- 进入解压后的源码包
- 记住要详细看安装手册
- 配置./configure --prefix=/usr/local/软件名
- make 编译
- make install 编译安装
配置的作用:
如果不配置该选项,安装后可执行文件默认放在/usr/local/bin中,
库文件默认放在/usr/local/lib中,
配置文件默认放在/usr/local/etc中,
其它的资源文件放在/usr/local/share中,比较凌乱。
如果配置–prefix,可以把所有的资源文件放在/user/local/软件名 路径中,不会杂乱
报错
当在make install前报错,文件apace2还没有安装,所以只要make clean 清空产生的临时文件,在make install是真正的写入数据
卸载
删除/usr/local/软件名就可以了,没有半点垃圾
三、服务管理
启动与自启动查询已安装的服务
- 服务启动:就是在当前系统中让服务运行并提供功能。
- 服务自启动:自启动是指让服务在系统开机或重启动之后,随着系统的启动而自动启动服务
查看服务自启动状态,可以看到所有RPM包安装的服务
chkconfig --list
rpm包管理
安装时基本文件路径
- /etc/init.d/: 启动脚本位置
- /etc/sysconfig/: 初始化环境配置文件位置
- /etc/: 配置文件位置
- /etc/xinetd.conf: xinetd配置文件
- /etc/xinetd.d/: 基于xinetd服务的启动脚本
- /var/lib/: 服务产生的数据放在这里
- /var/1og/: 日志
启动
- service 独立服务名 start|stop|restart|status|//红帽专属命令
- /etc/init.d/独立服务名 start|stop|restart|status|//标准的
自启动
- chekconfig [–level 运行级别][独立服务吗][on|off]
- 修改/etc/rc.d/rc.local文件
- 使用ntsysv命令自动启动
源码包服务
启动
- 利用绝对路径 /user/local/软件名/里面得启动文件 start|stop
- 让源码包服务被service命令管理启动,进行软连接到/etc/init.d/软件名
自启动
- 修改/etc/rc.d/rc.local文件
- chekconfig [–level 运行级别][独立服务吗][on|off]
基于xinetd服务
xinetd相对于其它rpm包,占用得缓存少,但是启动得比较慢一点
安装 xinetd和telnet
yum -y install xinetd
yum -y install telnet-server
这个xinetd以后再说