我需要这些带有为 ubuntu/natty 反向移植的最新上游版本的软件包
我试图通过更新从源代码构建它们,但它失败了。我不是包装专家,那里有很多教程和食谱。
你知道一个很好的和最新的向后移植 Ubuntu 包的教程吗?
如何从其他版本获取包而不必自己构建它们?
我能够使用以下命令启用 upstart 和禁用 systemd,但是我无法在调用时阻止它的自动重新安装apt-get install lxde
(我已经习惯了没有复杂 gui 或根本没有 gui 的严重服务器配置)。
请帮助:如何防止 64 位和 32 位版本的 systemd 自动安装?先感谢您。
apt-get install upstart-sysv sysvinit-utils -y
cp /usr/share/sysvinit/inittab /etc/inittab
update-initramfs -u
reboot
Run Code Online (Sandbox Code Playgroud)
进而
apt-get remove --purge --auto-remove systemd systemd:i386 -y
Run Code Online (Sandbox Code Playgroud) 我想创建一个 Apt 首选项文件,其引脚定义与源自Google, Inc.
.
以下定义似乎没有做任何事情:
Package: *
Pin: release o=Google, Inc.
Pin-priority: 900
Run Code Online (Sandbox Code Playgroud)
我怀疑逗号引起了问题。我怎样才能逃脱它?
以下方法均无效:
release o="Google, Inc."
release o='Google, Inc.'
release o=Google\, Inc.
release o=Google\\, Inc.
奇怪的是,以下确实匹配Google, Inc.
成功:
release o=Google? Inc.
但这不是我正在寻找的解决方案。我想知道如何在Google, Inc.
不诉诸(不稳定的)通配符的情况下进行匹配。
更多信息:
$ apt-cache policy | grep -C 1 'Google, Inc.'
500 http://dl.google.com/linux/earth/deb/ stable/main amd64 Packages
release v=1.0,o=Google, Inc.,a=stable,n=stable,l=Google,c=main
origin dl.google.com
500 http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages
release v=1.0,o=Google, Inc.,a=stable,n=stable,l=Google,c=main
origin dl.google.com
$ grep Origin /var/lib/apt/lists/dl.google.com_*_Release
/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_Release:Origin: Google, Inc.
/var/lib/apt/lists/dl.google.com_linux_earth_deb_dists_stable_Release:Origin: Google, Inc.
Run Code Online (Sandbox Code Playgroud) 通常在我的 Ubuntu 16.04 LTS 上,我使用 APT-pin 功能锁定包版本。
例如,如果我想固定meld
到1.5.3-1ubuntu1版本,我会创建以下 pin 文件:
cat <<EOF | sudo tee /etc/apt/preferences.d/pin-meld
Package: meld
Pin: version 1.5.3-1ubuntu1
Pin-Priority: 1337
EOF
Run Code Online (Sandbox Code Playgroud)
此文件系统级应用的设置:apt
,apt-get
,aptitude
和GUI工具,如synaptic
和muon
尊重它。
我知道其他机制 - apt-mark
. 让我们假设。我的起点 - 我已经手动安装了meld_1.5.3-1ubuntu1,它的引脚被移除了。
$ apt-mark showhold
$ apt-cache policy meld
meld:
Installed: 1.5.3-1ubuntu1
Candidate: 3.14.2-1
Version table:
3.14.2-1 500
500 http://archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
500 http://archive.ubuntu.com/ubuntu xenial/universe i386 Packages
*** 1.5.3-1ubuntu1 100
100 /var/lib/dpkg/status
Run Code Online (Sandbox Code Playgroud)
然后我持有已安装的版本。 …
我想将 Natty Narwhal 存储库用于 puppet 包,但我不想升级我的整个服务器。那可能吗 ?
我目前的解决方案是手动获取 .deb 包
我有 ubuntu 16.04;
安装了内核 linux-image-4.13.0-31 更新,但我不喜欢它,所以我决定暂时继续使用 4.13.0-26。如何防止更新影响内核版本?
可能的重复:
如何禁止更新特定的包?
在我手动执行之前,我不希望我的内核或 grub 更新。这在 Ubuntu(我想是 10.04)中可行吗?
在 Natty Narwhal 上,我将 System Center 拖到启动器中。我在启动器上看到一个空白方块,而不是一个图标。但是,单击它确实会启动系统中心。我固定到启动器的其他应用程序不会发生此问题。
我正在尝试将 Ondrej PHP PPA 中的包的优先级从 提高500
到1000
。
我尝试这样做:
Package: *
Pin: o=LP-PPA-ondrej-php,a=bionic,n=bionic,c=main,b=amd64
Pin-Priority: 1001
Run Code Online (Sandbox Code Playgroud)
但apt
不明白Pin指令
Run Code Online (Sandbox Code Playgroud)default: Did not understand pin type o=LP-PPA-ondrej-php,a=bionic,n=bionic,c=main,b=amd64
我找到了允许我对顶级域源执行此操作的文档,例如我使用以下方法成功固定了节点源:
Package: *
Pin: origin deb.nodesource.com
Pin-Priority: 1001
Run Code Online (Sandbox Code Playgroud)
但不是特定的 PPA。我如何固定特定的PPA?