- linux软件包管理可分为两部份:
CentOS、RedHat => rpm
Ubuntu、kali等 => apt
应用程序一般默认安装在 /usr
应用程序文档文件: /usr/share/doc
应用程序手册文件: /usr/share/man - 软件包封装类型
rpm软件包 扩展名为 .rpm (可用Yum安装)
源代码软件包 一般是压缩包 “.tar.gz” 或者 “.tar.bz2”
这种压缩包包含原始代码,不能直接运行,需要编译
RPM Package Manager 由Red Hat 公司提出
建立统一的数据库文件
RPM 软件包 命名格式:
bash-4.1.2-15.e16_4.x86_64.rpm
查询RPM软件包信息:
rpm -q
rpm -qa 查询系统安装所有的软件包
rpm -qi 查询指定软件包的详细信息 (i = information)
rpm -ql 查询软件包所安装的目录以及文件列表 (l = list)
rpm -qc 仅显示指定软件包的配置信息 (c= configuration)
rpm -qd 仅显示指定软件包安装的文档信息 (d =documents)
查询文件或者目录属于那个RPM软件包
rpm -qf 文件或目录名
rpm -q [选项] 【软件包名】
rpm -qa 查询所有安装的软件包
由于linux上安装的软件包比较多,博主定向到文件中,通过查看文件的大小
给大家展示:
rpm -qi 显示详细信息
rpm -ql 指定软件包安装的目录或者文件列表
rpm -qc 仅显示软件包的配置信息
rpm -qd 显示安装文档
查询未安装的RPM安装包
rpm -qp 包文件
先挂在镜像
cd /media/RHEL_6.5\ x86_64\ Disc\ 1/
cd Packages/
ls
然后 rpm -qpi 文件名
安装,升级,卸载RPM软件包
rpm -i: 安装一个新的软件包 install
rpm -U 升级某个rpm软件
rpm -F: 更新某个rpm软件(若没有,则失败)
rpm -e 软件名 卸载删除 erase
辅助选项(依赖问题)
rpm --force 强制安装所指定的rpm软件包
–nodeps :安装,升级或卸载时忽略依赖关系。‘
-h: 以“#” 号显示安装进度
-v显示安装过程中的详细信息
yum -erase mysql-server
rpm -e mysql-server
安装mysql 完整路径:
rpm -ivh /media/RHEL_6.5\ x86_64\ Disc\ 1/Packages/mysql-5.1.71-1.el6.x86_64.rpm
安装perl-DBD-MySQL 完整路径:
rpm -ivh /media/Rhel_6.5\ x86_64\ Disc\ 1/Packages/perl-DBD-MySQL-4.013-3.el6.x86_64.rpm
卸载软件包后面跟的是包名称不是文件名
例如:
维护RPM数据库
- 重建RPM库
rpm --rebuilddb 或者 rpm --initdb 初始化数据库 - 导入验证公钥
一般我们从官网上下下来的文件都有一个公钥检验值,防止文件被挂马或者黑客
篡改造成校验值不一致。
rpm --import RPM-GPG-KEY-redhat-release
YUM(yellow dog Update Modofied)
yum基本设置: /etc/yum.conf
yum仓库设置: /etc/yum.repos.d/*.repo
日志文件: /var/log/yum.log
查询软件包:
yum list [软件名]
yum info 查询软件包详细信息
yum serach 查询某一个软件包
1.基于rpm包构建的软件更新机制,
2.自动解决依赖关系
3.所有的软件包由集中的YUM软件仓库提供
依赖关系举例:
要删除mysql-server 先得删除mysql和perl-DBD-MySQL
要删除mysql,由于mysql是mysql-server所需要得所以不能删除
要安装mysql-server必须得先安装mysql。。。
特别麻烦,所以推荐使用yum安装;
特别地,慎重使用yum 卸载包,因为他也会忽略依赖关系,
直接删除所有得软件包,在工程中一般有依赖得包多大上百个
慎重!!慎重!!慎重!!
yum源安装分为:
本地安装 file:///
网络安装:rpm -ivh http:// URL+URI
通过调用http,ftp协议
本地安装:
1.先配置仓库文件
vim /etc/yum.repos.d/rhel.source.repo
仓库文件后缀为 .repo
[ ] # 这里面是仓库名
name 仓库描述符(可以任意修改)
baseurl=file://mnt 光盘挂载点 目录
enabled=0 或者1
gpgcheck=1 校验公钥
gpgcheck=file://etc…
2.挂载光驱
mount /dev/sr0 /mnt
yum -y install mysql-server
还可以查看缓存:
cd /var/cache/yum/x86_64/6Server
yum clean all 清除缓存
网络配置 (ftp服务)
yum sever- service vsftpd start 启动ftp服务
- iptables -F 临时关闭防火墙 ,通过21端口连接
- cd /var/ftp/ 共享目录(共享文件)
- mkdir rhel6.5
- cd rhel6.5
- cp -r /mnt/* . (-r 拷贝目录)
yum client
vim /etc/yum.repos.d/rhel-source.repo
删除多余得仓库
baseurl=ftp:// 服务器端IP/rhel6.5
yum -y install mysql-server
网络配置(http)
yum server
service vsftpd stop
service httpd start
cd /var/www/html
mkdir rhel6.5
cp -r /mnt/* . 将光盘复制到当前路径下
yum client
baseurl 只需要将ftp换成 http即可