一、软件包管理
1.常见软件包格式 (1).exe Windows系统软件格式 (2).tar.gz | .tar.bz2 | .tar.xz 软件开发人员编写的软件源代码;所有发行版都可安装 (3)绿色免安装版 与Windows绿色软件一样,解压到对应目录即可运行 (4).rpm Red Hat系列(RHEL、Centos)发行版使用的封装类型 (5).deb Debian系列(Debian、Ubuntu)发行版使用的封装类型;apt-get install 软件名 2.软件开发流程:开发人员 --> 源代码 --> 编译 --> 二进制文件(.exe) 注:默认Linux不能安装Windows系统软件,如需安装可通过wine解决方案 3.软件包名称详解 bash-4.1.2-15.el6_4.x86_64.rpm bash:软件名 4.1.2:版本号;主版本号.次版本号.修订版本号 15:发布次数 el6_4:硬件平台;Red Hat Enterprise Linux 6.4发行版 x86_64:适用系统位数;x86_64可64位系统使用、i386可32位系统使用 RPM包下载地址:www.rpmfind.net
二、RPM包管理工具
1.查询(已安装的)
(1)rpm -qa //显示所有系统已安装的RPM包
(2)rpm -qa | grep <软件名> //搜索指定软件包是否安装
(3)rpm -ql <软件名> //显示指定软件包所有提供文件位置
(4)rpm -qi <软件名> //显示指定软件包的详细信息
(5)rpm -qc <软件名> //显示指定软件包的配置文件位置
(6)rpm -qf $(which 命令) //查看指定命令所提供软件包名
(7)rpm -qd <软件名> //显示指定软件包文档文件位置
2.查询(未安装的)
(1)rpm -qpl <RPM软件包路径> //查询未安装RPM软件包安装之后存放文件的路径
(2)rpm -qpi <RPM软件包路径> //查询未安装RPM软件包详细信息
例: mount /dev/cdrom /mnt //挂载光盘/mnt目录 rpm -qpi /mnt/Packages/apr-utils-1* //查询未安装apr-utils软件包的详细信息 rpm -qpl /mnt/Packages/apr-utils-1* //查询未安装apr-utils软件包安装后所存在路径
3.安装
rpm -ivh RPM软件包位置 //安装指定软件包
选项:
-i:install安装 -v:verbose安装信息 -h:以#显示安装进度 -U:升级RPM软件包,如果系统未安装该软件包旧版本,则安装指定的新版本软件 -F:更新RPM软件包,如果系统未安装该软件包旧版本,则放弃安装 --nodeps:忽略依赖关系强制安装指定安装软件包;一般不用 --force:强制
例: mount /dev/cdrom /mnt //挂载光盘/mnt目录 ①rpm -ivh /mnt/Packages/portreserve //安装portreserve软件包 ②rpm -ivh --force --nodeps /mnt/Packages/firefox //强制安装firefox软件,但有可能软件不能正常使用
4.卸载
(1)rpm -e 软件包名 //卸载指定软件包
(2)rpm -e 软件包 --nodeps //强制卸载指定软件包;建议替换为yum -y erase 软件包名
例:
①rpm -e portreserve //卸载portreserve软件包 ②rpm -e --nodeps net-tools //忽略依赖关系,强制卸载该软件
重建数据库文件与导入
(1)rpm --rebuilddb 或 rpm --initdb 重建数据库文件(/var/lib/rpm/_db) (2)rpm --import /mnt/RPM-GPG-KEY-CentOS-6 导入光盘中公钥文件
三、源代码安装
可定制性强
1.下载软件包
2.解压(tar) /解压源码包到/usr/src/目录
3.配置(./configure) /启用、禁用对应功能,并指定安装路径
4.编译(make) /生成可执行二进制文件、命令
5.安装(make install) /移动生成文件、命令到安装路径
6.验证(ls)
例:
①下载源代码软件包,通过Xshell传输(Ctrl+Alt+F)到Centos系统(/root) ②md5sum httpd-2.2.17.tar.gz /校验文件和是否与官网相同 66d8e107f85acc039fd5e624e85728a9 httpd-2.2.17.tar.gz ③tar -zxvf httpd-2.2.17.tar.gz -C /usr/src/ /将源代码包解压到/usr/src/目录 ④yum -y install gcc* /安装编译必要环境 ⑤cd /usr/src/httpd-2.2.17/ /进入httpd源码包目录 ⑥./configure --prefix=/usr/local/httpd /配置源码软件需要的功能,--prefix指定软件安装的路径 ⑦make && make install /编译生成二进制文件并移动文件到软件指定安装路径(/usr/local/httpd) ⑧ls -l /usr/local/httpd /查看是否生成对应目录 ⑨cd /usr/local/httpd/bin/apachectl start /启动httpd服务,提供网页访问 ⑩浏览器使用 http://ip地址 访问
四、YUM
作用:自动解决依赖关系;自动安装依赖的.rpm软件包
1.本地源(速度快、版本旧、只有光盘内的软件包)
rm -rf /etc/yum.repos.d/*
vim /etc/yum.repos.d/local.repo
[local] 仓库名
name=local 名字
baseurl=file:///mnt 光盘挂载位置
enabled=1 启动该仓库
gpgcheck=0 不检测公钥文件
mount /dev/cdrom /mnt //挂载光盘
2.在线源(速度慢、版本新、软件包多)
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo //下载在线源YUM文件另存为到/etc/yum.repos.d/目录下
vim /etc/yum.repos.d/CentOS6-Base-163.repo
:% s/$releasever/6.9/g //将下载系统版本位置改为6.9版本
yum clean all //清除YUM所有缓存
yum repolist //重建YUM缓存
3.YUM命令用法
yum -y install 软件包名 //安装指定软件
yum search 软件包名 //搜索YUM源中是否存在指定软件
yum erase 软件包名 //卸载指定软件
yum -y update //更新系统所有已安装软件包
yum info 软件包名 //查看指定软件包的详细信息
yum provides */命令 //搜索指定命令提供的软件包名
例:
yum -y install dhcp //安装dhcp软件 yum search firefox //搜索YUM源中是否有firefox软件 yum erase firefox //卸载firefox软件