码迷,mamicode.com
首页 > 系统相关 > 详细

linux软件包管理

时间:2015-03-17 12:14:21      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:

linux软件包管理
rpm命令管理
有两种安装办法 1 rpm 2 yum
rpm命名规则和依赖性
httpd-2.2.15-15.eld.centos.1.i686.rpm //包全名
httpd 包名
2.2.15 软件版本
15 发布次数
e16.centos 适合linux平台 //noarch 也就是都合适
i686 适合的硬件平台 //如果是x64的话那么就是X64
rpm 扩展名

rpm包依赖
树型依赖
环形依赖
模块依赖 就是在安装过程中提示 .so.数字结尾的文件,那么如何解决
www.rpmfind.net


实验1
放入光盘以后进行挂载
1 mkdir /mnt/cdrom
2 mount /dev/sr0 /mnt/cdrom
3 rpm -ivh 某个包


2 rpm命令管理
1 包全名和包名
如果是没有安装过的软件包,那么使用包全名
如果是安装过的软件包,使用包名 包名存储在var/lib/rpm

安装和更新的时候用包全名,卸载和查询的时候用包名

rpm -ivh 包全名
-i 安装
-v 显示详细信息
-h 显示进度

安装一个apache服务器

升级 rpm -u 包全名
rpm -e 卸载

rpm 查询
查询只能用rpm来查
rpm -q 包名 查询这个包是否安装
rpm -qa 查询所有已安装包
rpm -qa | grep httpd 查询所有与httpd 相关的包 | 叫做管道符

查询包安装位置 查询未安装软件包位置
rpm -ql 包名 rpm -qlp 包名

 

rpm校验和文件提取
rpm -V 已安装的包名
可以查看这个rpm包是不是被修改过

文件提取:如果做了误删除,那么就可以从rpm里面提取出来
1 将文件转化成cpio文件 2cpio提取
rpm2cpio

例如,我现在把ls命令给删除了,实际上是给剪切走了

1 查询ls属于哪个rpm
[root@localhost Packages]# rpm -qf /bin/ls
coreutils-8.4-31.el6_5.2.x86_64

2 剪切走ls
[root@localhost Packages]# mv /bin/ls /tmp
[root@localhost Packages]#
[root@localhost Packages]# ls
-bash: /bin/ls: 没有那个文件或目录


3 [root@localhost Packages]# rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-31.el6.x86_64.rpm | cpio -idv ./bin/ls

4 cp /root/bin/ls /bin

 

3 yum在线管理
yum 不是一定需要上网,本地的光盘源也是可以的
1 ip地址配置和网络yum 源
setup 配置好地址
然后进入配置文件
[root@localhost Packages]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
修改onboot =yes
然后 service network restart

网络yum源
默认:centos的官方网站的yum源
[root@localhost Packages]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-Media.repo
CentOS-Debuginfo.repo CentOS-Vault.rep

这就是默认的yum源,里面有默认的4个yum源

yum在线安装

1 查询可安装的文件 yum list
2 查找 yum search
3 安装 yum -y install httpd yum -y install gcc
4 升级 yum -y update gcc
如果 yum -y update (慎重!!升级系统)
5 卸载 yum -y remove gcc

 

yum 组安装,也就是安装系统功能
查看可安装的系统功能 yum grouplist
安装系统功能 yum groupinstall "软件名" 注意:最好是在虚拟机上安装,不然中文没法装
卸载 yum groupremove "软件包"

 

源码包安装

安装之前:概念的区别
安装之后的区别:安装位置的区别

rpm包:默认的位置 如何查位置:rpm -ql httpd
1 /etc 配置文件安装目录
2 /ust/bin 可执行的命令安装目录
3 /usr/lib 程序所使用的函数库保存位置
4 /usr/share/doc 基本的软件使用手册保存位置
5 /usr/share/man 帮助文件保存位置


源码包的安装位置:
一般是是/usr/local/软件名/


由于安装位置的不同,带来的管理方法的不同
rpm 包的服务可以用系统命令service 来管理
/etc/rc.d/init.d/httpd start 所有的系统都可以用
service httpd start 红帽系列专用


而源码包只能通过绝对路径来
/usr/local/apache2/bin/apachectl start


安装源码包
1 安装 gcc 编译器
2 下载源码包 以apache为例
http://mirror.bit.edu.cn/apache/httpd/

3 源码包保存位置:/usr/local/src/
软件安装位置: /usr/local/
如何确定安装过程报错:1 停止 2 出现错误提示


4 下载源码包到windows ,然后通过ftp 上传到linux /root 目录下就可以
5 然后解压 tar -zxvf 源码包
6 看下多大 do -sh 解压后的文件

7 进入解压缩目录
1 查看./config - - help 帮助目录
2 设置安装路径
./config - - prefix =/usr/loval/apache2

3 make编译
直接 make
如果出错:make clean


4 male install

如果卸载
直接删除文件

 


linux软件包管理

标签:

原文地址:http://www.cnblogs.com/backfish/p/4343808.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!