最近更新后,我看到 Ubuntu Pro 的一些额外的灰色项目以及软件更新程序屏幕上的“启用 Ubuntu Pro”按钮。我现在不想安装 Ubuntu Pro,并且我还想禁止它在软件更新程序屏幕上显示 - 请参见下图。
做到这一点的步骤是什么?
注意:这个问题与软件更新 UI 有关,而不是命令行界面。
编辑:尝试过这个:
sudo mv /etc/apt/apt.conf.d/20apt-esm-hook.conf /etc/apt/apt.conf.d/20apt-esm-hook.conf.bak
Run Code Online (Sandbox Code Playgroud)
然后
sudo apt update
Run Code Online (Sandbox Code Playgroud)
我不太使用 Ubuntu,作为一个主要是红帽企业及其类似组织的组织中的平台和构建工程师。
仅仅构建和使用最新的 GCC 的问题是语言运行时库。我要么必须分发它们,使运输复杂化并使律师对 GPL 感到紧张,要么要求我的客户构建和安装相同的 GCC。
我生产闭源商业软件,主要是数学建模,从 C 和 C++ 源代码编译并作为共享库提供。这意味着我对实现跨发行版二进制兼容性非常感兴趣。这是实用的,因为我的库所需的一切都可以从 glibc 和 GCC 语言运行时(libgcc_s.so.1和libstdc++.so.6)获得。这两套库都具有非常强的向前兼容性,因为符号都经过版本控制,并且每次行为更改时都会创建新版本。
目前,我在 RHEL 8.x 上进行构建。它有相当旧的 GCC (8.x) 和 glibc (2.28),所以如果我天真地使用它构建我的库,我将向前兼容具有这些库的相同或更高版本的 Linux。然而,旧的 GCC 无法处理开发人员非常想要使用的 C++20 语言标准,更不用说新的 C++23 标准了。RHEL 为此提供了解决方案,但我还没有找到 Ubuntu 的类似解决方案。
Red Hat 解决方案是一个“GCC 工具集”。这些方法有很多,但它们的工作方式都是相同的。它们提供了 GCC 的更高版本(专为在 RHEL 8.x 的运行时上运行而构建)、标准标头以及一些 GNU 的特殊脚本ld。这些脚本告诉链接器尽可能使用 GCC 语言运行时的系统库,对于系统库中没有的函数,将所需的代码静态链接到所链接的共享库(或可执行文件)中。这听起来很可怕,但效果非常好。这可能是因为红帽是 GCC 的主要贡献者并确保它保持正常运行。
Ubuntu有类似的东西吗?我希望有一个 Red Hat 的替代品,以防他们利用 GPL 漏洞成功地消除了他们操作系统的类似工作,因为在每台测试机器上运行它的成本太高。
我目前对 Ubuntu 编译和运行时的了解在我对相关问题的回答中进行了解释。
对于 C++20 情况,迁移到 Ubuntu LTS 22.04 就可以满足需求。然而,C++23 开始出现。我们预计 Ubuntu LTS …
我有 Ubuntu 22.04,它安装了 python 3.10/usr/bin/python3 -> python3.10
不过,我也有/usr/local/bin/python3 -> python3.6。我认为它一定是来自以前手动安装的 python。
如何卸载这个python 3.6?或者这是一个坏主意?
当我做
sudo apt-get remove python3
它要求我确认,但我无法从前面的打印输出中看出它将删除两个版本中的哪一个。旧版本首先在$PATH. 如何确保(仅)旧版本将被删除?
乌班图22.04。
我按照/var/log/syslog命令执行tail -f。这是通过 ssh 连接。它将跟踪系统日志的输出几天,然后停止更新。它就坐在那里。如果我Ctrl+C终止 tail 命令并重新发出它,它会获取最新结果,这些结果晚于tail -f. IOW,它停止跟随。如何让它继续跟踪 syslog,而不必终止命令并重新发出它?谢谢你!
终端突然不再接受命令,基本上表现得像文本编辑器。
在发生这种情况之前我输入的最后命令只是一些nvm命令,即nvm alias default 20.11.0,nvm ls等。
重新启动并没有修复它。
我以前没有见过这种行为,我是否可能不小心按下了将其切换到不同模式的快捷方式?如果是这样,我该如何重置?
我有带有所有最新更新的 Ubuntu 23.10,GNOME 45 的 GNOME 终端版本 3.49.92。
在这次采访中,Mark Shuttleworth 提到了 Arkham 内核。我尝试通过 Google 搜索、搜索 launchpad.net、搜索 ubuntu.com 来查找这些内容,但我无法找到任何进一步的信息。
在哪里可以找到有关 Arkham 的更多信息,例如如何安装 Arkham 内核?
我使用的是 Ubuntu 22.04.3 LTS。我制作了一个名为 的文件helloworld.deb,其源文件结构如下:
helloworld\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 DEBIAN\n\xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 control\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 usr\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 games\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 mygame.sh\nRun Code Online (Sandbox Code Playgroud)\n我曾经dpkg-deb --build helloworld制作过helloworld.deb文件。然后我把sudo dpkg --instdir=phonyRoot -i helloworld.deb它安装在一个名为 的文件夹中phonyRoot。
我执行tree phonyRoot并得到以下结果:
phonyRoot\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 usr\n\xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 games\n\xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 mygame.sh\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 var\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 lib\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 dpkg\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 info\n \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 format\n \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 helloworld.list\n \xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 helloworld.md5sums\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 lock\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 lock-frontend\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 status\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 status-old\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 triggers\n \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Lock\n \xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 Unincorp\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 updates\n\n8 …Run Code Online (Sandbox Code Playgroud) package-management command-line dpkg debian software-installation
我想在具有特定字符串的文件中进行搜索,并仅显示与该字符串完全匹配的行,但这似乎不适用于grep -w.
这只是一个示例,因为我将在脚本中搜索字符串,然后只想显示那些完全匹配的行,而不是“string-xxxx”或“string.io”。
有人有什么主意吗?
root@ubuntu-client:/var/lib/apt/lists# cat aa
aide is good
this is aide one
that is aide-common good
aide-good is not ok
hello aide-help
root@ubuntu-client:/var/lib/apt/lists#
oot@ubuntu-client:/var/lib/apt/lists# grep -w aide aa
aide is good
this is aide one
that is aide-common good
aide-good is not ok
hello aide-help
root@ubuntu-client
Run Code Online (Sandbox Code Playgroud) 操作系统:Ubuntu桌面22.04
我最初以用户 carl 身份登录。我打开一个 shell 并 echo $0,我得到确认,我处于非登录 shell 中。(“bash”,没有破折号)但是当我 echo $PATH 时,我看到 $HOME/.local/bin 和 $HOME/bin 都是来源的,它既没有在 ~/.bashrc 中也没有在 /etc/environment 中声明。
该线程的答案表明从登录用户继承。
所以我测试了一些东西:
$ su - root
$ echo $0
> -bash
$ echo $PATH
> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
$ su carl
$ echo $0
> bash
$ echo $PATH
> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
$ su - carl
$ echo $0
> -bash
$ echo $PATH
> /home/carl/.local/bin:/home/carl/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
$ su carl
$ echo $0
> bash
$ echo $PATH
> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Run Code Online (Sandbox Code Playgroud)
在此示例中,以 root …