Debian,Ubuntu如何安装deb软件包

随波逐流的伊始 2024-06-25 16:37:04 阅读 75

.deb 文件是Debian软件包格式,是用于Debian及其衍生的Linux发行版(如Ubuntu)中的软件包。这种格式由Debian项目使用,用于安装、升级和删除软件。

.deb 文件包含了软件的所有文件、脚本以及安装包管理器需要的安装信息。它们通常通过Debian的包管理系统apt或其前端工具(如apt-getaptitude、或图形界面的软件中心)来安装,这些工具可以自动处理依赖关系和配置。你也可以使用dpkg命令直接安装.deb文件,但这样通常需要手动处理依赖关系。

1、将操作目录切换到deb包所在的目录(这里以/Downloads)

cd ~/Downloads

2、使用dpkg命令安装deb包,package_name.deb换成你要安装的实际软件包名

sudo dpkg -i package_name.deb

3、如果dpkg指出缺少依赖项,使用apt命令来修复,下面的命令会安装任何缺少的依赖项并配置所有的包

sudo apt-get install -f

附:

命令:

-i|--install <.deb 文件名> ... | -R|--recursive <目录> ...

--unpack <.deb 文件名> ... | -R|--recursive <目录> ...

-A|--record-avail <.deb 文件名> ... | -R|--recursive <目录> ...

--configure <软件包名> ... | -a|--pending

--triggers-only <软件包名> ... | -a|--pending

-r|--remove <软件包名> ... | -a|--pending

-P|--purge <软件包名> ... | -a|--pending

-V|--verify <软件包名> ... 检查包的完整性。

--get-selections [<表达式> ...] 把已选中的软件包列表打印到标准输出。

--set-selections 从标准输入里读出要选择的软件。

--clear-selections 取消选中所有非必需的软件包。

--update-avail <软件包文件> 替换现有可安装的软件包信息。

--merge-avail <软件包文件> 把文件中的信息合并到系统中。

--clear-avail 清除现有的软件包信息。

--forget-old-unavail 忘却已被卸载的不可安装的软件包。

-s|--status <软件包名> ... 显示指定软件包的详细状态。

-p|--print-avail <软件包名> ... 显示可供安装的软件版本。

-L|--listfiles <软件包名> ... 列出属于指定软件包的文件。

-l|--list [<表达式> ...] 简明地列出软件包的状态。

-S|--search <表达式> ... 搜索含有指定文件的软件包。

-C|--audit [<表达式> ...] 检查是否有软件包残损。

--yet-to-unpack 列出标记为待解压的软件包。

--predep-package 列出待解压的预依赖。

--add-architecture <体系结构> 添加 <体系结构> 到体系结构列表。

--remove-architecture <体系结构> 从体系结构列表中移除 <体系结构>。

--print-architecture 显示 dpkg 体系结构。

--print-foreign-architectures 显示已启用的异质体系结构。

--assert-<特性> 对指定特性启用断言支持。

--validate-<属性> <字符串> 验证一个 <属性>的 <字符串>。

--compare-versions <a> <关系> <b> 比较版本号 - 见下。

--force-help 显示本强制选项的帮助信息。

-Dh|--debug=help 显示有关出错调试的帮助信息。

-?, --help 显示本帮助信息。

--version 显示版本信息。

可验证的属性:pkgname, archname, trigname, version.

调用 dpkg 并带参数 -b, --build, -c, --contents, -e, --control, -I, --info,

-f, --field, -x, --extract, -X, --vextract, --ctrl-tarfile, --fsys-tarfile

是针对归档文件的。 (输入 dpkg-deb --help 获取帮助)

Options:

--admindir=<directory> Use <directory> instead of /var/lib/dpkg.

--root=<directory> Install on a different root directory.

--instdir=<directory> Change installation dir without changing admin dir.

--pre-invoke=<command> Set a pre-invoke hook.

--post-invoke=<command> Set a post-invoke hook.

--path-exclude=<pattern> Do not install paths which match a shell pattern.

--path-include=<pattern> Re-include a pattern after a previous exclusion.

-O|--selected-only Skip packages not selected for install/upgrade.

-E|--skip-same-version Skip packages whose same version is installed.

-G|--refuse-downgrade Skip packages with earlier version than installed.

-B|--auto-deconfigure Install even if it would break some other package.

--[no-]triggers Skip or force consequential trigger processing.

--verify-format=<format> Verify output format (supported: 'rpm').

--no-pager Disables the use of any pager.

--no-debsig Do not try to verify package signatures.

--no-act|--dry-run|--simulate

Just say what we would do - don't do it.

-D|--debug=<octal> Enable debugging (see -Dhelp or --debug=help).

--status-fd <n> Send status change updates to file descriptor <n>.

--status-logger=<command> Send status change updates to <command>'s stdin.

--log=<filename> Log status changes and actions to <filename>.

--ignore-depends=<package>[,...]

Ignore dependencies involving <package>.

--force-<thing>[,...] Override problems (see --force-help).

--no-force-<thing>[,...] Stop when problems encountered.

--refuse-<thing>[,...] Ditto.

--abort-after <n> Abort after encountering <n> errors.

--robot Use machine-readable output on some commands.

可供--compare-versions 使用的比较运算符有:

lt le eq ne ge gt (如果版本号为空,那么就认为它先于任意版本号);

lt-nl le-nl ge-nl gt-nl (如果版本号为空,那么就认为它后于任意版本号);

< << <= = >= >> > (仅仅是为了与主控文件的语法兼容)。

'apt' 和 'aptitude' 提供了更为便利的软件包管理。

 

 



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。