标签 Ubuntu 下的文章

默认安装的 Ubuntu 并未预先安装所有必需的应用。你可能需要在网上花几个小时或者向其他 Linux 用户寻求帮助才能找到并安装 Ubuntu 所需的应用。如果你是新手,那么你肯定需要花更多的时间来学习如何从命令行(使用 apt-getdpkg)或从 Ubuntu 软件中心搜索和安装应用。一些用户,特别是新手,可能希望轻松快速地安装他们喜欢的每个应用。如果你是其中之一,不用担心。在本指南中,我们将了解如何使用名为 “Alfred” 的简单命令行程序在 Ubuntu 上安装基本应用。

Alfred 是用 Python 语言编写的自由、开源脚本。它使用 Zenity 创建了一个简单的图形界面,用户只需点击几下鼠标即可轻松选择和安装他们选择的应用。你不必花费数小时来搜索所有必要的应用程序、PPA、deb、AppImage、snap 或 flatpak。Alfred 将所有常见的应用、工具和小程序集中在一起,并自动安装所选的应用。如果你是最近从 Windows 迁移到 Ubuntu Linux 的新手,Alfred 会帮助你在新安装的 Ubuntu 系统上进行无人值守的软件安装,而无需太多用户干预。请注意,还有一个名称相似的 Mac OS 应用,但两者有不同的用途。

在 Ubuntu 上安装 Alfred

Alfred 安装很简单!只需下载脚本并启动它。就这么简单。

$ wget https://raw.githubusercontent.com/derkomai/alfred/master/alfred.py
$ python3 alfred.py

或者,使用 wget 下载脚本,如上所示,只需将 alfred.py 移动到 $PATH 中:

$ sudo cp alfred.py /usr/local/bin/alfred

使其可执行:

$ sudo chmod +x /usr/local/bin/alfred

并使用命令启动它:

$ alfred

使用 Alfred 脚本轻松快速地在 Ubuntu 上安装基本应用程序

按照上面所说启动 Alfred 脚本。这就是 Alfred 默认界面的样子。

如你所见,Alfred 列出了许多最常用的应用类型,例如:

  • 网络浏览器,
  • 邮件客户端,
  • 消息,
  • 云存储客户端,
  • 硬件驱动程序,
  • 编解码器,
  • 开发者工具,
  • Android,
  • 文本编辑器,
  • Git,
  • 内核更新工具,
  • 音频/视频播放器,
  • 截图工具,
  • 录屏工具,
  • 视频编码器,
  • 流媒体应用,
  • 3D 建模和动画工具,
  • 图像查看器和编辑器,
  • CAD 软件,
  • PDF 工具,
  • 游戏模拟器,
  • 磁盘管理工具,
  • 加密工具,
  • 密码管理器,
  • 存档工具,
  • FTP 软件,
  • 系统资源监视器,
  • 应用启动器等。

你可以选择任何一个或多个应用并立即安装它们。在这里,我将安装 “Developer bundle”,因此我选择它并单击 OK 按钮。

现在,Alfred 脚本将自动你的 Ubuntu 系统上添加必要仓库、PPA 并开始安装所选的应用。

安装完成后,你将看到以下消息。

恭喜你!已安装选定的软件包。

你可以使用以下命令在 Ubuntu 上查看最近安装的应用

$ grep " install " /var/log/dpkg.log

你可能需要重启系统才能使用某些已安装的应用。类似地,你可以方便地安装列表中的任何程序。

提示一下,还有一个由不同的开发人员编写的类似脚本,名为 post_install.sh。它与 Alfred 完全相同,但提供了一些不同的应用。请查看以下链接获取更多详细信息。

这两个脚本能让懒惰的用户,特别是新手,只需点击几下鼠标就能够轻松快速地安装他们想要在 Ubuntu Linux 中使用的大多数常见应用、工具、更新、小程序,而无需依赖官方或者非官方文档的帮助。

就是这些了。希望这篇文章有用。还有更多好东西。敬请期待!

干杯!


via: https://www.ostechnix.com/an-automated-way-to-install-essential-applications-on-ubuntu/

作者:SK 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

一篇涵盖了在 Ubuntu 和其他 Linux 发行版中使用 PPA 的几乎所有问题的深入的文章。

如果你一直在使用 Ubuntu 或基于 Ubuntu 的其他 Linux 发行版,例如 Linux Mint、Linux Lite、Zorin OS 等,你可能会遇到以下三种神奇的命令:

sudo add-apt-repository ppa:dr-akulavich/lighttable
sudo apt-get update
sudo apt-get install lighttable-installer

许多网站推荐使用类似于以上几行的形式 在 Ubuntu 中安装应用程序。这就是所谓的使用 PPA 安装应用程序。

但什么是 PPA?为什么要用它?使用 PPA 安全吗?如何正确使用 PPA?如何删除 PPA?

我将在这个详细的指南中回答上述所有问题。即使你已经了解了一些关于 PPA 的事情,我相信这篇文章仍然会让你了解这方面的更多知识。

请注意我正在使用 Ubuntu 撰写本文。因此,我几乎在各个地方都使用了 Ubuntu 这个术语,但文中的说明和步骤也适用于其他基于 Debian/Ubuntu 的发行版。

什么是 PPA?为什么要使用 PPA?

Everything you need to know about PPA in Ubuntu Linux

PPA 表示 个人软件包存档 Personal Package Archive

这样说容易理解吗?可能不是很容易。

在了解 PPA 之前,你应该了解 Linux 中软件仓库的概念。关于软件仓库,在这里我不会详述。

软件仓库和包管理的概念

软件仓库是一组文件,其中包含各种软件及其版本的信息,以及校验和等其他一些详细信息。每个版本的 Ubuntu 都有自己的四个官方软件仓库:

  • Main - Canonical 支持的自由开源软件。
  • Universe - 社区维护的自由开源软件。
  • Restricted - 设备的专有驱动程序。
  • Multiverse - 受版权或法律问题限制的软件。

你可以在 这里 看到所有版本的 Ubuntu 的软件仓库。你可以浏览并转到各个仓库。例如,可以在 这里 找到 Ubuntu 16.04 的主存储库(Main)。

所以,PPA 基本上是一个包含软件信息的网址。那你的系统又是如何知道这些仓库的位置的呢?

这些信息存储在 /etc/apt 目录中的 sources.list 文件中。如果查看此文件的内容,你就会看到里面有软件仓库的网址。# 开头的行将被忽略。

这样的话,当你运行 sudo apt update 命令时,你的系统将使用 APT 工具 来检查软件仓库并将软件及其版本信息存储在缓存中。当你使用 sudo apt install package_name 命令时,它通过该信息从实际存储软件的网址获取该软件包。

如果软件仓库中没有关于某个包的信息,你将看到如下错误:

E: Unable to locate package

此时,建议阅读我的 apt 命令使用指南 一文,这将帮你更好地理解 aptupdate 等命令。

以上是关于软件仓库的内容。但什么是 PPA?PPA 和软件仓库又有什么关联呢?

为什么要用 PPA?

如你所见,Ubuntu 对系统中的软件进行管理,更重要的是控制你在系统上获得哪个版本的软件。但想象一下开发人员发布了软件的新版本的情况。

Ubuntu 不会立即提供该新版本的软件。需要一个步骤来检查此新版本的软件是否与系统兼容,从而可以确保系统的稳定性。

但这也意味着它需要经过几周才能在 Ubuntu 上可用,在某些情况下,这可能需要几个月的时间。不是每个人都想等待那么长时间才能获得他们最喜欢的软件的新版本。

类似地,假设有人开发了一款软件,并希望 Ubuntu 将该软件包含在官方软件仓库中。在 Ubuntu 做出决定并将其包含在官方存软件仓库之前,还需要几个月的时间。

另一种情况是在 beta 测试阶段。即使官方软件仓库中提供了稳定版本的软件,软件开发人员也可能希望某些终端用户测试他们即将发布的版本。他们是如何使终端用户对即将发布的版本进行 beta 测试的呢?

通过 PPA!

如何使用 PPA?PPA 是怎样工作的?

正如我已经告诉过你的那样,PPA 代表 个人软件包存档 Personal Package Archive 。在这里注意 “个人” 这个词,它暗示了这是开发人员独有的东西,并没有得到分发的正式许可。

Ubuntu 提供了一个名为 Launchpad 的平台,使软件开发人员能够创建自己的软件仓库。终端用户,也就是你,可以将 PPA 仓库添加到 sources.list 文件中,当你更新系统时,你的系统会知道这个新软件的可用性,然后你可以使用标准的 sudo apt install 命令安装它。

sudo add-apt-repository ppa:dr-akulavich/lighttable
sudo apt-get update
sudo apt-get install lighttable-installer

概括一下上面三个命令:

  • sudo add-apt-repository <PPA_info> <- 此命令将 PPA 仓库添加到列表中。
  • sudo apt-get update <- 此命令更新可以在当前系统上安装的软件包列表。
  • sudo apt-get install <package_in_PPA> <- 此命令安装软件包。

你会发现使用 sudo apt update 命令非常重要,否则你的系统将无法知道新软件包何时可用。

现在让我们更详细地看一下第一个命令。

sudo add-apt-repository ppa:dr-akulavich/lighttable

你会注意到此命令没有软件仓库的 URL。这是因为该工具被设计成将 URL 信息抽象之后再展示给你。

小小注意一下:如果你添加的是 ppa:dr-akulavich/lighttable,你会得到 Light Table。但是如果你添加 ppa:dr-akulavich,你将得到 “上层软件仓库” 中的所有仓库或软件包。它是按层级划分的。

基本上,当您使用 add-apt-repository 添加 PPA 时,它将执行与手动运行这些命令相同的操作:

deb http://ppa.launchpad.net/dr-akulavich/lighttable/ubuntu YOUR_UBUNTU_VERSION_HERE main
deb-src http://ppa.launchpad.net/dr-akulavich/lighttable/ubuntu YOUR_UBUNTU_VERSION_HERE main

以上两行是将任何软件仓库添加到你系统的 sources.list 文件的传统方法。但 PPA 会自动为你完成这些工作,无需考虑确切的软件仓库 URL 和操作系统版本。

此处不那么重要的一点是,当你使用 PPA 时,它不会更改原始的 sources.list 文件。相反,它在 /etc/apt/sources.d 目录中创建了两个文件,一个 .list 文件和一个带有 .save 后缀的备份文件。

Using a PPA in Ubuntu

PPA 创建了单独的 sources.list 文件

带有后缀 .list 的文件含有添加软件仓库的信息的命令。

PPA add repository information

一个 PPA 的 source.list 文件的内容

这是一种安全措施,可以确保添加的 PPA 不会和原始的 sources.list 文件弄混,它还有助于移除 PPA。

为什么使用 PPA?为何不用 DEB 包

你可能会问为什么要使用 PPA,PPA 需要通过命令行使用,而不是每个人都喜欢用命令行。为什么不直接分发可以图形方式安装的 DEB 包呢?

答案在于更新的过程。如果使用 DEB 包安装软件,将无法保证在运行 sudo apt updatesudo apt upgrade 命令时,已安装的软件会被更新为较新的版本。

这是因为 apt 的升级过程依赖于 sources.list 文件。如果文件中没有相应的软件条目,则不会通过标准软件更新程序获得更新。

那么这是否意味着使用 DEB 安装的软件永远不会得到更新?不是的。这取决于 DEB 包的创建方式。

一些开发人员会自动在 sources.list 中添加一个条目,这样软件就可以像普通软件一样更新。谷歌 Chrome 浏览器就是这样一个例子。

某些软件会在运行时通知你有新版本可用。你必须下载新的 DEB 包并再次运行,来将当前软件更新为较新版本。Oracle Virtual Box 就是这样一个例子。

对于其余的 DEB 软件包,你必须手动查找更新,这很不方便,尤其是在你的软件面向 Beta 测试者时,你需要频繁的添加很多更新。这正是 PPA 要解决的问题。

官方 PPA vs 非官方 PPA

你或许听过官方 PPA 或非官方 PPA 这个词,二者有什么不同呢?

开发人员为他们的软件创建的 PPA 称为官方 PPA。很明显,这是因为它来自项目开发者。

但有时,个人会创建由其他开发人员所创建的项目的 PPA。

为什么会有人这样做? 因为许多开发人员只提供软件的源代码,而且你也知道 在 Linux 中从源代码安装软件 是一件痛苦的事情,并不是每个人都可以或者会这样做。

这就是志愿者自己从这些源代码创建 PPA 以便其他用户可以轻松安装软件的原因。毕竟,使用这 3 行命令比从源代码安装要容易得多。

确保你的 Linux 发行版本可以使用 PPA

当在 Ubuntu 或任何其他基于 Debian 的发行版中使用 PPA 时,你应该记住一些事情。

并非每个 PPA 都适用于你的特定版本。你应该知道正在使用 哪个版本的 Ubuntu。版本的开发代号很重要,因为当你访问某个 PPA 的页面时,你可以看到该 PPA 都支持哪些版本的 Ubuntu。

对于其他基于 Ubuntu 的发行版,你可以查看 /etc/os-release 的内容来 找出 Ubuntu 版本 的信息。

Verify PPA availability for Ubuntu version

检查 PPA 是否适用于你的 Ubuntu 版本

如何知道 PPA 的网址呢?只需在网上搜索 PPA 的名称,如 ppa:dr-akulavich/lighttable,第一个搜索结果来自 Launchpad,这是托管 PPA 的官方平台。你也可以转到 Launchpad 并直接在那里搜索所需的 PPA。

如果不验证是否适用当前的版本就添加 PPA,当尝试安装不适用于你的系统版本的软件时,可能会看到类似下面的错误。

E: Unable to locate package

更糟糕的是,因为它已经添加到你的 source.list 中,每次运行软件更新程序时,你都会看到 “无法下载软件仓库信息” 的错误。

Failed to download repository information Ubuntu 13.04

如果你在终端中运行 sudo apt update,错误提示将包含导致此问题的仓库的更多详细信息。你可以在 sudo apt update 的输出内容结尾看到类似的内容:

W: Failed to fetch http://ppa.launchpad.net/venerix/pkg/ubuntu/dists/raring/main/binary-i386/Packages  404  Not Found
E: Some index files failed to download. They have been ignored, or old ones used instead.

上面的错误提示说的很明白,是因为系统找不到当前版本对应的仓库。还记得我们之前看到的仓库结构吗?APT 将尝试在 http://ppa.launchpad.net/<PPA_NAME>/ubuntu/dists/<Ubuntu_Version> 中寻找软件信息。

如果特定版本的 PPA 不可用,它将永远无法打开 URL,你会看到著名的 404 错误。

为什么 PPA 不适用于所有 Ubuntu 发行版?

这是因为 PPA 的作者必须编译软件并在特定版本上创建 PPA。考虑到每六个月发布一个新的 Ubuntu 版本,为每个版本的 Ubuntu 更新 PPA 是一项繁琐的任务,并非所有开发人员都有时间这样做。

如果 PPA 不适用于你的系统版本,该如何安装应用程序?

尽管 PPA 不适用于你的 Ubuntu 版本,你仍然可以下载 DEB 文件并安装应用程序。

比如说,你访问 Light Table 的 PPA 页面,使用刚刚学到的有关 PPA 的知识,你会发现 PPA 不适用于你的特定 Ubuntu 版本。

你可以点击 “查看软件包详细信息”。

Get DEB file from PPA

在这里,你可以单击软件包以显示更多详细信息,还可以在此处找到包的源代码和 DEB 文件。

Download DEB file from PPA

我建议 使用 Gdebi 安装这些 DEB 文件 而不是通过软件中心,因为 Gdebi 在处理依赖项方面要好得多。

请注意,以这种方式安装的软件包可能无法获得任何将来的更新。

我认为你已经阅读了足够多的关于添加 PPA 的内容,那么如何删除 PPA 及其安装的软件呢?

如何删除 PPA?

我过去曾写过 删除 PPA 的教程,这里写的也是同样的方法。

我建议在删除 PPA 之前删除从 PPA 安装的软件。如果只是删除 PPA,则已安装的软件仍保留在系统中,但不会获得任何更新。这不是你想要的,不是吗?

那么,问题来了,如何知道是哪个 PPA 安装了哪个应用程序?

查找 PPA 安装的软件包并将其移除

Ubuntu 软件中心无法移除 PPA 安装的软件包,你必须使用具有更多高级功能的 Synaptic 包管理器。

可以从软件中心安装 Synaptic 或使用以下命令进行安装:

sudo apt install synaptic

安装后,启动 Synaptic 包管理器并选择 “Origin”。你会看到添加到系统的各种软件仓库。PPA 条目将以前缀 PPA 进行标识,单击以查看 PPA 可用的包。已安装的软件前面会有恰当的符号进行标识。

Managing PPA with Synaptic package manager

查找通过 PPA 安装的软件包

找到包后,你可以从 Synaptic 删除它们。此外,也始终可以选择使用命令行进行移除:

sudo apt remove package_name

删除 PPA 安装的软件包后,你可以继续从 sources.list 中删除PPA。

以图形界面的方式删除 PPA

在设置中打开 “软件和更新”,然后点击 “其他软件” 选项卡。查找要删除的 PPA:

Delete a PPA from Software Source

此处你可以进项两项操作,可以取消选择 PPA 或选择 “删除” 选项。

区别在于,当你取消选择 PPA 条目时,系统将在 /etc/apt/sources.list.d 中的ppa_name.list 文件中注释掉仓库条目;但如果选择 “删除” 选项,将会删除 /etc/apt/sources.list.d目录中 ppa_name.list 文件里的仓库条目。

在这两种情况下,文件 ppa_name.list 都保留在所在的目录中,即使它是空的。

使用 PPA 安全吗?

这是一个主观问题。纯粹主义者厌恶 PPA,因为大多数时候 PPA 来自第三方开发者。但与此同时,PPA 在 Debian/Ubuntu 世界中很受欢迎,因为它们提供了更简单的安装选项。

就安全性而言,很少见到因为使用 PPA 之后你的 Linux 系统被黑客攻击或注入恶意软件。到目前为止,我不记得发生过这样的事件。

官方 PPA 可以不加考虑的使用,使用非官方 PPA 完全是你自己的决定。

根据经验,如果程序需要 sudo 权限,则应避免通过第三方 PPA 进行安装。

你如何看待使用 PPA?

我知道这篇文章需要挺长时间来阅读,但我想让你更好地了解 PPA。我希望这份详细指南能够回答你关于使用 PPA 的大部分问题。

如果你对 PPA 有更多疑问,请随时在评论区提问。

如果你发现任何技术或语法错误,或者有改进的建议,请告诉我。


via: https://itsfoss.com/ppa-guide/

作者:Abhishek Prakash 选题:lujun9972 译者:jlztan 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

这篇教程将向你展示如何更新服务器版本或者桌面版本的 Ubuntu。它还解释了更新和升级之间的区别以及你应该了解的有关于 Ubuntu Linux 中的更新的一些其他内容。

如果你是一个新手并已经体验 Ubuntu 数天或几周,你可能想知道如何更新你的 Ubuntu 系统以获取安全补丁,错误修复和应用升级。

更新 Ubuntu 非常简单。我并不是瞎说。它简单得只要运行两个命令。让我来告诉你这两个命令的更多细节。

请注意,本教程适用于 Ubuntu 18.04、16.04 或任何其他版本。命令行方式也适用于基于 Ubuntu 的发行版如 Linux Mint、Linux Lite、elementary OS 等。

通过命令行更新 Ubuntu

如何更新 Ubuntu

在桌面上,打开终端。你可以在菜单里找到它或者使用 Ctrl+Alt+T 快捷键。如果你是登录到一台 Ubuntu 服务器,那你已经在访问一个终端了。

在终端里,你只需要使用以下命令:

sudo apt update && sudo apt upgrade -y

它将询问你密码,而你可以使用你的账号密码。输入时,你将不会看到任何内容在屏幕上,所以请继续输入你的密码并按回车键。

现在,我来解释下上面的命令。

事实上,这不是一条命令。它由两条命令组成。符号 && 是合并两条命令的一个方法,第二条命令仅在前一条命令执行成功时执行。

当命令 apt upgrade 要求你在安装更新前确认时,末尾的参数 -y 会自动输入 yes

请注意,你也可以逐条使用这两条命令:

sudo apt update
sudo apt upgrade

这将花费更长的时间,因为你必须等待第一条命令执行完成后才能输入第二条命令。

说明:sudo apt update

这条命令更新了可用软件包的本地数据库。如果你没运行这条命令,本地数据库将不会被更新,而你的系统将不会知道是否有可用的新版本。

这就是为什么当你运行 sudo apt update,你会在输出中看到大量的 URL。这条命令会从对应的储存库(你在输出中看到的 URL)中获取软件包信息。

更新 Ubuntu Linux

在命令的末尾,它告诉你有多少个软件包可以被更新。你可以使用下列命令查看这些软件包:

apt list --upgradable

补充阅读: 阅读这篇文章了解命令 apt update 的输出中的 Ign、Hit 和 Get 是什么

说明:sudo apt upgrade

这条命令将已安装的软件包版本与本地数据库进行匹配。它收集全部信息,然后列出所有具有更新版本的软件包。此时,它会询问您是否要升级(已安装的软件包更新到新版本)。

通过命令行更新 Ubuntu Linux

你可以键入 yesy 或者只敲回车键去确认安装这些更新。

所以总的来说,sudo apt update 会检查可用的新版本,而 sudo apt upgrade 实际上会执行更新。

命令 update 可能会令人困惑,因为你可能期望通过命令 apt update 安装更新来更新系统,但这并不会发生。

通过 GUI 更新 Ubuntu(适用于桌面用户)

如果你使用桌面版 Ubuntu,你并不需要为了更新系统而打开终端。你可以仍可以使用命令行更新,但这只是一个选择。

在菜单里,找到 “软件更新” 并运行它。

在 Ubuntu 中运行 Software Updater

它将检查你的系统是否有可用的更新。

检查 Ubuntu 是否有可用更新

如果有可用的更新,它将给你提供安装更新的选择。

在 Ubuntu 中通过更新管理器安装更新

现在,点击 “安装”,它可能会向你询问密码。

通过 GUI 在 Ubuntu Linux 中安装更新

一旦你输入你的密码,它将开始安装更新。

通过 GUI 更新 Ubuntu

在某些情况下,你可能需要重启系统才能使已安装的更新正常工作。如果需要重启系统,你将在更新结束时收到通知。

通过 GUI 更新 Ubuntu

如果你不希望马上重启你的系统,可以选择稍后重启。

通过 GUI 在 Ubuntu 中安装更新

提示:如果“软件更新”返回一个错误,你需要在终端是使用命令 sudo apt update。输出的最后几行将包含真正的错误信息。你可以在因特网上搜索该错误并解决问题。

更新 Ubuntu 时要记住几件事

你刚学习了如何更新你的 Ubuntu 系统。如果你感兴趣,你还需要了解一些关于 Ubuntu 更新的内容。

更新后清理

你的系统将会有一些更新后不再需要的软件包。你可用使用这条命令删除这些软件包并释放空间

sudo apt autoremove

在 Ubuntu Server 中内核热修复以避免重启

如果是 Linux 内核更新,你将需要在系统更新后重启。当你不希望服务器停机时,这将会是一个问题。

热修复功能允许 Linux 内核在持续运行时打补丁。换句话说就是你不需要重启你的系统。

如果你在管理服务器,你可能需要在 Ubuntu 中启用热修复

版本升级是不同的

本文讨论的更新是使你安装的 Ubuntu 保持最新。但它不包括版本升级(例如从 Ubuntu 16.04 升级到 18.04)。

Ubuntu 版本 升级完全是另一回事。它更新整个操作系统核心。你需要在这个漫长的过程开始前做好备份。

总结

我希望你喜欢这个关于 Ubuntu 系统更新的教程并学到一些新东西。

如果你有其他问题,请随时提出。如果你是一位经验丰富的 Linux 用户并且有些更好的技巧,请同我们分享。


via: https://itsfoss.com/update-ubuntu/

作者:Abhishek Prakash 选题:lujun9972 译者:LazyWolfLin 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

今天,我在升级我的 Ubuntu 18.04 LTS 系统。不幸的是,在更新 Ubuntu 时中途断电,系统关机。电源恢复后,我再次启动系统。在登录页面输入密码后,它变成空白并且没有响应。键盘和鼠标也没有作用。我只看到一个空白的屏幕!值得庆幸的是,它只是一台测试机,并且没有重要的数据。我可以直接擦除整个系统然后重新安装。但是,我不想这样做。由于我没有什么可失去的,我只是想不重装修复我损坏的 Ubuntu 系统,并且我成功了!如果你发现自己处于像我这样的境地,不要惊慌。这个简短的教程描述了如何在不丢失数据的情况下轻松修复损坏的 Ubuntu 系统,而无需重新安装。

修复损坏的 Ubuntu 系统

首先,尝试使用 live cd 登录并在外部驱动器中备份数据。以防这个方法没用,你仍然可以获取数据并重新安装系统!

在登录页上,按下 CTRL+ALT+F1 切换到 tty1。你可以在此处了解有关在 TTY 之间切换的更多信息。

现在,逐个输入以下命令来修复损坏的 Ubuntu Linux。

$ sudo rm /var/lib/apt/lists/lock
$ sudo rm /var/lib/dpkg/lock
$ sudo rm /var/lib/dpkg/lock-frontend
$ sudo dpkg --configure -a
$ sudo apt clean
$ sudo apt update --fix-missing
$ sudo apt install -f
$ sudo dpkg --configure -a
$ sudo apt upgrade
$ sudo apt dist-upgrade

最后,使用命令重启系统:

$ sudo reboot

你现在可以像往常一样登录到你的 Ubuntu 系统。

我做完这些步骤后,我 Ubuntu 18.04 测试系统中的所有数据都还在,一切都之前的一样。此方法可能不适用于所有人。但是,这个小小的技巧对我有用,并且比重装节省了一些时间。如果你了解其他更好的方法,请在评论区告诉我。我也会在本指南中添加它们。

这是这些了。希望这篇文章有用。

还有更多好东西。敬请关注!

干杯!


via: https://www.ostechnix.com/how-to-fix-broken-ubuntu-os-without-reinstalling-it/

作者:SK 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

如果你正在使用最新的 Ubuntu 服务器版本,你可能已经注意到欢迎消息中有一些与 Ubuntu 服务器平台无关的促销链接。你可能已经知道 MOTD,即 Message Of The Day 的开头首字母,在 Linux 系统每次登录时都会显示欢迎信息。通常,欢迎消息包含操作系统版本,基本系统信息,官方文档链接以及有关最新安全更新等的链接。这些是我们每次通过 SSH 或本地登录时通常会看到的内容。但是,最近在终端欢迎消息中出现了一些其他链接。我已经几次注意到这些链接,但我并在意,也从未点击过。题图是我的 Ubuntu 18.04 LTS 服务器上显示的终端欢迎消息。

正如你在上面截图中所看到的,欢迎消息中有一个 bit.ly 链接和 Ubuntu wiki 链接。有些人可能会惊讶并想知道这是什么。其实欢迎信息中的链接无需担心。它可能看起来像广告,但并不是商业广告。链接实际上指向到了 Ubuntu 官方博客Ubuntu wiki。正如我之前所说,其中的一个链接是不相关的,没有任何与 Ubuntu 服务器相关的细节,这就是为什么我开头称它们为广告。

虽然我们大多数人都不会访问 bit.ly 链接,但是有些人可能出于好奇去访问这些链接,结果失望地发现它只是指向一个外部链接。你可以使用任何 URL 去短网址服务,例如 unshorten.it,在访问真正链接之前,查看它会指向哪里。或者,你只需在 bit.ly 链接的末尾输入加号(+)即可查看它们的实际位置以及有关链接的一些统计信息。

什么是 MOTD 以及它是如何工作的?

2009 年,来自 Canonical 的 Dustin Kirkland 在 Ubuntu 中引入了 MOTD 的概念。它是一个灵活的框架,使管理员或发行包能够在 /etc/update-motd.d/ 位置添加可执行脚本,目的是生成在登录时显示有益的、有趣的消息。它最初是为 Landscape(Canonical 的商业服务)实现的,但是其它发行版维护者发现它很有用,并且在他们自己的发行版中也采用了这个特性。

如果你在 Ubuntu 系统中查看 /etc/update-motd.d/,你会看到一组脚本。一个是打印通用的 “欢迎” 横幅。下一个打印 3 个链接,显示在哪里可以找到操作系统的帮助。另一个计算并显示本地系统包可以更新的数量。另一个脚本告诉你是否需要重新启动等等。

从 Ubuntu 17.04 起,开发人员添加了 /etc/update-motd.d/50-motd-news,这是一个脚本用来在欢迎消息中包含一些附加信息。这些附加信息是:

  1. 重要的关键信息,例如 ShellShock、Heartbleed 等
  2. 生命周期(EOL)消息,新功能可用性等
  3. 在 Ubuntu 官方博客和其他有关 Ubuntu 的新闻中发布的一些有趣且有益的帖子

另一个特点是异步,启动后约 60 秒,systemd 计时器运行 /etc/update-motd.d/50-motd-news –force 脚本。它提供了 /etc/default/motd-news 脚本中定义的 3 个配置变量。默认值为:ENABLED=1, URLS="https://motd.ubuntu.com", WAIT="5"

以下是 /etc/default/motd-news 文件的内容:

$ cat /etc/default/motd-news
# Enable/disable the dynamic MOTD news service
# This is a useful way to provide dynamic, informative
# information pertinent to the users and administrators
# of the local system
ENABLED=1

# Configure the source of dynamic MOTD news
# White space separated list of 0 to many news services
# For security reasons, these must be https
# and have a valid certificate
# Canonical runs a service at motd.ubuntu.com, and you
# can easily run one too
URLS="https://motd.ubuntu.com"

# Specify the time in seconds, you're willing to wait for
# dynamic MOTD news
# Note that news messages are fetched in the background by
# a systemd timer, so this should never block boot or login
WAIT=5

好事情是 MOTD 是完全可定制的,所以你可以彻底禁用它(ENABLED=0)、根据你的意愿更改或添加脚本、以秒为单位更改等待时间等等。

如果启用了 MOTD,那么 systemd 计时器作业将循环遍历每个 URL,将它们的内容缩减到每行 80 个字符、最多 10 行,并将它们连接到 /var/cache/motd-news 中的缓存文件。此 systemd 计时器作业将每隔 12 小时运行并更新 /var/cache/motd-news。用户登录后,/var/cache/motd-news 的内容会打印到屏幕上。这就是 MOTD 的工作原理。

此外,/etc/update-motd.d/50-motd-news 文件中包含自定义的用户代理字符串,以报告有关计算机的信息。如果你查看 /etc/update-motd.d/50-motd-news 文件,你会看到:

# Piece together the user agent
USER_AGENT="curl/$curl_ver $lsb $platform $cpu $uptime"

这意味着,MOTD 检索器将向 Canonical 报告你的操作系统版本、硬件平台、CPU 类型和正常运行时间。

到这里,希望你对 MOTD 有了一个基本的了解。

现在让我们回到主题,我不想要这个功能。我该如何禁用它?如果欢迎消息中的促销链接仍然困扰你,并且你想永久禁用它们,则可以通过以下方法快速禁用它。

在 Ubuntu 服务器中禁用终端欢迎消息中的广告

要禁用这些广告,编辑文件:

$ sudo vi /etc/default/motd-news

找到以下行并将其值设置为 0(零)。

[...]
ENABLED=0
[...]

保存并关闭文件。现在,重新启动系统,看看欢迎消息是否仍然显示来自 Ubuntu 博客的链接。

看到没?现在没有来自 Ubuntu 博客和 Ubuntu wiki 的链接。

这就是全部内容了。希望这对你有所帮助。更多好东西要来了,敬请关注!

顺祝时祺!


via: https://www.ostechnix.com/how-to-disable-ads-in-terminal-welcome-message-in-ubuntu-server/

作者:SK 选题:lujun9972 译者:MjSeven 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

了解快捷键能够提升您的生产力。这里有一些实用的 Ubuntu 快捷键助您像专业人士一样使用 Ubuntu。

您可以用键盘和鼠标组合来使用操作系统。

注意:本文中提到的键盘快捷键适用于 Ubuntu 18.04 GNOME 版。 通常,它们中的大多数(或者全部)也适用于其他的 Ubuntu 版本,但我不能够保证。

Ubuntu keyboard shortcuts

实用的 Ubuntu 快捷键

让我们来看一看 Ubuntu GNOME 必备的快捷键吧!通用的快捷键如 Ctrl+C(复制)、Ctrl+V(粘贴)或者 Ctrl+S(保存)不再赘述。

注意:Linux 中的 Super 键即键盘上带有 Windows 图标的键,本文中我使用了大写字母,但这不代表你需要按下 shift 键,比如,T 代表键盘上的 ‘t’ 键,而不代表 Shift+t

1、 Super 键:打开活动搜索界面

使用 Super 键可以打开活动菜单。如果你只能在 Ubuntu 上使用一个快捷键,那只能是 Super 键。

想要打开一个应用程序?按下 Super 键然后搜索应用程序。如果搜索的应用程序未安装,它会推荐来自应用中心的应用程序。

想要看看有哪些正在运行的程序?按下 Super 键,屏幕上就会显示所有正在运行的 GUI 应用程序。

想要使用工作区吗?只需按下 Super 键,您就可以在屏幕右侧看到工作区选项。

2、 Ctrl+Alt+T:打开 Ubuntu 终端窗口

Ubuntu Terminal Shortcut

使用 Ctrl+alt+T 来打开终端窗口

想要打开一个新的终端,您只需使用快捷键 Ctrl+Alt+T。这是我在 Ubuntu 中最喜欢的键盘快捷键。 甚至在我的许多 FOSS 教程中,当需要打开终端窗口是,我都会提到这个快捷键。

3、 Super+L 或 Ctrl+Alt+L:锁屏

当您离开电脑时锁定屏幕,是最基本的安全习惯之一。您可以使用 Super+L 快捷键,而不是繁琐地点击屏幕右上角然后选择锁定屏幕选项。

有些系统也会使用 Ctrl+Alt+L 键锁定屏幕。

4、 Super+D or Ctrl+Alt+D:显示桌面

按下 Super+D 可以最小化所有正在运行的应用程序窗口并显示桌面。

再次按 Super+D 将重新打开所有正在运行的应用程序窗口,像之前一样。

您也可以使用 Ctrl+Alt+D 来实现此目的。

5、 Super+A:显示应用程序菜单

您可以通过单击屏幕左下角的 9 个点打开 Ubuntu 18.04 GNOME 中的应用程序菜单。 但是一个更快捷的方法是使用 Super+A 快捷键。

它将显示应用程序菜单,您可以在其中查看或搜索系统上已安装的应用程序。

您可以使用 Esc 键退出应用程序菜单界面。

6、 Super+Tab 或 Alt+Tab:在运行中的应用程序间切换

如果您运行的应用程序不止一个,则可以使用 Super+TabAlt+Tab 快捷键在应用程序之间切换。

按住 Super 键同时按下 Tab 键,即可显示应用程序切换器。 按住 Super 的同时,继续按下 Tab 键在应用程序之间进行选择。 当光标在所需的应用程序上时,松开 SuperTab 键。

默认情况下,应用程序切换器从左向右移动。 如果要从右向左移动,可使用 Super+Shift+Tab 快捷键。

在这里您也可以用 Alt 键代替 Super 键。

提示:如果有多个应用程序实例,您可以使用 Super+` 快捷键在这些实例之间切换。

7、 Super+箭头:移动窗口位置

https://player.vimeo.com/video/289091549

这个快捷键也适用于 Windows 系统。 使用应用程序时,按下 Super+左箭头,应用程序将贴合屏幕的左边缘,占用屏幕的左半边。

同样,按下 Super+右箭头会使应用程序贴合右边缘。

按下 Super+上箭头将最大化应用程序窗口,Super+下箭头将使应用程序恢复到其正常的大小。

8、 Super+M:切换到通知栏

GNOME 中有一个通知栏,您可以在其中查看系统和应用程序活动的通知,这里也有一个日历。

Notification Tray Ubuntu 18.04 GNOME

通知栏

使用 Super+M 快捷键,您可以打开此通知栏。 如果再次按这些键,将关闭打开的通知托盘。

使用 Super+V 也可实现相同的功能。

9、 Super+空格:切换输入法(用于多语言设置)

如果您使用多种语言,可能您的系统上安装了多个输入法。 例如,我需要在 Ubuntu 上同时使用印地语和英语,所以我安装了印地语(梵文)输入法以及默认的英语输入法。

如果您也使用多语言设置,则可以使用 Super+空格 快捷键快速更改输入法。

10、 Alt+F2:运行控制台

这适用于高级用户。 如果要运行快速命令,而不是打开终端并在其中运行命令,则可以使用 Alt+F2 运行控制台。

Alt+F2 to run commands in Ubuntu

控制台

当您使用只能在终端运行的应用程序时,这尤其有用。

11、 Ctrl+Q:关闭应用程序窗口

如果您有正在运行的应用程序,可以使用 Ctrl+Q 快捷键关闭应用程序窗口。您也可以使用 Ctrl+W 来实现此目的。

Alt+F4 是关闭应用程序窗口更“通用”的快捷方式。

它不适用于一些应用程序,如 Ubuntu 中的默认终端。

12、 Ctrl+Alt+箭头:切换工作区

Workspace switching

切换工作区

如果您是使用工作区的重度用户,可以使用 Ctrl+Alt+上箭头Ctrl+Alt+下箭头在工作区之间切换。

13、 Ctrl+Alt+Del:注销

不!在 Linux 中使用著名的快捷键 Ctrl+Alt+Del 并不会像在 Windows 中一样打开任务管理器(除非您使用自定义快捷键)。

Log Out Ubuntu

注销

在普通的 GNOME 桌面环境中,您可以使用 Ctrl+Alt+Del 键打开关机菜单,但 Ubuntu 并不总是遵循此规范,因此当您在 Ubuntu 中使用 Ctrl+Alt+Del 键时,它会打开注销菜单。

在 Ubuntu 中使用自定义键盘快捷键

您不是只能使用默认的键盘快捷键,您可以根据需要创建自己的自定义键盘快捷键。

转到“设置->设备->键盘”,您将在这里看到系统的所有键盘快捷键。向下滚动到底部,您将看到“自定义快捷方式”选项。

Add custom keyboard shortcut in Ubuntu

您需要提供易于识别的快捷键名称、使用快捷键时运行的命令,以及您自定义的按键组合。

Ubuntu 中你最喜欢的键盘快捷键是什么?

快捷键无穷无尽。如果需要,你可以看一看所有可能的 GNOME 快捷键,看其中有没有你需要用到的快捷键。

您可以学习使用您经常使用应用程序的快捷键,这是很有必要的。例如,我使用 Kazam 进行屏幕录制,键盘快捷键帮助我方便地暂停和开始录像。

您最喜欢、最离不开的 Ubuntu 快捷键是什么?


via: https://itsfoss.com/ubuntu-shortcuts/

作者:Abhishek Prakash 选题:lujun9972 译者:XiatianSummer 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出