2023年1月

我们整体点评了最近发布的 EndeavourOS “Cassini”。

每年,个人和小型团队们推出了数以百计的 Linux 发行版。它们大多是 Debian、Ubuntu、Fedora 或 Arch Linux 的直接衍生品,再加上一些定制的东西。这也难怪每年都有因为缺乏贡献、愿景和坚持而死亡的发行版。

三年前,作为已停止的 Antergos 项目的延续,一个由贡献者们组成的小团队发起了 EndeavourOS 项目。从那时起,由于其安装简单,用户体验和功能,它已经变得很受欢迎。

具备 Xfce 桌面的 EndeavourOS

点评 EndeavourOS

如果你曾经试过它,你就会很明显地发现,他们花了很多心血来开发这个发行版。这个发行版的口号是成为一个面向大众的 “通用” Arch Linux 发行版,摒弃了新用户对 Arch Linux 安装的恐惧,以及使用 Arch 时的优越感。

如果你曾经尝试过 EndeavourOS,你一定会 “感觉” 到作为一个 Arch 发行版,对最终用户来说,在桌面上执行的事情是多么的 “容易”。

安装和可供选择的桌面

通过 “独有的” Calamares 安装程序,它的安装变得超级简单。除此之外,EndeavourOS 团队还特别注意在安装步骤中为你提供了大部分的选项。例如,无需用户干预的临场介质直接启动。它会启动欢迎屏幕。欢迎屏幕要做的事就是提供让你在系统中安装它所有必要选项。

EndeavourOS 欢迎屏幕

默认情况下,ISO 提供了一个轻量级的 Xfce 桌面。然而,EndeavourOS 也为你提供了各种桌面环境和窗口管理器(见下文)。而且它们都经过测试,可以正常工作。如果你在安装过程中连接到了互联网,你可以通过 Calamares 安装程序来安装这些。这意味着你不需要在基本的 Xfce 设置后重新安装它们。

此外,如果你是一个资深用户,只想安装一个基本的 Arch Linux,不需要任何桌面,那也是可以的。只要在安装时使用 “ 无桌面 No desktop ” 选项就可以了!

尽管 Arch Linux 最近创建了一个自动脚本 archinstall 来使安装更容易,但通过 EndeavourOS 的 ISO 来获得 Arch 的基本安装仍然更快、更容易。

EndeavourOS 安装程序显示无桌面和其他选项

此外,你可以在三个选项中选择:GRUB、systemd-boot 或 “ 无启动器 no bootloader ”,这是 EndeavourOS “Cassini” 版本的亮点功能之一。此外,你还可以选择你要安装的软件包(仅在线模式支持)。例如,你可能需要一个基本的系统来开始使用。或者,你可能想安装一些与视频/音频或开发工作有关的应用程序。所有这些你都可以在这个版本中选择。

安装通过检测我的测试机中安装的其他操作系统而完成,很顺利。在“Cassini” 版本中,该团队还将 mkinitcpio 换成了 dracut,以获得更好的性能,减少启动相关问题的失败。

“Xfce” 旗舰版的桌面体验

第一次登录后,你会再次看到欢迎程序,其中有一个 “安装后” 可以做的项目列表。开发人员提供了一个非常周到的列表。这包括改变墙纸、更新 Arch 镜像、安装英伟达驱动等初始任务。许多 Linux 发行版都有一个欢迎程序,但我认为这个程序是一个完善的软件包。

欢迎应用中的安装后项目

默认的外观是你能得到的定制的最好的 Xfce 桌面。通过定制,它成为一个外观良好的发行版,远非默认的 Xfce 可比。定制包括 GRUB 菜单、登录屏幕和桌面等等。

Xfce 主菜单配置了更多的项目,终端略带透明,使用 Qogir 图标主题。所有这些变化都辅以令人惊叹的壁纸和 Arc-Darker 默认 Xfce 主题。

EndeavourOS “Cassini” 桌面带有 Xfce 4.18

性能

尽管有桌面环境,Arch Linux 的性能总是更好。它总是令人感觉更快,因为它的内部并不臃肿。除此之外,Xfce 桌面 4.18 在 “Cassini” 版本中还做了额外的性能优化,你可以在浏览桌面的时候感受到。

在空闲状态下,它使用了大约 700MB 的内存和平均 4% 的 CPU 占用。这是性能基线。资源使用量可能会根据你打开的应用程序的数量而增加。在我之前对 EndeavourOS 的点评中,其性能表现也类似。

不仅如此,它在默认的 Xfce 安装中只使用了 4GB 的磁盘空间。然而,你可能需要安装额外的重型软件,如 LibreOffice、GIMP 或 KDenlive,这将占用更多磁盘空间。

EndeavourOS “Cassini” 的性能

在 EndeavourOS 中执行日常任务有多容易?

EndeavourOS 的一大特点是一些基于 Python 的 GUI 工具,可以使你在 Arch Linux 中的生活变得简单。例如,你可以从 Arch 和 EndeavourOS 的软件仓库中获得更新通知、一键从 AUR 安装软件、一键更新镜像和你的系统。你不需要从终端运行任何命令。这对 Arch Linux 的新用户来说是一个很大的帮助。

一键安装软件

软件包清理器和更新管理器

处理滚动发布的独特方式,以实现稳定性

Arch Linux 作为一个滚动发布的发行版,往往会出现故障。例如,在 Arch 主仓库的每个月的内核更新期间,一些系统可能会出现故障。由于它的受欢迎程度和开发者的主动性,如果出现问题,你会得到通知和相关的解决方法。

最近 Arch Linux 中的 GRUB 问题,给用户带来了大量的启动问题,EndeavourOS 团队通过适当的沟通,给用户提供了解决方法,真的 处理得很好

因此,如果你最终遇到一个不稳定的系统,你也不会真的迷失。

此外,Pacman 的配置已被定制过,使用 EndeavourOS 选择的镜像,以确保你的体验是完美的。

对开源硬件和 ARM 的正式支持

在这个 EndeavourOS “Cassini” 版本中,官方支持了 Pinebook Pro 笔记本电脑。该团队在 Manjaro 软件包的基础上与 Pine64 团队合作,为你提供了独家的 Arch 软件包,使该笔记本开箱即用。此外, EndeavourOS ARM 镜像也可用于树莓派 4。

社区帮助

EndeavourOS 最大的好处之一是社区帮助 —— 这是即时的!这主要是指其专门的 Telegram 频道,在那里你可以在几分钟内得到对你的 EndeavourOS 的任何问题的回应。我曾经去过这个频道,管理员/贡献者们都很友好,很有帮助。

此外,你也可以从官方论坛和其他社交渠道获得帮助。

总结

在结束对 EndeavourOS 的 “Cassini” 版本 的点评时,我想说这是一个构建得最好的发行版,而且组织良好。开发者和团队有一个建立通用的 Arch Linux 发行版的清晰路线图。另外,通过对 ARM 和 Pinebook Pro 的支持以及其他举措,其愿景也很明确。

总而言之,对于每一个希望在 Arch Linux 中拥有一个运行时间更长、更稳定的系统的人来说,这是一个完美的发行版。

你可以从 官方网站 下载 EndeavourOS。

让我们举杯!


via: https://www.debugpoint.com/endeavouros-review/

作者:Arindam 选题:lkxed 译者:wxy 校对:wxy

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

在这个简便的教程中,我们可以了解到 Java 中方法的定义,如何使用方法,以及何时使用方法。

Java 中的方法(在许多其他编程语言中称为“函数”)是被组合在一起并标记为可重用的一块代码。方法很有用,因为它们允许你在不重写相同代码的情况下,执行相同的操作或一系列操作,这不仅意味着你的工作量减少,还意味着出现问题时需要维护和调试的代码减少。

方法存在于类中,因此标准 Java 样板代码适用:

package com.opensource.example;

public class Example {
  // 在此写代码
}

在这样一个简单的单文件应用程序中,包定义并不是绝对必要的,但它是一个很好的习惯,而且大多数 IDE 都强制执行它。

默认情况下,Java 会寻找在类中运行的 main 方法。方法可以是公有的或私有的,也可以是静态的或非静态的,但 main 方法必须是公有的、静态的,Java 编译器才能识别和使用它。当方法是公有的时,它可以从类外部执行。要在程序启动时调用 Example 类,其 main 方法必须是可访问的,因此将其设置为 public

下面是两个方法的简单演示:一个 main 方法在调用 Example 类时默认执行,另一个 report 方法接受 main 的输入并执行简单操作。

为了模拟任意数据输入,我使用了 if-then 语句,该语句根据你启动应用程序的时间在两个字符串之间进行选择。换句话说,main 方法首先设置一些数据(在现实生活中,这些数据可以来自用户输入,也可以来自应用程序其他地方的其他方法),然后 “调用” report方法,将处理后的数据作为输入提供:

package com.opensource.example;

public class Example {
  public static void main(String[] args) {
    // 生成一些数据
    long myTime = System.currentTimeMillis();
    String weather;

    if ( myTime%2 == 0 ) {
      weather = "party";
    } else {
      weather = "apocalypse";
    }

    // 调用其他方法
    report(weather);
  }

  private static void report(String day) {
    System.out.printf("Welcome to the zombie %s\n", day);
  }
}

运行代码:

$ java ./Example.java
Welcome to the zombie apocalypse
$ java ./Example.java
Welcome to the zombie party

请注意,同一 report 方法有两个不同的结果。当然,在这个简单的演示中,不需要第二种方法。模拟数据生成的 if-then 语句可能生成了相同的结果。但是,当一个方法执行一项复杂的任务时,比如将图像调整为缩略图,然后使用调整后的图像在屏幕上生成小部件,那么附加组件的“费用”就很有意义了。

何时使用 Java 方法

很难知道何时使用方法,何时只将数据发送到 Java 流 或循环中。如果你面临这个决定,答案通常是使用一种方法。原因如下:

  • 方法开销少。它们不会给代码增加处理开销。
  • 方法减少代码的行数。
  • 方法是特定的。查找名为 resizeImage 的方法通常比查找隐藏在从驱动器加载图像的函数中某个循环中的代码更容易。
  • 方法是可重用的。当你第一次编写方法时,你可能会 认为 它只对应用程序中的一个任务有用。然而,随着应用程序的编写,你可能会发现自己正在使用一种你认为“已完成”的方法。

函数式编程与面向对象编程

函数式编程利用方法作为执行任务的主要构造。创建一个方法,该方法接受一种数据,处理该数据,并输出新数据。将许多方法串在一起,你就拥有了一个动态且功能强大的应用程序。像 C 和 Lua 这样的编程语言就是这种编码风格的例子。

用代码完成任务的另一种方式是 Java 使用的面向对象模型。在面向对象编程中,方法是模板的组成部分。你可以创建对象,而不是将数据从一个方法发送到另一个方法,并可以通过使用它们的方法来更改它们。

从面向对象的角度来看,这是一个简单的 “僵尸末日” 演示程序。在函数方法中,我使用一种方法生成数据,另一种方法使用该数据执行操作。面向对象的等价物是具有表示工作单元的类。这个示例应用程序向用户显示一条当天的消息,宣布这一天会有僵尸派对或是僵尸末日。编写一个“天”对象,然后查询该对象以了解其特性是有意义的。作为演示面向对象构造的不同方面的借口,新的示例应用程序还将统计有多少僵尸出现在派对上(或末日)。

Java 为每个类使用一个文件,因此要创建的第一个文件是 Day.Java,它用作 Day 对象:

package com.opensource.example;

import java.util.Random;

// 类
public class Day {
    public static String weather;
    public int count;

// 构造方法
  public Day() {
    long myTime = System.currentTimeMillis();

    if ( myTime%2 == 0 ) {
      weather = "paradise";
    } else {
      weather = "apocalypse";
    }
  }

// 方法
  public String report() {
      return weather;
  }

  public int counter() {
    Random rand = new Random();
    count = count + rand.nextInt(100);

    return(count);
    }
}

在“类”部分中,创建了两个域:天象 weather 和计数 countweather 是静态的。在一天的过程中(在这种假想的情况下),weather 不会改变。要么是派对 paradise,要么是末日 apocalypse,持续了一整天。然而,僵尸的数量在一天中会增加。

在“构造方法”部分,确定当天的天象。它是作为一个 构造方法 完成的,因为它只在类最初被调用时发生一次。

在“方法”部分,report 方法只返回由构造方法确定和设置的天象报告。然而,counter 方法生成一个随机数,并将其添加到当前僵尸计数中。

换句话说,这个类做了三件不同的事情:

  • 表示应用程序定义的“天”。
  • 设置当天不变的天气报告。
  • 设置一天中不断增加的僵尸数量。

要使用这所有,请创建第二个文件:

package com.opensource.example;

public class Example {
  public static void main(String[] args) {
    Day myDay = new Day();
    String foo = myDay.report();
    String bar = myDay.report();

    System.out.printf("Welcome to a zombie %s\n", foo);
    System.out.printf("Welcome to a zombie %s\n", bar);
    System.out.printf("There are %d zombies out today.\n", myDay.counter());
    System.out.printf("UPDATE: %d zombies. ", myDay.counter());
    System.out.printf("UPDATE: %d zombies. ", myDay.counter());
  }
}

因为现在有两个文件,所以使用 Java IDE 运行代码是最简单的,但是如果不想使用 IDE,可以创建自己的 JAR 文件。运行代码以查看结果:

Welcome to a zombie apocalypse
Welcome to a zombie apocalypse
There are 35 zombies out today.
UPDATE: 67 zombies. UPDATE: 149 zombies.

无论调用 report 方法多少次,weather 都保持不变,但调用 counter 方法的次数越多,僵尸的数量就会增加。

Java 方法

方法(或函数)是编程中的重要组成。在 Java 中,你可以将它们作为函数式编程的单个类的一部分使用,也可以在面向对象编程的类之间使用它们。两种类型的编程对于解决同一个问题有不同的视角,因此没有对与错之分。通过反复尝试,积累一点经验,你会知道哪一个最适合某个特定的问题。


via: https://opensource.com/article/23/1/java-methods

作者:Seth Kenlon 选题:lkxed 译者:ZhangZhanhaoxiang 校对:wxy

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

本文将帮助你了解在 Ubuntu 和 Fedora 中设置 Python 开发环境的基础知识和步骤。

Python 由于其强大的库、简单的语法和可移植性,在过去几年中变得很流行。目前几乎所有的企业系统都在使用它。

因此,如果你正试图建立你的 Python 环境,并想知道如何开始等等,那么你就找到正确的地方了。在这里,我试图给你一些开始的步骤。

在 Ubuntu 和 Fedora 中设置 Python 开发环境

Python 版本

如果你刚刚开始 Python 开发,那么建议你使用最新的 Python 3.x 进行开发,因为 Python 2.x 已经不再支持了。几乎所有领先的 Linux 发行版都取消了对 Python 2 的依赖。

如果你正在运行 Fedora 或 Ubuntu 的最新发行版,那么你应该已经安装了 Python 3.x,并设置为默认解释器。例如,Fedora 37 和 Ubuntu 22.04 LTS 将 Python 3.11 作为默认的 Python 交互界面。

找到你的 Python 版本的一个快速方法是在 Ubuntu 和 Fedora 的终端运行以下命令:

python2
python3

python3

如果你运行的是早期版本的 Ubuntu 或 Fedora,那么你可以使用以下命令安装最新的 Python 3.x:

Ubuntu:

sudo apt install python3

Fedora:

sudo dnf install python3

另外,运行下面的命令,找出当前系统中 Python 可执行文件的路径:

Which python

切换默认解释器的版本

如果你的系统安装了多个 Python 版本 —— 2.x 和 3.x,并且你想在它们之间切换,也是可以的。

如果你只安装了一个版本,你可以跳过这一节。

要进行切换,首先,从终端运行 python,找出默认的可执行路径。理想情况下,它应该是 /usr/bin/python。现在,运行下面的程序,找出通往可执行文件的符号链接:

ln -l /usr/bin/python
lrwxrwxrwx 1 root root .... /usr/bin/pyhton -> python2

现在检查一下 $PATH 变量,确定系统查找可执行文件的路径连接顺序:

echo $PATH

PATH 变量

你可以看到 /usr/local/bin/usr/bin/ 之前,那么你可以创建一个软符号链接到 python3。然后你的解释器在运行 python 命令时就会找到最新的 Python 3 而不是 Python 2。

ls -s /usr/bin/python3 /usr/local/bin/python

现在你应该注销并再次登录以清除任何哈希条目,或者你可以运行 hash -r 来清除它们。

现在你可以从终端运行 python,你应该有最新的 Python 3 了。

Python IDE

集成开发环境(IDE)可以帮助你编写、编译和执行你的代码。有 几个免费的 Python 集成开发环境 —— 如 PyCharm、Eclipse、Eric 等,你可以使用。但那将是另一篇关于其优点和缺点的文章。

如果你从官方 python.org 网站下载 Python,Python 还带着一个叫做 IDLE 的默认开发环境。IDLE 适合于起步,之后你可以决定选择任何一个最好的免费 Python IDE。

在 Ubuntu 和 Fedora 中,IDLE 并没有和 Python 一起被默认包含,你必须手动安装它。从终端运行下面的命令来手动安装 IDLE:

Ubuntu:

sudo apt install idle

Fedora:

sudo dnf install python-tools

安装后,你可以从命令行空闲启动 IDLE 或从应用程序中搜索。

IDLE

现在,你可以使用 IDLE 开始你的开发。大部分的基本选项你可以在 IDLE 的文件菜单中找到。

我希望这篇指南解释了你在开始 Python 开发之前应该知道的东西。 尽管本指南主要是针对 Ubuntu 和 Fedora 的,但你仍然可以在所有基于 Ubuntu 和 Fedora 的发行版上参考它。如果你在 Python 环境设置方面遇到问题,请在下面的评论区告诉我。


via: https://www.debugpoint.com/setup-python-environment-ubuntu-fedora/

作者:Arindam 选题:lkxed 译者:wxy 校对:wxy

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

Twitter 修改开发者协议明确禁止第三方客户端

前几天,我们 报道(#882) 过,在没有告知的情况下,众多第三方 Twitter 客户端由于 API 访问受限而不能使用。现在 Twitter 给出了一个解释,“Twitter 正在执行其长期的 API 规则,这可能导致一些应用程序无法工作”。在其 API 规则中添加了一条新的规则,限制开发者“使用或访问授权材料去创建或尝试创建 Twitter 应用的替代或类似的服务或产品”。这意味着 Twitter 明确禁止了开发者开发第三方客户端。

消息来源:The Register
老王点评:我想说 Twitter “醒悟”的太晚了,凭啥让第三方客户端挣钱啊,瞧瞧它的某个山寨品早就干掉第三方客户端了。

因软件故障,7000 盏灯连续亮了 17 个月

美国麻省的一所高中十多年前安装了一种软件控制的照明控制系统,但在 2021 年该软件出现了故障,以至于所有的灯都无法关闭,这 7000 盏灯 24 小时点亮,一直亮了 17 个月。但是由于年代久远,安装该照明系统的公司也几经易手,已经没有修复该系统专有软件了。而更换整个照明系统需要替换大量硬件,一时也无法开展。

消息来源:ARS Technica
老王点评:一方面,软件的淘汰速度要比我们想象的要快,另外一方面,“古老”的电气开关看起来比软件更可靠。

用 AI 检测 AI 撰写的文字

一家从事反剽窃服务的公司正在开发一种新的工具,以检测 ChatGPT 等 AI 工具生成的文字。他们发现 AI 写作中有明显的模式,“人类并不倾向于在高概率的地方持续使用高概率的词,但 GPT-3 会这样做”。他们的检测器基于与 GPT-3 相同的架构,并将其描述为该 GPT-3 的微型版本。“它所做的是以与 GPT-3 阅读语言完全相同的方式阅读语言,但它不是吐出更多的语言。”而是显示一篇文章中似乎有多少是 AI 写的。他们认为该工具可以保护学术诚信。

消息来源:The Register
老王点评:AI 的进步我们只能顺应,而无法逆转。一方面我们要利用 AI 来替我们完成大量初级、重复的工作,另外一方面也可以利用 AI 来防止 AI 用在不当的地方。

本教程将指导你用最简单的步骤在 Windows 上的 Oracle VirtualBox 上安装 Ubuntu 桌面版。

VirtualBox 是 Oracle 的一款流行的虚拟化软件,可用于 Linux、mac 和 Windows 系统。它是灵活的,并提供了许多功能来实现虚拟化。这是在 Windows 中体验 Ubuntu 而不安装它的最佳且简单的方法。然而,我强烈建议将 Ubuntu 以双引导的方式安装在物理机上,从而更好地体验 Ubuntu。

下面列出的步骤假设你是第一次在 Windows 中安装 Ubuntu。因此,这些步骤有点描述性,也有点冗长。此外,以下步骤适用于 Windows 10 和 Windows 11 作为宿主机。

你需要什么

  • 可上网的 PC
  • 用于安装的 Ubuntu Linux ISO 镜像文件
  • 安装了 VirtualBox 的 Windows 系统

使用 VirtualBox 在 Windows 上安装 Ubuntu

下载并安装必要的东西

从以下链接下载 Ubuntu Linux 桌面版 ISO 镜像文件。

下载 Ubuntu 桌面版

此外,请从下面的官方网站下载 Oracle VirtualBox 安装程序。

下载 VirtualBox

VirtualBox for Windows 的下载位置

如何安装和配置 VirtualBox

Windows 中的 VirtualBox 需要 “Microsoft Visual C++ 2019 Redistrobutiable package”。你必须先安装它。从以下链接下载软件包(X64 架构):

下载 MSVC

下载 VirtualBox 的依赖项

安装 VirtualBox 的依赖项

完成以上安装后,从以下链接下载最新的 Python 包。Python 绑定也是 Windows 端 VirtualBox 安装所需的依赖项。

下载 Python for Windows

然后,启动 VirtualBox 安装程序并按照屏幕上的说明进行安装。

安装后,重新启动 Windows 系统。

为 Ubuntu 设置虚拟机

从开始菜单启动 VirtualBox。

从开始菜单中选择 VirtualBox

在 VirtualBox 窗口工具栏上,单击 “ 新建 New ”。

单击新建

  • 在创建虚拟机窗口中,输入虚拟机的名称。它可以是标识此版本 Ubuntu 的任何名称。
  • 保持 “ 文件夹 Folder ” 不变。这是创建虚拟机文件的路径。
  • 在 “ ISO 镜像文件 ISO Image ” 一栏,浏览你下载的 Ubuntu ISO 文件。
  • 然后选择 “ 跳过无人值守安装 Skip Unattended installation ”。如果不选择此选项,将在虚拟机中创建一个 默认用户 id(vboxuser)和密码。让我们暂时不要管它。

选择 ISO 文件

  • 单击 “ 硬件 Hardware ” 部分,并调整虚拟机所需的内存。一般的经验是,虚拟机的内存大小应该小于主机系统中的物理内存。我建议对于 8 GB 内存系统的虚拟机使用 2 GB 到 4 GB。要选择 4 GB 内存,拖动滑块(或键入)使其为 4096 MB(即 4×1024)。
  • 选择 2 或 4 核处理器。

选择硬件

  • 单击 “ 硬盘 Hard Disk ” 部分,并保持文件位置不变。
  • 为 Ubuntu 安装提供至少 20 GB 到 25 GB 的容量。
  • 硬盘文件类型值保持为 VDI(VirtualBox 磁盘镜像)
  • 不要选择 “ 预分配完整大小 Pre-allocate Full Size ”。
  • 最后,单击 “ 完成 Finish ”。

选择硬盘

你应该在 VirtualBox 的左侧面板上看到一个新条目,其中包含一个 Ubuntu 22.04 条目(你之前设置的名称)。

选择条目并单击 “ 开始 Start ” 以引导到虚拟机:

在 VirtualBox 中启动 Ubuntu

使用 VirtualBox 安装 Ubuntu

成功引导后,你应该看到以下屏幕,其中显示了安装 Ubuntu 的各种选项。选择 “ 尝试 Ubuntu Try Ubuntu ” 或 “ 安装 Ubuntu Install Ubuntu ”。

在欢迎屏幕中,单击 “ 尝试 Ubuntu Try Ubuntu ”。过了一会儿,你会看到下面的 Ubuntu 临场 Live 桌面。如果要更改分辨率,请右键单击桌面并选择显示设置。并将分辨率更改为 1400×900。

选择尝试 Ubuntu

在桌面上,双击 “ 安装 Ubuntu Install Ubuntu ”。

Ubuntu LIVE 桌面

在下一组屏幕中,根据需要选择 “ 语言 Language ” 和 “ 键盘布局 Keyboard Layout ”。

选择语言

选择键盘布局

安装屏幕为你提供所需的安装类型。选择 “ 正常安装 Normal Installation ”,然后在 “ 其他选项 Other options ” 下选择两个选项。

选择安装选项

由于你是在虚拟磁盘空间中安装的,即它只是一个文件,因此你可以安全地选择 “ 擦除磁盘并安装 Ubuntu Erase disk and install Ubuntu ” 选项。

安装类型

点击 “ 立即安装 Install Now ” 并 “ 继续 Continue ”。

将更改写入磁盘

然后选择 “ 地区 region ”,添加“ 你的名字 Your name ”、“ 计算机名称 Your computer's name ”、“ 用户名 Username ” 和 “ 密码 Password ”。这将是安装后登录 Ubuntu 的用户 id 和密码。

单击 “ 继续 Continue ” 开始安装。等到它完成。

创建用户帐户

安装完成后,单击 “ 立即重新启动 Restart Now ”。等待几秒钟,你将看到一个登录屏幕。使用用户 id 和密码登录。你应该看到 Ubuntu 桌面在 Windows 端 VirtualBox 中作为 VM 运行。

Ubuntu 安装完成

登录 Ubuntu

使用 Virtualbox 在 Windows 中运行的 Ubuntu

安装后配置和提示(可选)

安装客体机增强项

成功安装后,应为 Windows 宿主机和 Ubuntu 客体机安装 “ VirtualBox 客体机增强项 VirtualBox guest additions ”。客体机增强项是一组需要安装在客体虚拟机(即 Ubuntu)内的软件包,以启用 共享文件夹、双向复制 / 粘贴、自动更改分辨率 和许多类似功能。

要安装它,请引导到 Ubuntu。从 VirtualBox 菜单中,选择“ 设备 Devices > 插入客体机增强 CD 镜像 Insert Guest Additions CD Image ”。必要的软件包将安装在 Ubuntu 中。

从菜单中选择客体机增强

打开文件管理器并打开装入的文件夹,如下所示。然后右键单击 > 选择 “ 在终端中打开 open in terminal ”。

打开已挂载的光盘并选择带有终端的选项

然后运行以下命令:

sudo ./VBoxLinuxAdditions.run

VirtualBox 为 Windows 主机添加客体机增强项

完成上述命令后,重新启动 Ubuntu VM。

启用 Windows 和 Ubuntu 之间的复制和粘贴

要在 Windows 和 Ubuntu 系统之间启用复制和粘贴,请从菜单中选择 “ 设备 Devices > 共享剪贴板 Shared Clipboard > 双向 Bi-directional ”。

启用共享剪贴板

关闭 Ubuntu VM

理想情况下,你应该从自己的关机菜单中关闭 VM。但是,你也可以从 VirtualBox 主窗口关闭。右键单击虚拟机名称并选择 “ 关闭 Close > 关机 Poweroff ”。

关闭虚拟机

如何删除 Ubuntu 并删除所有数据

如果要完全删除虚拟机(例如 Ubuntu)及其数据,请选择 “ 删除 Remove ” 和 “ 删除所有文件 Delete All Files ”。

选择删除以移除虚拟机

选择删除选项

结语

在本教程中,你学习了使用 VirtualBox 在 Windows(10 或 11)上安装 Ubuntu 的最简单方法。此外,你还学习了几步安装后配置 Ubuntu VM 的基本步骤。你可以对 VirtualBox 中的其他任何 Linux 发行版使用上述步骤。

如果你有任何疑问,欢迎在下面发表评论。


via: https://www.debugpoint.com/install-ubuntu-windows-virtualbox/

作者:Arindam 选题:lkxed 译者:ZhangZhanhaoxiang 校对:wxy

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

微软元宇宙梦碎,砍掉了整个 VR/AR 团队

在这波大规模裁员中,微软砍掉了虚拟现实和混合现实项目的整个团队。微软在 2017 年收购的社交虚拟现实平台 AltSpaceVR 被整个砍掉了,该平台将于 3 月 10 日关闭。微软也裁掉了开发混合现实框架 MRTK 的团队,该团队本应在下个月发布新版本,MRTK 目前的重心是混合现实头戴式设备 HoloLens。

消息来源:Windows Central
老王点评:这代表了微软也结束了其在元宇宙领域的努力。建立在 VR/AR 之上的所谓“元宇宙”,前景堪忧啊。

83% 的 GNOME 用户安装了扩展

去年夏天,GNOME 邀请人们自愿在他们的系统上运行一个工具,以对系统配置方面的数据进行宏观统计。有 2560 人运行了这个工具,他们现在公布了这些数据。一些有趣的数据有:在受访者中,一半的用户在运行 Fedora;近 1/4 的用户使用的是联想的机器;90% 的系统都安装了 Flatpak;3/4 的默认浏览器是 Firefox;只有 1/10 的默认浏览器是 Chrome;83% 受访者安装了非默认的 GNOME 扩展。

消息来源:GNOME
老王点评:我最感兴趣这个安装扩展的比例,这充分说明了多样性的用户需求通过扩展的方式来满足是个好方法。

VSCode 扩展市场容易出现欺骗性扩展

根据调查,74.48% 的开发者在使用微软的 VSCode,几乎每个开发者都会使用扩展,而在 VSCode 市场上有超过 4 万个的扩展。研究发现,攻击者可以轻易地冒充流行的扩展,并欺骗不知情的开发者下载它们。一方面很难区分恶意扩展,扩展名称上的蓝色复选标记仅仅意味着发布者对随便一个域名的所有权。虽然 VSCode 市场会对每个新扩展和后续更新进行病毒扫描,并在发现恶意扩展时将其删除。但上传一个扩展,在被删除前很容易欺骗用户下载使用。最糟糕的是,VSCode 的扩展没有沙箱环境,这意味着扩展可以安装勒索软件、擦拭器和其他恶意代码,还可以改变你的本地代码,甚至使用你的 SSH 密钥来改变远程代码库中的代码。

消息来源:Info World
老王点评:同样是扩展的话题,这个消息反映出来的潜在危险令人担心。我想微软应该对 VSCode 的扩展安全做更多的工作。