如何通过命令行安装.deb文件?
如何通过命令行安装.deb
文件?
通过dpkg
命令(Debian软件包管理系统) 手动安装软件包。 dpkg
是apt-get
和aptitude
等命令的后端,后者又是像Software Center和Synaptic这样的GUI安装应用程序的后端。
有点像:
dpkg
– > apt-get
, aptitude
– > Synaptic,软件中心
但是,安装软件包的最简单的方法当然是,首先是GUI应用程序(Synaptic,软件中心等),然后是终端命令apt-get
和aptitude
,它为后端添加了一个非常好的用户友好方法dpkg,包括但不限于打包的依赖项,控制安装的内容,需要更新,未安装,破坏的软件包等。最后, dpkg
命令是所有这些的基础。
由于dpkg是基础,因此您可以使用它直接从命令行安装打包。
安装包
sudo dpkg -i DEB_PACKAGE
例如,如果包文件名为askubuntu_2.0.deb
那么你应该执行sudo dpkg -i askubuntu_2.0.deb
。 如果dpkg
由于依赖性问题而报告错误,则可以运行sudo apt-get install -f
来下载缺少的依赖项并配置所有内容。 如果报告错误,您必须自己解决依赖关系 ,例如如何在添加PPA后解决未满足的依赖关系? 。
删除包
sudo dpkg -r PACKAGE_NAME
例如,如果包名为askubuntu
那么你应该做sudo dpkg -r askubuntu
。
重新配置现有包
sudo dpkg-reconfigure PACKAGE_NAME
当您需要重新配置与所述包相关的内容时,这非常有用。 keyboard-configuration
一些有用示例,当您要启用Ctrl + Alt + Backspace以重置X服务器时,您将执行以下操作:
sudo dpkg-reconfigure keyboard-configuration
另一个很棒的是当你需要为服务器或本地测试计算机设置时区时,所以你使用tzdata
包:
sudo dpkg-reconfigure tzdata
Debian(.deb)包是Ubuntu中使用的包。 您可以在系统中安装任何.deb软件包。 .deb文件通常只能通过单击它们从文件管理器(Nautilus)安装,因为已经在Ubuntu中设置了与默认安装程序的文件关联。 这些说明适用于希望从命令行终端(终端)安装软件包的用户。
要安装下载的Debian( Ubuntu )软件包(.deb):打开终端并键入
sudo dpkg -i packagename.deb
删除Debian(Ubuntu)包(.deb):
sudo dpkg -r packagename
要重新配置/修复已安装的Debian(Ubuntu)软件包(.deb):
sudo dpkg-reconfigure packagename
我最喜欢的是GDebi,可从终端/ shell或图形桌面获得。
我通常将.deb
文件与GDebi相关联,因为它快速有效 – 特别是与Ubuntu软件中心相比。 GDebi的一个主要特性是它解决了依赖关系并安装它们。
对于命令行运行sudo gdebi
来安装单个deb文件。
DPKG命令
有两个动作,分别是dpkg-query
和dpkg-deb
。
安装包
# sudo dpkg -i {package_name} # sudo dpkg -i skype-ubuntu-precise_4.2.0.11-1_i386.deb
删除包
# sudo dpkg -r {package_name} # sudo dpkg -r vlc
删除包及其配置文件
# sudo dpkg -P {package_name} # sudo dpkg -P vlc
列出所有已安装的包。
您可以将命令传递给less
(寻呼机),以便您可以更轻松地滚动内容:
# dpkg -l | less
检查包装是否已安装
# dpkg -l {package_name} # dpkg -l vlc
检查软件包是否已安装,如果已安装,请启动它:
# dpkg -l | vlc
查看是否安装了软件包
这将显示安装包的位置。 这里是-S
(大写S
)来搜索包装是否已安装。
# sudo dpkg -S {package_name} # sudo dpkg -S skype
从指定位置安装* .deb包
这里-R
是递归的。 (递归处理与在指定目录及其所有子目录中找到的模式*.deb
匹配的所有常规文件)。
# sudo dpkg -R --install {package_location} # sudo dpkg -R --install /home/sysadmin/soft
显示包装细节
这里-p
(小写p
)将显示包信息:
# dpkg -p {package_name} # dpkg -p apache2
查看包的内容
使用-c
(小写c
)来显示内容:
# sudo dpkg -c {package_name} # sudo dpkg -c skype-ubuntu-precise_4.2.0.11-1_i386.deb
解压缩*.deb
包文件
使用-x
(小写x
)来提取:
# dpkg -x {package_name} {location_were_to_extract} # dpkg -x libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/
提取并显示包中包含的文件名
使用-X
(大写X
)显示提取内容。
# dpkg -X {package_name} {location_were_to_extract} # dpkg -X libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/
显示有关包的信息
这里-I
代表的信息:
# dpkg -I {package_name} # dpkg -I libqt4-phonon_4.6.3-4+squeeze1_i386.deb
重新配置已安装的软件包
dpkg-reconfigure
在安装包之后dpkg-reconfigure
配置它们。 将一个或多个包的名称传递给它以进行重新配置。 它会询问配置问题,就像首次安装软件包时一样。
# dpkg-reconfigure postfix
这将以与第一次安装postfix
相同的方式重新配置postfix
。
需要了解更多关于dpkg
命令的信息? 看一下手册页:
# man dpkg
虽然dpkg -i
确实安装了软件包,但它没有做任何自动依赖项解析,同时还有另外两种选择,使用gdebi或apt-get工具。 要使用以后只需使用:
sudo apt-get install /path/to/package.deb
即使您在包含目录的目录中,也需要在开头使用./
来提供路径:
sudo apt-get install ./package.deb
安装像Libreoffice这样在文件夹中有多个.deb文件的程序时,可以使用一个方便的提示。
sudo dpkg -i *.deb
创建您自己的脚本安装程序debInstaller
,如下所示:
#!/bin/bash dpkg -i "$@" apt-get --yes --fix-broken install
使脚本可执行
chmod +x debInstaller
然后将其移动到PATH中的某些目录或将当前目录添加到PATH。
我要把它移到/ usr / bin
sudo cp debInstaller /usr/bin
现在,您可以使用以下命令安装任何.deb
软件包:
sudo debInstaller some-package.deb
此方法的附加值是解决依赖性问题,因为当你因为依赖性错误而安装带有dpkg -i
的.deb
时,你会遇到一些问题,所以你必须使用apt-get install -f
来解决它,这个脚本将为你完成这项工作,但在这里我使用了apt-get --yes --fix-broken install
来自动解决这些错误而无需用户干预。
gdebi
命令行解决方案
这是在命令行上在Ubuntu上安装.deb文件的最佳方法:
sudo gdebi skype.deb
如果您还没有安装gdebi
,请使用sudo apt install gdebi-core
。
为什么选择gdebi?
gdebi
将查找.deb
文件的所有依赖项,并在尝试安装.deb
文件之前安装它们。 我觉得这比sudo dpkg -i skype.deb && sudo apt install -f
。 后者非常渴望在某些情况下删除依赖关系。 例如,当我尝试安装Skype时,它试图删除96(!)包,包括compiz
和unity
等包! gdebi
给出了一个更清晰的错误信息:
$ sudo gdebi skype.deb Cannot install 'libqtgui:i386'
(顺便说一下,这是特定问题的解决方案 。)
要安装.deb
文件,请使用:
sudo dpkg -i filename.deb sudo apt-get install -f sudo dpkg -i filename.deb
如果安装失败,第二行是修复损坏的软件包,然后再次安装以完成安装。
(.deb)软件包是使用dpkg命令手动安装的,或者我们可以说“Debian软件包管理系统”。 dpkg是apt-get和aptitude等后端命令之一。
举个例子:
dpkg – > apt-get,aptitude – > Synaptic,软件中心
但是,安装软件包的最简单的方法当然是,首先,因为dpkg是基础,你可以使用它直接从命令行安装打包。
对于安装包:
sudo dpkg -i“DEB_PACKAGE”
例如,如果包文件名为askubuntu_2.0.deb,那么你应该执行sudo dpkg -i askubuntu_2.0.deb。 如果dpkg由于依赖性问题而报告错误,则可以运行sudo apt-get install -f来下载缺少的依赖项并配置所有内容。 如果报告错误,则必须通过以下方式自行整理依赖关系,例如如何在添加PPA后解决未满足的依赖关系?
对于删除包:
sudo dpkg -r PACKAGE_NAME例如,如果包名为askubuntu,那么你应该这样做
sudo dpkg -r askubuntu
重新配置现有包:
sudo dpkg-reconfigure PACKAGE_NAME
如果您需要重新配置与所述包相关的内容,将非常有用。 键盘配置的一些有用示例,当您要启用Ctrl + Alt + Backspace以重置X服务器时。
要使用cmd’dpkg’安装Debian软件包(以“.deb”结尾),请输入:
cd /path/of/Debian/package sudo dpkg -i package-name.deb
如果你想在某个时候删除相同的Debian软件包,那么:
cd /path/of/Debian/package sudo dpkg -r package-name.deb
要获取安装的当前Debian软件包列表,请使用:
dpkg -l