Jor*_*ril 99 package-management apt dpkg
有没有办法使用 shell直接从 URL安装 deb 包?就像是
dpkg -i http://domain.com/path/to/package.deb
Run Code Online (Sandbox Code Playgroud)
(我知道我可以先使用 wget,然后使用 dpkg,我只是想知道是否已经有一些东西可以做到)
Oli*_*Oli 64
编辑:我没有看到你之前关于知道你可以 wget 的声明,所以这有点尴尬......我会把它留在这里给任何想知道如何做到这一点的人。此外,我的答案的先前版本不起作用,但此版本(以稍长为代价)可以:
TEMP_DEB="$(mktemp)" &&
wget -O "$TEMP_DEB" 'http://path.to/my.deb' &&
sudo dpkg -i "$TEMP_DEB"
rm -f "$TEMP_DEB"
Run Code Online (Sandbox Code Playgroud)
您只需要在开头更改 URL。这可以是别名或写为 bash 函数。
我意识到围绕此存在技术和安全问题(您无法获得自动更新,来源是否可信等),但在纯粹的“我能做”的基础上,这可能会奏效。
Tgr*_*Tgr 32
不创建临时文件是不可能的。通常你会这样做
### Does not work
wget --quiet --output-document=- http://example.com/path/to/package.deb | dpkg --install -
Run Code Online (Sandbox Code Playgroud)
或者可能
### Does not work
dpkg --install <(wget --quiet --output-document=- http://example.com/path/to/package.deb)
Run Code Online (Sandbox Code Playgroud)
但是 dpkg 使用 mmap 来访问文件,所以两者都不起作用。有一个关于此的错误报告:#367297
Rin*_*ind 10
最快的方法是这样。点击开始安装百叶窗 .
用于单击名称的 URL:
http://packages.ubuntu.com/shutter
Run Code Online (Sandbox Code Playgroud)
...点击图标:
http://apt.ubuntu.com/p/shutter
Run Code Online (Sandbox Code Playgroud)
是的,您需要 Ubuntu 软件中心来完成 .DEB 的安装。否则,您必须从 Nautilus 或命令行执行安装。
用于此的完整文本仅用于 Ask Ubuntu,因此您需要将其重新格式化为锚点:
[shutter](http://packages.ubuntu.com/shutter) [![Install shutter]
(https://i.stack.imgur.com/HjNGK.png)](http://apt.ubuntu.com/p/shutter)
Run Code Online (Sandbox Code Playgroud)
可以在apturl wiki 页面上找到更多信息:
1 包:
a href="apt:package"
Run Code Online (Sandbox Code Playgroud)捆绑几个包:
a href="apt:package1,package2,package3"
Run Code Online (Sandbox Code Playgroud)启用存储库:
apturl apt:freevial?section=universe
Run Code Online (Sandbox Code Playgroud)因此,如果软件不在默认启用的存储库中,您应该向其添加“section=”。否则无法使用此方法,需要用户自行下载安装。
您可以尝试使用curl
.
要将文件下载到当前文件夹并从本地文件安装:
curl -sLO https://apt.puppetlabs.com/puppetlabs-release-precise.deb && sudo dpkg -i puppetlabs-release-precise.deb
Run Code Online (Sandbox Code Playgroud)
或/var/cache/apt/archives/
从那里下载并安装:
curl -sL -o/var/cache/apt/archives/puppetlabs-release-precise.deb https://apt.puppetlabs.com/puppetlabs-release-precise.deb && sudo dpkg -i /var/cache/apt/archives/puppetlabs-release-precise.deb
Run Code Online (Sandbox Code Playgroud)
小智 5
如果您有(或安装)Ansible:
ansible -m apt -a deb=http://domain.com/path/to/package.deb localhost
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
124656 次 |
最近记录: |