Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1103699
  • 博文数量: 159
  • 博客积分: 3063
  • 博客等级: 中校
  • 技术积分: 2703
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-01 01:51
文章分类

全部博文(159)

文章存档

2013年(48)

2012年(111)

分类: LINUX

2012-04-15 03:18:23

现在一般是使用 RPM  YUM    APT   来管理软件包。

软件包常用的也就是,查找软件包,安装,卸载,升级。这几个功能。

RPM 比较经典,但是也比较麻烦,尤其是在软件依赖关系上面,有的时候你会纠结死的。

你是新手的话就先使用图形化的管理器来安装,卸载看看。

现在不少Linux都具有图形化的软件管理器界面   比如新立得软件包管理器。

首先是RPM

RPM安装软件包:

-a 查询所有已安装的信息

-f 查询文件所属软件包

-p 查询软件包

-i 显示软件包信息

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

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

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

-q 查询软件是否安装

rpm -qlrpm-qlp   软件包安装了哪些文件

-qi -qip 查询软件包的信息

rpm -qf 查询文件隶属的软件包

rpm -qd 查询软件包帮助文档

rpm -qc 查询软件包配置文件

rpm -i sudo

 

挂载光盘:

习惯把移动设备放在/mnt目录下

mkdir  /mnt/cdrom    mkdir 创建目录

mount  /dev/cdrom/  mnt/cdrom   挂载光盘

Tab键自动补全命令

cd 进入目录 CentOS

ls | grep sudo

查看关于sudo的软件包

rpm -q sudo  查看软件是否安装完成

rpm -qa | grep samba   查看跟samba相关的软件包

rpm -ivh sudo-1.7.2p1-5.e15.i386.rpm

安装软件

rpm -ivh --excludedocs  +软件包名  不安装软件包中的文档文件                     一般不适用

rpm -ivh --prefix PATH  +软件包名   将软件包安装到PATH指定目录下        一般不是用

rpm -ivh --test +软件包名   只对安装进行测试,并不是件安装    (一般用于测试软件包的依赖性)

rpm -ivh --replacepkgs +软件包名   覆盖安装

rpm -ivh --replacefiles +软件名   覆盖安装且无视错误信息

软件包之间的依赖关系:

安装中出现错误提示:

例如:

# rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm

   failed dependencies:

   sudo is needed by bark-3.2-l1;

强制安装使用 --nodeps选项。

升级

# rpm -Uvh +软件包名

Debian系列的linux安装软件包就方便得多

呃 我主要熟悉的是Ubuntu

1.apt系统使用一个数据库列表来记录系统已经安装了哪些软件,哪些没有安装,哪些软件可以通过apt系统自动安装

apt-get通过分析这个数据库来决定如何安装软件

应该经常运行#apt-get update来更新此数据库

2.安装软件包

# apt-get install packagename

apt-get的参数

-h 帮助信息

-d 仅仅下载该软件包,并不安装

-f 强制安装

-s 无行为。执行命令仿真

-y 对安装过程中询问yesno都保持yes

-u 显示一个列表,以及升级包

软件包会被下载到/var/cache/apt/archives 稍后进行安装

如果一个软件包坏了,或者你只是想重新安装一个软件的最新版本 ,可以使用--reinstall参数,如

# apt-get --reinstall install tomcat6

在安装软件时,可以用apt-get install package/distributionapt-get install

package=version来指定软件的安装版本,如

# apt-get install nautilus/tomcat6

3.移除软件包

apt-get remove package

# apt-get remove ruby

这样就会移除rubyl以及对ruby有依赖性的软件包,无法使用apt系统仅仅移除此软件,而保留对它有依赖性的软件包。

apt-get remove package并不能移除这些软件的配置文件

# apt-get purge  ruby(这个很常用)

就可以一块把他的配置文件移除

4.升级软件包

apt-get update    更新软件包的数据库列表

apt-get upgrade    执行升级

5.升级到一个新的版本

# apt-get -u dist-upgrade

6.移除无用的软件包

当安装软件时,软件包会被先下载到/var/cache/apt/archives/目录下,然后安装

。这样这个目录所占空间会越来越大,幸运的是apt提供了相应的管理工具

apt-get clean删除/var/cache/apt/archives/

/var/cache/apt/archives/partial/目录下所有包(锁定的除外)

apt-get autoclean仅删除不再能被下载的包

1.使用YUM查找软件包

命令:yum search

2.列出所有可安装的软件包

命令:yum list

3.列出所有可更新的软件包

命令:yum list updates

4.列出所有已安装的软件包

命令:yum list installed

5.列出所有已安装但不在 Yum Repository 内的软件包

命令:yum list extras

6.列出所指定的软件包

命令:yum list

7.使用YUM获取软件包信息

命令:yum info

8.列出所有软件包的信息

命令:yum info

9.列出所有可更新的软件包信息

命令:yum info updates

10.列出所有已安装的软件包信息

命令:yum info installed

11.列出所有已安装但不在 Yum Repository 内的软件包信息

命令:yum info extras

12.列出软件包提供哪些文件

命令:yum provides

5.清除YUM缓存

yum 会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum

clean指令进行清除,更精确的用法是yum clean headers清除headeryum clean

packages清除下载的rpm包,yum clean all 清除所有

1.清除缓存目录(/var/cache/yum)下的软件包

命令:yum clean packages

2.清除缓存目录(/var/cache/yum)下的 headers

命令:yum clean headers

3.清除缓存目录(/var/cache/yum)下旧的 headers

命令:yum clean oldheaders

4.清除缓存目录(/var/cache/yum)下的软件包及旧的headers

命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders)

阅读(13544) | 评论(0) | 转发(3) |
给主人留下些什么吧!~~