dpkg & rpm & apt & yum 的常用指令 +linux 各种解压缩方法
Linux系统的软件包管理工具介绍
Linux系统的软件包管理工具介绍在Linux系统中,软件包管理工具扮演着至关重要的角色,它们能够帮助我们方便地安装、更新、卸载和管理系统中的软件包。
本文将为您介绍几种常见的Linux系统软件包管理工具。
I. dpkgdpkg是Debian系统中的软件包管理工具,它负责安装、更新、卸载和管理软件包。
通过使用dpkg,您可以轻松地将软件包安装到系统中,并可以使用dpkg的命令参数来管理软件包,如dpkg -i安装软件包、dpkg -r卸载软件包等。
II. APTAPT(Advanced Package Tool)是Debian系统中的高级软件包管理工具,它使用dpkg来处理软件包。
APT提供了一组命令,如apt-get、apt-cache等,这些命令能够实现自动处理软件包的依赖关系、自动下载并安装相关的软件包等功能。
例如,通过使用apt-get install命令,您可以指定要安装的软件包名称,APT将自动解决软件包的依赖关系,并下载并安装相关的软件包。
III. RPMRPM(Red Hat Package Manager)是Red Hat、CentOS等Linux发行版中的软件包管理工具。
RPM用于安装、升级、查询和卸载软件包,并提供了一组命令行工具,如rpm、yum等。
使用rpm命令,您可以通过rpm -i安装软件包、rpm -e卸载软件包等来管理软件包。
而yum命令则是RPM包管理器的高级工具,它可以自动解决软件包的依赖关系,从软件源下载并安装相关的软件包。
IV. ZypperZypper是openSUSE和SUSE Linux Enterprise发行版中的软件包管理工具。
它是基于RPM的,类似于yum。
Zypper提供了一组命令,如zypper install、zypper remove等,用于安装、升级、卸载软件包。
Zypper还具备一些特殊功能,如能够处理滚动更新(即系统不需要重启即可更新)和处理软件仓库中的软件包等。
dpkg用法详解
dpkg⽤法详解dpkg是⼀个Debian的⼀个命令⾏⼯具,它可以⽤来安装、删除、构建和管理Debian的软件包。
下⾯是它的⼀些命令解释:1)安装软件命令⾏:dpkg -i <.deb file name>⽰例:dpkg -i avg71flm_r28-1_i386.deb2)安装⼀个⽬录下⾯所有的软件包命令⾏:dpkg -R⽰例:dpkg -R /usr/local/src3)释放软件包,但是不进⾏配置命令⾏:dpkg –unpack package_file 如果和-R⼀起使⽤,参数可以是⼀个⽬录⽰例:dpkg –unpack avg71flm_r28-1_i386.deb4)重新配置和释放软件包命令⾏:dpkg –configure package_file如果和-a⼀起使⽤,将配置所有没有配置的软件包⽰例:dpkg –configure avg71flm_r28-1_i386.deb5)删除软件包(保留其配置信息)命令⾏:dpkg -r⽰例:dpkg -r avg71flm6)替代软件包的信息命令⾏:dpkg –update-avail <Packages-file>7)合并软件包信息dpkg –merge-avail <Packages-file>8)从软件包⾥⾯读取软件的信息命令⾏:dpkg -A package_file9)删除⼀个包(包括配置信息)命令⾏:dpkg -P10)丢失所有的Uninstall的软件包信息命令⾏:dpkg –forget-old-unavail11)删除软件包的Avaliable信息命令⾏:dpkg –clear-avail12)查找只有部分安装的软件包信息命令⾏:dpkg -C13)⽐较同⼀个包的不同版本之间的差别命令⾏:dpkg –compare-versions ver1 op ver214)显⽰帮助信息命令⾏:dpkg –help15)显⽰dpkg的Licence命令⾏:dpkg –licence (or) dpkg –license16)显⽰dpkg的版本号命令⾏:dpkg –version17)建⽴⼀个deb⽂件命令⾏:dpkg -b direc×y [filename]18)显⽰⼀个Deb⽂件的⽬录命令⾏:dpkg -c filename19)显⽰⼀个Deb的说明命令⾏:dpkg -I filename [control-file]20)搜索Deb包命令⾏:dpkg -l package-name-pattern⽰例:dpkg -I vim21)显⽰所有已经安装的Deb包,同时显⽰版本号以及简短说明命令⾏:dpkg -l22)报告指定包的状态信息命令⾏:dpkg -s package-name⽰例:dpkg -s ssh23)显⽰⼀个包安装到系统⾥⾯的⽂件⽬录信息命令⾏:dpkg -L package-Name⽰例:dpkg -L apache224)搜索指定包⾥⾯的⽂件(模糊查询)命令⾏:dpkg -S filename-search-pattern25)显⽰包的具体信息命令⾏:dpkg -p package-name⽰例:dpkg -p cacti最后:1、很多⼈抱怨⽤了Ubuntu或者Debian以后,不知道⾃⼰的软件给安装到什么地⽅了。
sudo apt-get 和dpkg命令大全
sudo apt-get 和dpkg命令大全今天开始学习Linux了,从网上搜了些命令,现转载下来,便于以后查询。
-------------------------------------一、APT的使用(Ubuntu Linux软件包管理工具一)apt-cache search # ------(package 搜索包)apt-cache show #------(package 获取包的相关信息,如说明、大小、版本等)sudo apt-get install # ------(package 安装包)sudo apt-get install # -----(package - - reinstall 重新安装包)sudo apt-get -f install # -----(强制安装?#"-f = --fix-missing"当是修复安装吧...)sudo apt-get remove #-----(package 删除包)sudo apt-get remove - - purge # ------(package 删除包,包括删除配置文件等)sudo apt-get autoremove --purge # ----(package 删除包及其依赖的软件包+配置文件等(只对6.10有效,强烈推荐))sudo apt-get update #------更新源sudo apt-get upgrade #------更新已安装的包sudo apt-get dist-upgrade # ---------升级系统sudo apt-get dselect-upgrade #------使用 dselect 升级apt-cache depends #-------(package 了解使用依赖)apt-cache rdepends # ------(package 了解某个具体的依赖?#当是查看该包被哪些包依赖吧...)sudo apt-get build-dep # ------(package 安装相关的编译环境)apt-get source #------(package 下载该包的源代码)sudo apt-get clean && sudo apt-get autoclean # --------清理下载文件的存档 && 只清理过时的包sudo apt-get check #-------检查是否有损坏的依赖apt-get install 的用法apt-get install <package>下载 <package> 以及所有倚赖的包裹,同时进行包裹的安装或升级.如果某个包裹被设置了 hold (停止标志,就会被搁在一边(即不会被升级).更多 hold 细节请看下面.apt-get remove [--purge] <package>移除 <package> 以及任何倚赖这个包裹的其它包裹.--purge 指明这个包裹应该被完全清除 (purged) ,更多信息请看 dpkg -P .apt-get update升级来自 Debian 镜像的包裹列表,如果你想安装当天的任何软件,至少每天运行一次,而且每次修改了/etc/apt/sources.list 后,必须执行.apt-get upgrade [-u]升级所以已经安装的包裹为最新可用版本.不会安装新的或移除老的包裹.如果一个包改变了倚赖关系而需要安装一个新的包裹,那么它将不会被升级,而是标志为 hold .apt-get update 不会升级被标志为 hold 的包裹(这个也就是 hold 的意思).请看下文如何手动设置包裹为 hold .我建议同时使用 '-u' 选项,因为这样你就能看到哪些包裹将会被升级.apt-get dist-upgrade [-u]和 apt-get upgrade 类似,除了 dist-upgrade 会安装和移除包裹来满足倚赖关系.因此具有一定的危险性. apt-cache search <pattern>搜索满足 <pattern> 的包裹和描述.apt-cache show <package>显示 <package> 的完整的描述.apt-cache showpkg <package>显示 <package> 许多细节,以及和其它包裹的关系.dselect, console-apt, aptitude, gnome-apt,是APT 的几个图形前端(其中一些在使用前得先安装).这里dselect 无疑是最强大的,也是最古老,最难驾驭.-------------------------------------二、 DPKG的用法(Ubuntu Linux软件包管理工具二)dpkg -i <package.deb>安装一个 Debian 包裹文件;如你手动下载的文件.dpkg -c <package.deb>列出 <package.deb> 的内容.dpkg -I <package.deb>从 <package.deb> 中提取包裹信息.dpkg -r <package>移除一个已安装的包裹.dpkg -P <package>完全清除一个已安装的包裹.和 remove 不同的是, remove 只是删掉数据和可执行文件, purge 另外还删除所有的配制文件.dpkg -L <package>列出 <package> 安装的所有文件清单.同时请看 dpkg -c 来检查一个 .deb 文件的内容.dpkg -s <package>显示已安装包裹的信息.同时请看 apt-cache 显示 Debian 存档中的包裹信息,以及 dpkg -I 来显示从一个.deb 文件中提取的包裹信息.dpkg-reconfigure <package>重新配制一个已经安装的包裹,如果它使用的是 debconf (debconf 为包裹安装提供了一个统一的配制界面).你能够重新配制 debconf 它本身,如你想改变它的前端或提问的优先权.例如,重新配制 debconf ,使用一个 dialog 前端,简单运行:dpkg-reconfigure --frontend=dialog debconf (如果你安装时选错了,这里可以改回来哟echo "<package> hold" | dpkg --set-selections设置 <package> 的状态为 hlod (命令行方式)dpkg --get-selections "<package>"取的 <package> 的当前状态 (命令行方式)支持通配符,如:Debian:~# dpkg --get-selections *wine*备注:-------------------------------------例如: 大家现在用的都是 gaim-0.58 + QQ-plugin,为了防止 gaim 被升级,我们可以采用如下方法:方法一:Debian:~# echo "gaim hold" | dpkg --set-selections然后用下面命令检查一下:Debian:~# dpkg --get-selections "gaim"gaim hold现在的状态标志是 hold,就不能被升级了.如果想恢复怎么办呢?Debian:~# echo "gaim install" | dpkg --set-selectionsDebian:~# dpkg --get-selections "gaim"gaim install这时状态标志又被重置为 install,可以继续升级了.同志们会问,哪个这些状态标志都写在哪个文件中呢?在 /var/lib/dpkg/status 里,你也可以通过修改这个文件实现 hold.有时你会发现有的软件状态标志是 purge,不要奇怪.如:事先已经安装了 amsn, 然后把它卸了.apt-get remove --purge amsn那么状态标志就从 install 变成 purge.方法二:在/etc/apt 下手动建一个 preferences 文件内容:Package: gaimPin: version 0.58*保存更详细内容请看:/bbs/showthread....&threadid=22601dpkg -S <file>在包裹数据库中查找 <file>,并告诉你哪个包裹包含了这个文件.(注:查找的是事先已经安装的包裹)从源码建立deb packagesapt-get source [-b] <package>下载一个源码的包并解开。
ubuntu源码编译,dpkg,apt安装原理及简单使用
ubuntu源码编译,dpkg,apt安装原理及简单使用1. 源码编译(源码安装通常安装比较麻烦,特别是解决依赖经常会出现问题,但是通常编译可以获得该软件的最新版本)•源码:程序代码,写给人开的程序语言,但机器无法识别,所以无法执行;•编译程序:将程序代码转译成为机器能看得懂的语言,相当与翻译器;•可执行文件:经过编译程序变成二进制程序后机器可以识别的可执行二进制文件;而在整个编译的过程,又需要设置软件安装路径,确定链接库位置,检测库依赖关系是否满足,判断目标系统上是否有合适的编译环境等复杂的过程。
通常软件开发商都会写这样一个检测程序,来检测用户的操作环境,以及该操作环境是否满足开发商所需的其他功能,替我们完成上诉的复杂过程。
检测完毕后,就会主动新建一个Makefile的规则文件,而这个检测程序的名字通常为configure(下载完软件源码会在源码文件中找到)。
获取源码文件,解压后,cd进入源码文件目录,找到configure 程序,使用./configure建立Makefile文件(必须保证Makefile文件正确建立,如果建立不成功的话,查看错误,并依据错误提示,解决后再次建立Makefile文件,直到正确建立Makefile文件)成功生成 Makefile后我们只需要使用sudo make命令进行编译编译成功后,使用sudo make install进行安装软件不过源码安装的话,尽量将源码文件放在一个能找到的特定位置,一般的话Makefile也会提供uninstall,这样的话,当我们需要卸载软件时,可以到软件包中输入sudo make uninstall卸载软件。
也可以使用 ./configure --prefix='File Path'命令,将软件安装在File Path位置,这样可以方便删除。
关于configure的更多参数可以查看软件包中列如ReadMe文件或INSTALL文件,一般有参数设置说明。
软件包安装RPM-yum和dpkg-apt
RPM是Redhat开发的软件包管理工具,YUM(yum)是Redhat的rpm在线安装版本,SUSE是yast。
dpkg是Debian的软件包管理软件,APT(apt-get)是其在线升级版本。
SRPM包内含源代码,其扩展名为xxxx.src.rpm,需先编译成rpm文件,再安装。
RPM文件名:硬件平台含义:pam-x.x.rpm 与 pam-devel-x.x.rpm分别是一般使用和开发版本,一般使用版本中通常没有包含头文件。
CentOS将软件放在YUM服务器上,然后分析软件的相依属性,将软件内的记录资讯写下来 (header)。
然后再将这些资讯分析后生成软件相关性的清单列表。
这些清单列表与软件所在的位置称为容器 (repository)。
安装软件的时候,用户会连接到yum服务器,下载清单列表,将清单列表的数据和本地rpm数据库中已经安装的软件比对,就能一次安装所有具有相依属性的软件。
RPM安装先检查系统环境和软件相依属性,然后进行软件安装,安装完后,程序相关的信息写在/var/lib/rpm下。
默认的安装文件目录:要以root身份运行rpm命令:rpm -i rp-pppoe-3.5-32.1.i386.rpmrpm -ivh rp-pppoe-3.5-32.1.i386.rpm可以查看安装进度rpm -ivh /path/pkgname.rpm安装在线rpm包通过光盘安装rpm包:升级RPM安装:查询某个RPM包是否已经安装:[root@www ~]# rpm -qi logrotate 列出已经安装的logrotate的详细信息,版本,安装日期等等。
[root@www ~]# rpm -qc logrotate 列出该软件的配置文件[root@www ~]# rpm -qd logrotate 列出该软件的说明文件[root@www ~]# rpm -qf /bin/sh 列出该文件属于哪一个安装的rpm。
linux debconf命令的用法
Debconf是一个用于处理Debian发行版软件包的工具,它可以通过命令行界面进行安装、升级和移除软件包。
Debconf提供了多个命令供用户操作,以下是一些常用的Debconf命令及其用法:
1. dpkg命令:dpkg是Debian系统中的软件包管理工具,它可以通过命令行操作Debian软件包。
使用
dpkg命令可以安装、升级、卸载和管理软件包。
例如,要安装名为“package_name”的软件包,可以使用以下命令:
复制代码dpkg -i package_name.deb
2. apt命令:apt是Debian系统中的高级软件包管理工具,它可以通过命令行自动处理软件包的安装、升
级和移除。
apt命令可以自动处理软件包的依赖关系和版本管理,非常方便。
例如,要安装名为
“package_name”的软件包,可以使用以下命令:
复制代码apt install package_name
3. debconf命令:debconf是Debian系统中的配置工具,它可以自动配置和管理软件包的安装、升级和
移除。
debconf命令可以设置软件包的配置参数,例如默认选项、安装位置等。
例如,要设置软件包的默认选项,可以使用以下命令:
sql复制代码
debconf-set-selections "package_name"
以上是Debconf中常用的几个命令及其用法,它们可以帮助用户方便地管理Debian发行版的软件包。
dpkg命令
dpkg -l
3.移除已安装的deb包
dpkg -r
博客园 用户登录 代码改变世界 密码登录 短信登录 忘记登录用户名 忘记密码 记住我 登录 第三方登录/注册 没有账户,an Packager ”的简写。为 “Debian” 专门开发的套件管理系统,方便软件的安装、更新及移除。所有源自“Debian”的“Linux ”发 行版都使用 “dpkg”,例如 “Ubuntu”、“Knoppix ”等。 dpkg是Debian软件包管理器的基础,它被伊恩·默多克创建于1993年。dpkg与RPM十分相似,同样被用于安装、卸载和供给.deb软件包相 关的信息。 dpkg本身是一个底层的工具。上层的工具,如APT,被用于从远程获取软件包以及处理复杂的软件包关系。 “dpkg”是“Debian Package”的 简写。
linux dbkg 参数
linux dbkg 参数英文回答:The "dpkg" command in Linux is used for managing packages on Debian-based systems. It is a low-level package manager that allows you to install, remove, and configure software packages. The "dpkg" command can be used with various parameters to perform different tasks. Here are some commonly used parameters:1. "-i" or "--install": This parameter is used toinstall a package. For example, to install a package named "example.deb", you would run the command "dpkg -iexample.deb".2. "-r" or "--remove": This parameter is used to removea package. For example, to remove a package named "example", you would run the command "dpkg -r example".3. "-l" or "--list": This parameter is used to list allinstalled packages. For example, to list all installed packages, you would run the command "dpkg -l".4. "-s" or "--status": This parameter is used to display the status of a package. For example, to display the status of a package named "example", you would run the command "dpkg -s example".5. "-p" or "--print-avail": This parameter is used to display the information about an available package. For example, to display information about a package named "example", you would run the command "dpkg -p example".6. "-C" or "--audit": This parameter is used to check the integrity of installed packages. For example, to check the integrity of installed packages, you would run the command "dpkg -C".7. "-L" or "--listfiles": This parameter is used tolist the files installed by a package. For example, to list the files installed by a package named "example", you would run the command "dpkg -L example".These are just a few examples of the parameters thatcan be used with the "dpkg" command. The "dpkg" command provides a wide range of options for managing packages on a Debian-based system.中文回答:在Linux中,"dpkg"命令用于管理基于Debian的系统上的软件包。
dpkg参数
dpkg参数
dpkg是Debian和Ubuntu系统上用于管理已安装软件包的命令行工具,以下是一些常用的dpkg参数:
1. -i:用于手动安装软件包。
2. -r:用于删除一个已安装的包。
3. -P:用于完全清除一个已安装的包,包括删除所有的配置文件。
4. -L:用于列出指定软件包安装的所有文件清单。
5. -s:用于显示已安装包裹的信息。
6. -S:用于查询系统中某个文件属于哪个软件包。
7. -I:用于查询.deb包的详细信息。
8. -l:用于列出当前系统中所有的包。
9. --info:用于列出软件包解包后的包名称。
10. --reconfigure:用于重新配置一个已经安装的包,如果它使用的是debconf(debconf为包安装提供了一个统一的配置界面)。
以上信息仅供参考,更多参数建议查阅dpkg的官方文档或手册页。
dpkg purge用法
dpkg purge用法
dpkg purge命令是用于彻底删除已安装软件包及其配置文件的工具。
当我们使用dpkg -r或apt remove命令删除软件包时,它会保留软件包的配置文件,而dpkg purge命令会将软件包及其配置文件全部删除。
要使用dpkg purge命令,你需要在终端中以root权限或者使用sudo命令来执行。
命令的基本语法如下:
sudo dpkg --purge <软件包名称>。
在这个命令中,你需要将<软件包名称>替换为你想要彻底删除的软件包的实际名称。
当你执行dpkg purge命令时,它会首先删除软件包的文件,然后再删除软件包的配置文件。
这样可以确保软件包及其相关文件完全从系统中移除。
需要注意的是,使用dpkg purge命令可能会导致数据丢失,因此在执行之前,请确保你真的想要彻底删除这个软件包以及其配置
文件。
另外,dpkg purge命令并不会自动处理软件包的依赖关系,如
果你删除了一个软件包,可能会影响其他软件包的正常运行,因此
在使用dpkg purge命令时,要特别小心,确保你知道自己在做什么。
总之,dpkg purge命令是一个强大的工具,可以帮助你彻底清
理系统中不需要的软件包及其配置文件,但在使用时务必谨慎。
dpkg命令的用法
dpkg命令的⽤法dpkg 是Debian package的简写,为”Debian“ 操作系统专门开发的套件管理系统,⽤于软件的安装,更新和移除。
所有源⾃"Debian"的Linux的发⾏版都使⽤ dpkg, 例如"Ubuntu"阅读⽬录1.2.3.4.5.6.7.安装软件命令:dpkg -i <.deb file name>实例:dpkg -i ~/Download/mozybackup_i386.debmozybackup_i386.deb 是⼿动下载下来的包,如下图列出与该包先关联的⽂件命令:dpkg -L package安装完包后,可以⽤此命令查看软件安装到什么地⽅,实例:dpkg -L mozybackup显⽰包的版本命令:dpkg -l package实例:dpkg -l mozybackup移除软件(保留配置)命令:dpkg -r package实例:dpkg -r mozybackup移除软件(不保留配置)命令:dpkg -P package实例:dpkg -P mozybackup查找包的详细信息命令:dpkg -s package实例:dpkg -s mozybackup列出deb包的内容命令:dpkg -c package.deb 列出 deb 包的内容实例:dpkg -c mozybackupdpkg –unpack package.deb 解开 deb 包的内容dpkg -S keyword 搜索所属的包内容dpkg –configure package 配置包。
sudo apt-get和dpkg命令大全
sudo apt-get 和dpkg命令大全一、APT的使用(Ubuntu Linux软件包管理工具一)apt-cache search # ------(package 搜索包)apt-cache show #------(package 获取包的相关信息,如说明、大小、版本等)sudo apt-get install # ------(package 安装包)sudo apt-get install # -----(package - - reinstall 重新安装包)sudo apt-get -f install # -----(强制安装?#"-f = --fix-missing"当是修复安装吧...)sudo apt-get remove #-----(package 删除包)sudo apt-get remove --purge # ------(package 删除包,包括删除配置文件等)sudo apt-get autoremove --purge # ----(package 删除包及其依赖的软件包+配置文件等(只对6.10有效,强烈推荐))sudo apt-get update #------更新源sudo apt-get upgrade #------更新已安装的包sudo apt-get dist-upgrade # ---------升级系统sudo apt-get dselect-upgrade #------使用dselect 升级apt-cache depends #-------(package 了解使用依赖)apt-cache rdepends # ------(package 了解某个具体的依赖?#当是查看该包被哪些包依赖吧...) sudo apt-get build-dep # ------(package 安装相关的编译环境)apt-get source #------(package 下载该包的源代码)sudo apt-get clean && sudo apt-get autoclean # --------清理下载文件的存档&& 只清理过时的包sudo apt-get check #-------检查是否有损坏的依赖apt-get install 的用法apt-get install <package>下载<package> 以及所有倚赖的包裹,同时进行包裹的安装或升级.如果某个包裹被设置了hold (停止标志,就会被搁在一边(即不会被升级).更多hold 细节请看下面.apt-get remove [--purge] <package>移除<package> 以及任何倚赖这个包裹的其它包裹.--purge 指明这个包裹应该被完全清除(purged) ,更多信息请看dpkg -P .apt-get update升级来自Debian 镜像的包裹列表,如果你想安装当天的任何软件,至少每天运行一次,而且每次修改了/etc/apt/sources.list 后,必须执行.apt-get upgrade [-u]升级所以已经安装的包裹为最新可用版本.不会安装新的或移除老的包裹.如果一个包改变了倚赖关系而需要安装一个新的包裹,那么它将不会被升级,而是标志为hold .apt-get update 不会升级被标志为hold 的包裹(这个也就是hold 的意思).请看下文如何手动设置包裹为hold .我建议同时使用'-u' 选项,因为这样你就能看到哪些包裹将会被升级.apt-get dist-upgrade [-u]和apt-get upgrade 类似,除了dist-upgrade 会安装和移除包裹来满足倚赖关系.因此具有一定的危险性.apt-cache search <pattern>搜索满足<pattern> 的包裹和描述.apt-cache show <package>显示<package> 的完整的描述.apt-cache showpkg <package>显示<package> 许多细节,以及和其它包裹的关系.dselect, console-apt, aptitude, gnome-apt,是APT 的几个图形前端(其中一些在使用前得先安装).这里dselect 无疑是最强大的,也是最古老,最难驾驭.-------------------------------------二、DPKG的用法(Ubuntu Linux软件包管理工具二)dpkg -i <package.deb>安装一个Debian 包裹文件;如你手动下载的文件.dpkg -c <package.deb>列出<package.deb> 的内容.dpkg -I <package.deb>从<package.deb> 中提取包裹信息.dpkg -r <package>移除一个已安装的包裹.dpkg -P <package>完全清除一个已安装的包裹.和remove 不同的是, remove 只是删掉数据和可执行文件, purge 另外还删除所有的配制文件.dpkg -L <package>列出<package> 安装的所有文件清单.同时请看dpkg -c 来检查一个.deb 文件的内容.dpkg -s <package>显示已安装包裹的信息.同时请看apt-cache 显示Debian 存档中的包裹信息,以及dpkg -I 来显示从一个.deb 文件中提取的包裹信息.dpkg-reconfigure <package>重新配制一个已经安装的包裹,如果它使用的是debconf (debconf 为包裹安装提供了一个统一的配制界面).你能够重新配制debconf 它本身,如你想改变它的前端或提问的优先权.例如,重新配制debconf ,使用一个dialog 前端,简单运行:dpkg-reconfigure --frontend=dialog debconf (如果你安装时选错了,这里可以改回来哟echo "<package> hold" | dpkg --set-selections设置<package> 的状态为hlod (命令行方式)dpkg --get-selections "<package>"取的<package> 的当前状态(命令行方式)支持通配符,如:Debian:~# dpkg --get-selections *wine*备注:-------------------------------------例如: 大家现在用的都是gaim-0.58 + QQ-plugin,为了防止gaim 被升级,我们可以采用如下方法:方法一:Debian:~# echo "gaim hold" | dpkg --set-selections然后用下面命令检查一下:Debian:~# dpkg --get-selections "gaim"gaim hold现在的状态标志是hold,就不能被升级了.如果想恢复怎么办呢?Debian:~# echo "gaim install" | dpkg --set-selectionsDebian:~# dpkg --get-selections "gaim"gaim install这时状态标志又被重置为install,可以继续升级了.同志们会问,哪个这些状态标志都写在哪个文件中呢?在/var/lib/dpkg/status 里,你也可以通过修改这个文件实现hold.有时你会发现有的软件状态标志是purge,不要奇怪.如:事先已经安装了amsn, 然后把它卸了.apt-get remove --purge amsn那么状态标志就从install 变成purge.方法二:在/etc/apt 下手动建一个preferences 文件内容:Package: gaimPin: version 0.58*保存更详细内容请看:/bbs/showthread....&threadid=22601dpkg -S <file>在包裹数据库中查找<file>,并告诉你哪个包裹包含了这个文件.(注:查找的是事先已经安装的包裹)从源码建立deb packagesapt-get source [-b] <package>下载一个源码的包并解开。
dpkg安装软件与Linux软件包依赖介绍
dpkg安装软件与Linux软件包依赖介绍linux软件包依赖关系:是一个软件的安装,需要安装另外一个软件进行支持的一种现象。
在windo ws也存在,但因为很多基础dll都被w indow s集成了,所以并不明显。
但在linu x 体系中,因为多个开源软件开发者并不成为一个体系,因而依赖关系向来比较复杂,解决依赖关系也是让很多人比较头疼的问题。
linux中,采用apt或者yum等常常能自动解决依赖关系,但往往我们也需要一些软件源里不存在的软件进行安装。
LD源自ub untu,而 ubuntu又基于de bian,故LD中,这些无法用a pt 来安装的软件我们一般用dp kg来安装,dpkg可以提示是否符合依赖关系,但不会自动解决。
“dpkg”是“Debian Packag e”的简写。
为“Debian”专门开发的套件管理系统,方便软件的安装、更新及移除。
安装这类软件,首先我们先看是否存在适用于ubu ntu 32位的de b包(比如virt ualbo x,我们不想装o se版,就可以去ht tp://www.virtua lbox.org/下载ubun tu的32位版,注意扩展名,文件名应为*.deb)。
下载后,用dpkg进行安装:dpkg -i packag e.deb ###安装包dpkg -r packag e ###删除包dpkg -P packag e ###删除包(包括配置文件)dpkg -L packag e ###列出与该包关联的文件dpkg -l packag e ###显示该包的版本dpkg --unpack packag e.deb ###解开deb 包的内容dpkg -S keywor d ###搜索所属的包内容dpkg -l ###列出当前已安装的包dpkg -c packag e.deb ###列出deb 包的内容dpkg --config ure packag e ###配置包dpkg-reconf igure packag e ###重新配制一个已经安装的包裹dpkg-reconf igure --fronte nd=dialog debcon f ###如果安装时选错了配置信息,这里可以改回来. dpkg --force-all --purge###有些软件很难卸载,而且还阻止了别的软件的应用,就可以用这个,不过有点冒险.更多选项可通过dpkg -h 查询,有些指令需要超级用户权限才能执行,故执行时,一般需在dpkg前加sudo(例:sudo dpkg -i packag e.deb)。
在Ubuntu中使用dpkg命令卸载软件的方法
在Ubuntu中使⽤dpkg命令卸载软件的⽅法
据百科描述,Ubuntu是基于Debian的Linux系统,⽽Debian系统的软件是使⽤APT和dpkg进⾏管理。
dpkg是"Debian Packager"的简写,是⼀个底层的软件包管理⼯具。
下⾯⼩编要为⼤家带来的是在Ubuntu中使⽤dpkg命令卸载软件的⽅法,⼀起去看看吧!
本经验以卸载Ubuntu下的办公软件libreoffice为例⼦,演⽰怎样使⽤dpkg进⾏卸载软件。
查看安装的软件
1、查看dpkg的帮助。
选择 dpkg -l来查看软件的状态。
选择 dpkg -P来卸载软件。
因为dpkg --remove只是删除安装的⽂件,但不删除配置⽂件。
⽽dpkg --purge则安装⽂件和配置⽂件都删除。
2、先列举出libreoffice相关的软件,看哪些是已经安装的。
命令为: dpkg -l libreoffice*
3、
其中,un, ii, rc等是Desired和Status
Desired=Unknown/Install/Remove/Purge/Hold
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
ii就是已经安装的软件, rc则表⽰已经被删除,但配置⽂件还存在。
4、
选择libreoffice-base-core包来演⽰卸载
卸载安装的软件
1、使⽤命令dpkg -P libreoffice-base-core进⾏卸载,如图。
dpkg -i
dpkg -i
dpkg是一种用于在Debian及其衍生版本(如Ubuntu)上管理软件包的工具。
-i选项是dpkg的一个常用选项,用于安装软件包。
它的完整命令格式为:
dpkg -i package_file.deb
其中package_file.deb 是要安装的软件包的文件名。
使用-i选项安装软件包时,dpkg会检查软件包的依赖关系,并确保所有依赖关系都已满足。
如果有必要,dpkg会自动安装需要的其他软件包。
在安装过程中,dpkg会自动执行软件包中包含的安装脚本,并将软件包的文件安装到系统的正确位置。
如果软件包已经安装,并且要求的版本与当前版本相同,则dpkg会忽略安装请求。
如果要求的版本更新,dpkg会执行升级操作。
当使用dpkg -i 安装软件包时,还有一些其他可用的选项,包括:
●-E 选项,用于在安装时跳过错误。
●-G 选项,用于在安装时跳过签名检查。
●--force-architecture 选项,用于强制安装与系统架构不匹配的软件包。
●--force-depends 选项,用于强制安装与依赖关系不匹配的软件包。
dpkg -i 选项是安装软件包的常用方法,但是在某些情况下,可能需要使用其他dpkg 选项来管理软件包。
比如,使用dpkg -r 选项可以删除已安装的软件包,使用dpkg -l 选项可以列出已安装的软件包。
通过使用dpkg 以及它的选项,可以在Debian 及其衍生版本中管理软件包,使用户能够轻松地安装、删除、更新软件。
dpkg锁定原理
dpkg锁定原理
dpkg 是Debian 和Ubuntu Linux 发行版中用于处理软件包的工具。
它负责安装、删除和管理 .deb 文件,这是Debian 和Ubuntu 软件包的标准格式。
有时,当你尝试安装、更新或删除软件包时,可能会遇到dpkg 被锁定的错误,这通常是因为另一个dpkg 进程已经在运行。
dpkg锁定的原理:
文件锁定:dpkg 使用文件锁定机制来防止并发操作。
当一个dpkg 进程正在处理软件包时,它会在/var/lib/dpkg/lock 创建一个锁定文件。
这个文件的存在告诉其他dpkg 进程或尝试使用dpkg 的命令,当前有一个操作正在进行,因此它们应该等待。
进程间通信:除了文件锁定外,dpkg 还使用进程间通信(IPC) 机制来确保并发操作的安全性。
这意味着,当多个进程尝试同时访问dpkg 时,它们之间会进行协调,以确保只有一个进程能够执行操作。
避免数据损坏:这种锁定机制的存在是为了避免数据损坏或不一致。
如果多个进程同时尝试修改软件包数据库或文件,可能会导致数据库损坏或文件冲突,从而使系统不稳定或软件无法正常工作。
解锁:一旦dpkg 进程完成其任务并正常退出,锁定文件(/var/lib/dpkg/lock) 会被自动删除,从而允许其他dpkg 进程或命令执行操作。
总之,dpkg 的锁定机制是为了确保在多个操作尝试同时访问或修改软件包时,只有一个操作能够成功执行,从而避免数据损坏和系统不稳定。
使用DPKG安装deb软件包
使用DPKG安装deb软件包Linux系统中,软件通常以源代码或者预编译包的形式提供。
软件源代码需要编译为二进制的机器代码才能够使用,安装比较耗时,不过您可以自行调节编译选项,决定需要的功能或组件,或者针对硬件平台作一些优化。
预编译的软件包,通常是由软件的发布者进行编译,您只要将软件拷贝到系统中就可以了。
考虑到预编译软件包的适用性,预编译软件包通常不会针对某种硬件平台优化。
它所包含的功能和组件也是通用的组合。
Ubuntu系统中,软件通常以deb 格式的包文件发布,它是一种预编译软件包。
deb包中除了包含已编译的软件,通常还包括软件的拷贝路径、对其它软件包的依赖关系纪录、比较通用的配置文件以及软件的描述、版本、作者、类别、占用空间等信息。
deb软件包命令遵行如下约定:soft_ver-rev_arch.debsoft软件包名称ver软件版本号revUbuntu修订版本号arch目标架构名称例如:azureus_2.4.0.2-0ubuntu2_all.deb您需要使用dpkg 命令来管理deb软件包:dpkg -i | --install xxx.deb 安装deb软件包dpkg -r | --remove xxx.deb 删除软件包dpkg -r -P | --purge xxx.deb 连同配置文件一起删除dpkg -I | -info xxx.deb 查看软件包信息dpkg -L xxx.deb 查看包内文件dpkg -l 查看系统中已安装软件包信息dpkg-reconfigure xxx 重新配置软件包有些时候,您使用dpkg 安装一个软件包,系统会提示您该软件包依赖其它软件包。
这时,您先安装其它软件包,直到满足依赖关系为止。
或者同时安装多个软件包dpkg -i aaa.deb bbb.deb ccc.deb。
dpkg-reconfigure 原理
dpkg-reconfigure是一个用于重新配置已安装软件包的Debian Linux命令。
它的工作原理是将用户与软件包初次安装后的配置问题分离开来,使用户能够再次对软件包进行配置。
当用户需要重新配置一个已安装的软件包时,他们可以通过dpkg-reconfigure命令传递该软件包的名称或标识符。
命令会提示用户进行一系列与软件包相关的配置问题,例如选择安装选项、设置参数值等。
用户可以根据自己的需求和偏好进行回答,从而对软件包进行个性化的配置。
dpkg-reconfigure命令在后台执行了一系列操作,包括查询软件包的安装信息、调用适当的配置脚本以及更新软件包的配置文件等。
通过这种方式,dpkg-reconfigure可以确保软件包在重新配置过程中保持正确的状态和行为,并且不会对其他软件包或系统产生不利的干扰或影响。
总之,dpkg-reconfigure的原理是通过提供一种交互式的配置界面,使用户能够重新定义已安装软件包的行为和设置,以满足其特定的需求和偏好。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Dpkg (Debian系):Ubuntu
RPM (Red Hat系):CentOS、Fedora
列出系统中已安装的所有套件
dkpg -l
rpm -qa
yum list installed
查询套件的状况(已安装)
dpkg -l [套件名称]
移除套件
dpkg -r [套件名称] (删除套件但不删除配置文件)
dpkg -P [套件名称] (删除套件也删除配置文件)
rpm -e [套件名称]
apt-get remove [套件名称] (删除套件但不删除配置文件)
apt-get remove --purge [套件名称] (删除套件也删除配置文件) yum remove [套件名称]
列出套件所安装的路径
dpkg -L [套件名称] (已经安装的套件)
dpkg -c [套件名称].deb (未安装的套件)
rpm -qpl [套件名称].rpm (未安装的套件)
查询档案是由哪一个套件的
dpkg -S 档案完整路径
rpm -qf档案完整路径
查询已安装套件的详细信息
dpkg -s [套件名称]
rpm -qi [套件名称]
查询套件文件的详细信息(还未安装的套件档)
dpkg -I [文件名].deb
rpm -qpi [文件名].rpm
安装套件
dpkg -i [套件名称].deb
rpm -ivh [套件名称].rpm (全新安装)
rpm -Uvh [套件名称].rpm (升级)
apt-get install [套件名称]
yum install [套件名称]
查询可用的套件
apt-cache search [套件名称]
yum search [套件名称]
列出套件详细的信息与介绍
apt-cache show [套件名称]
yum info (列出所有套件的信息)
yum info [套件名称] (列出所指定的套件信息)
显示套件相依产等相关信息
apt-cache showpkg [套件名称]
apt-cache depends [套件名称]
显示套件反向相依性等相关信息
apt-cache rdepends [套件名称]
套件库中有多少可以使用的套件
apt-cache stats
更新套件库
apt-get update
yum update
升级已经安装的套件
apt-get upgrade
apt-get dist-upfrade
yum upgrade ( yum 3.X 版以上才支持)
清除已经下载的套件档
apt-get clean (移除所有的套件暂存档)
apt-get autoclean (移除旧版的所有套件暂存档)
yum clean all (移除所有的套件暂存档)
RPM 特殊参数使用
--nodeps
一般用于相依性时无法移除或安装套件时,但安装的话建议不要使用--force
同--replacepkgs,--replacefiles,--oldpackage一样,当安装的软件版本已经安装在系统上,
或者是系统上现有的版本比要安装的版本高,系统就会发出警告。
这时,用户如果坚持安装的话,可以用此参数
--allmatches
删除所指定套件名称的所有版本,如果有多个版本存在的话,会出现
error: "xxx" specifies multip错码讯息时使用
.tar
解压:tar xvf FileName.tar
压缩:tar cvf FileName.tar DirName
(注:tar是包裹(把多个档案合成一个),不是压缩!)
---------------------------------------------
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzipFileName
.tar.gz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
---------------------------------------------
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩:bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知
.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知
---------------------------------------------
.Z
解压:uncompressFileName.Z
压缩:compress FileName
.tar.Z
解压:tar ZxvfFileName.tar.Z
压缩:tar ZcvfFileName.tar.ZDirName
---------------------------------------------
.tgz
解压:tar zxvf FileName.tgz
压缩:未知
.tar.tgz
解压:tar zxvf FileName.tar.tgz
压缩:tar zcvf FileName.tar.tgz FileName
---------------------------------------------
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
---------------------------------------------
.rar
解压:rar a FileName.rar
压缩:rar e FileName.rar
rar请到:/download.htm 下载!
解压后请将rar_static拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):
[root@www2 tmp]# cprar_static /usr/bin/rar
---------------------------------------------
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lhaFileName
lha请到:r.kanazawa-it.ac.jp/~ishii/lhaunix/下载!
解压后请将lha拷贝到/usr/bin目录(其他由$PA TH环境变量指定的目录也可以):
[root@www2 tmp]# cplha /usr/bin/
---------------------------------------------
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .ar c .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解压:sEx x FileName.*
压缩:sEx a FileName.* FileName
sEx只是调用相关程序,本身并无压缩、解压功能,请注意!\r
sEx请到:/projects/sex下载!
解压后请将sEx拷贝到/usr/bin目录(其他由$PA TH环境变量指定的目录也可以):
[root@www2 tmp]# cpsEx /usr/bin/。