包管理与源是Linux学习中不可缺少的部份,同时也令很多初学者倍感困惑。本文整理了1些Linux相干的包管理与源方面的材料,希望对大家有帮助。
Linux中的软件包主要分为RPM软件包及DEB软件包两类,其中Redhat Linux等系统使用RPM软件包,Ubuntu Linux等系统使用Deb软件包。本文主要侧重介绍Ubuntu Linux的包管理方法。
首先要介绍几个概念和理解:
(1)安装就是把软件送到1个特定的位置,并且配置好其周边环境,使之能够正确运行。
(2)Deb包就是1个紧缩起来的可以安装的软件包。
(3)源是提供软件下载的站点,不同的源提供的软件可能不同。
(4)Ubuntu建立本地数据库,记录软件包之间的依赖关系。
(5)软件包管理工具的作用是提供在操作系统中安装、升级、卸载需要的软件的方法,并提供对系统中所有软件状态信息的查询。
如果能够理解上面的几点,就能够对包管理有1个基本的认识。Ubuntu中使用的是Deb软件包,在/etc/apt/sources.list配置文件中保存了提供deb软件包下载的站点,即源。由于该软件包间可能存在依赖关系,1旦安装的软件包多至1定数量,手工的安装与卸载将会非常繁琐且容易出错。为了解决这1问题,出现了很多高级软件包管理工具,如apt-get、aptitude、yum、synaptic等。以apt-get为例,该工具会建立本地数据库,记录软件包之间的依赖关系。当要安装某软件包时,会从源中搜索并下载到本地,同时还会检查该软件包依赖的所有其他包,并安装系统中还没有安装的依赖包;删除则采取类似的方式,从而简化了包管理进程。值得注意的是,这些高级包管理工具终究都是调用dpkg来完成的。
另外,要介绍几个包管理中经常使用到的命令,详细用于可以使用man command或command --help了解并学习。
(1)dpkg
是“debian package”的简写,是Debian软件包管理器的基础。
(2)apt-get
用于从远程获得软件包和处理复杂的软件包关系。
apt-get update:在修改源后,需要运行该命令,另外也需要定期运行该命令以确保本机的软件包列表是最新的。
apt-get upgrade:用以更新软件包
apt-get dist-upgrade:将系统升级到新版本。
apt-get source:下载源代码。
(3)apt-cache
apt-cache search string:在软件包列表中搜索字符串
apt-cache showpkg:显示软件包信息
(4)alien
可完成rpm软件包与deb软件包之间的转换。
alien -to-deb:转换为deb软件包
alien -to-rpm:转换为rpm软件包
最后,还有介绍几种初学者常遇到问题的解决方案。
(1)怎样安装tar文件?
1般情况下,这里面保存了软件的源代码,需要先用tar命令解压并进行编译,最后安装。
解压根据文件打包格式使用相应命令,然落后入到解压出的目录,
1般顺次履行./configure
make
sudo make install
便可完成安装。
(2)怎样安装下载好的deb软件包?
sudo dpkg -i package.deb或
sudo alien -i package.deb
(3)怎样在Ubuntu中安装rpm软件包?
首先,要使用alien将rpm包转换为deb包。
sudo alien --to-deb package.rpm
接着依照deb软件包安装方式进行安装。
(4)怎样查询本机已安装的软件包?
使用dpkg -l | more命令