Linux 软件包管理

RedHat系列的软件包管理

内容分为以下三个部分:二进制包的管理,源代码包的管理,脚本安装

二进制包的管理
1.1概念

       主要有RPM和YUM这两种包管理。两种包管理各有用处,其中主要区别是:YUM使用简单但需要联网,YUM会去网上的YUM包源去获取所需要的软件包。而RPM的需要的操作精度比较细,需要我们做的事情比较多。

 
1.1.1RPM

主要的操作

1)卸载

rpm  –e  [--nodeps]  sudo

[解析]  需要注意的是在卸载软件包的时候若和其它包有依赖关系,可以用--nodeps来强制卸载

2)安装

rpm  –i[v|h]  [--excludedocs |prefix |test |replace[pkgs |files] |nodeps]  sudo

[解析]  i为安装,v为显示详细信息,h为hash是进度信息

--excludedocs 不安装软件包的文档文件

--prefix PATH 将软件包安装到指定目录

--test 只对安装进行测试,并不实际安装(通常用来看下需要的依赖项)

--replace[pkgs|files] 当出现冲突时或想强制覆盖时可以使用

--nodeps 不考虑依赖关系,强制安装。(这样比较麻烦,而且通常无法使用。这也是使用RPM的一些不方便的地方,而YUM则解决了这个问题,在安装的时候会自动将所需要的都一起安装了)

【相关内容:】安装有时候会使用光驱安装,这里涉及到挂载点的概念。

在linux系统中,所有的设备都被看作文件,所以光驱也被看作文件。而要让系统不能直接访问这个文件,这时需要一个挂载点(通常是一个空文件,仅仅提供一个渠道,来连接系统和设备),然后系统就可以通过访问挂载点来访问光驱设备了。

挂载光驱的具体操作:

mkdir /mnt/cdrom 生成一个挂载点目录

mount /dev/cdrom /mnt/cdrom 讲dev中的cdrom挂载到挂载点上

3)查询

rpm  –q[a |f |p |i |l |d |c]  sudo

[解析]

-a  查询所有已安装的软件包

-f  查询 文件所属软件包

-p  查询软件包(通常用来看下还未安装的软件包)

-i  显示软件包信息

-l  显示软件包中的文件列表

-d  显示被标注为文档的文件列表

-c  显示被标注为配置文件的文件列表

[tips]  通常可以配合管道 | more [grep sudo] 来使用,使得结果更易读。

4)校验

rpm  -V  sudo

结果解析:S.5.L.T….

S 为文件大小

5 为文件的md5校验值

L 链接文件

T 文件创建时间

D 设备文件

U 文件的用户

G 文件的用户组

M 文件的权限

5)软件包文件提取

解压指定文件到当前目录

rpm2cpio   /../...rpm |cpio –idv   ./../..

 
1.1.2YUM

需要联网,操作一RPM类似,只是会自动安装依赖项。

主要操作:

1)安装 yum  install

2) 检测升级 yum  check-update

3) 升级 yum  update

4) 软件包查询 yum  list

5) 软件包信息 yum  info

6) 卸载 yum  remove

7) 帮助 yum  -help、man  yum

 

1.2实例


1.2.1从光盘中提取二进制包并恢复丢失的文件(用inittab做实验)

先建立一个挂载点并挂载

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

创建一个备份文档并删除inittab

rm /etc/inittab

通过挂载点读取光盘中的二进制包到当前目录

rpm2cpio /mnt/cdrom/CentOS/initscripts-8.45.30-2.e15

复制恢复被删除的文件
cp etc/inittab/ /etc/inittab


源代码包的管理
2.1源代码包的安装

1)解压解包

tar  -xzvf  源代码包

[解析]

x为解包、z为解压(仅适合gzip,bz2则先解包再bunzip解压)、v显示过程、f指定被解压包名

2)配置

进入解压后的目录,用 ./configure [—prefix=/usr/local/filname] 来配置,这个过程主要是收集系统信息、设置安装目录等(卸载的时候只需将这个目录删除则可)

3)编译

make

4)安装

make  install

脚本方式安装

1)解包解压

2)进入解压后的目录,查看README (vi READEME)获得安装方法

3)运行第二步获取的信息,通常是运行一个安装shell脚本(.sh)

Debian系列软件包管理

APT包管理

搜索软件包: apt-cache search
软件包信息: apt-cache show
安装:apt-get install (reinatall[覆盖安装]、 -f[修复安装])
删除: apt-get remove (outoremove、--purge)
更新软件源:apt-get update
更新已安装包: apt-get upgrade


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值