分类 技术 下的文章

你上次更新通过 Pip 安装的 Python 软件包是什么时候?大多数用户往往会忘记这些 Python 软件包也需要手动更新,因为仅仅更新系统存储库对于软件包来说是不起作用的。

因此,让我们花点时间看看如何使用 Pip,来更新旧的 Python 软件包吧。

如何使用 Pip 升级 Python 软件包

Pip(Pip Installs Packages) 是一个用于管理 Python 软件包的 命令行实用程序 command line utility 。你可以将 Pip 安装 Python 软件包,类比为在 Ubuntu 和 Debian 中使用 apt 管理软件包那样。

因此,接下来就让我们深入了解如何使用这个极好的工具 Pip,来管理与 Python 软件包相关的内容吧。

1、列出过时的 Python 软件包

在计划更新什么软件包之前,我们先要列出有哪些过时的软件包,你可以在其中选择想要更新的软件包,因为大多数人不会想一下子更新整个软件包库。

要列出过时的 Python 软件包,你只需将 pip 命令与 list 选项、--outdated 标志一同使用即可,如下图所示:

pip list --outdated

outdated packages

2、升级特定的软件包

获得可更新的软件包列表后,你可以像我之前提到的那样,选择你要更新的那个特定的软件包,pip 升级软件包命令的语法如下:

pip install package_name -U

例如,我想将名为 anime-api 的软件包升级到最新版本,所以我将使用下面的命令来升级:

pip install anime-api -U

update anime api

3、将软件包升级到特定的版本

没有必要总是使用软件的最新版本,如果你想将软件包升级到不是最新的某个特定版本,参考如下的命令语法:

pip install --upgrade <package>==<version>

例如,我想将名为 xdg 的软件包更新到 5.1 版本,5.1 版本是最新版本的前一个版本,所以可以使用以下命令:

pip install --upgrade xdg==5.1

upgrade xdg to specific iteration

4、使用 Pip 一次性升级所有软件包

请注意:我不建议你一次性升级所以软件包,因为 Python 软件包的依赖项太复杂了,一次性的升级无法处理相互依赖项。

要一次性升级所有 python 软件包,你可以使用以下命令:

pip3 list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip3 install -U

upgrade everything

上面的命令使用了 xargs。首先,会得到所有需要更新的软件包,然后对每个软件包执行 pip3 install -U 命令。

我在这里使用的是 pip3,而不是 pip。在 Ubuntu 22.04 及更高的版本中,pippip3 命令都可以使用。

总结

使用 Pip 一次性更新所有 Python 软件包并不是一个好主意。我发现一次性更新后,软件包之间的依赖关系被破坏了,所以请确保只更新你想要更新的软件包。

如果你还有其他的疑问,就请在评论区中留言吧。


via: https://itsfoss.com/upgrade-pip-packages/

作者:Sagar Sharma 选题:lkxed 译者:chai001125 校对:wxy

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

想知道如何在台式机或笔记本电脑上检查 Ubuntu 和其他 Linux 中的 CPU 和硬盘温度?这是一个快速指南。

如果你是普通用户,那么实际上不需要检查 CPU 或 HDD 温度。但是,如果你使用的是非常旧的硬件或轻薄型的硬件,你可能会遇到过热问题。因为这些薄的硬件内部紧密耦合在一起,无论做了多少传热机制,它都会升温。因此,必须监控硬件的温度。然而,现代 Linux 发行版能够通过软件传感器很好地处理过热情况。

在 Ubuntu 上监控 CPU 和硬盘温度的步骤

使用终端

我们将使用几个包来实现相同的目的。在基于 Ubuntu 的系统中打开一个终端并安装以下内容。

sudo apt install hddtemp
sudo apt install lm-sensors

hddtemp 程序为你提供硬盘和 SSD (根据我的测试)的温度。 lm-sensors 包为你提供来自 CPU 和其他通过 PCI 端口访问的传感器的温度详细信息。

安装后,从终端运行以下命令。你需要知道你的磁盘标识符,例如 /dev/sda/dev/sdb 等。

要找出磁盘标识符,你可以使用 fdisk

sudo fdisk -l

然后运行以下命令检查 HDD 或 SSD 温度。

sudo hddtemp

HDD or SSD Temperature from terminal

来自终端的 HDD 或 SSD 温度

检查 CPU 温度和其他信息需要额外的步骤。

首先,运行以下命令,以便传感器程序可以检测到系统中的传感器。

sudo sensors-detect

上面的命令可能会问你一些是/否的问题。继续按回车选择默认选项。

完成后,运行以下命令查看 CPU 和其他接口温度。

sensors

using sensors

使用传感器

使用 GUI 工具

如果你更喜欢能完成上述所有操作的漂亮 GUI,你可以安装 psensor。该程序适用于 Linux 系统,例如 Ubuntu、Fedora、Arch 和其他变体。它为你提供了漂亮的图形和表格视图:

Ubuntu 及其衍生版:

sudo apt install psensor

Fedora 和基于 RPM 的衍生版:

sudo dnf install psensor

Arch、Manjaro 和类似的衍生版:

pacman -S psensor

安装后,从终端运行 psensor 或从应用菜单启动它。

正如你在下面的截图中所见,它通过漂亮的图表让你可以很好地了解 CPU、GPU 和 HDD 的所有重要温度。使用它的首选项,你可以根据需要对其进行调整。这个轻量级的程序在很多情况下都会很有帮助。

psensor running

psensor 运行

因此,这些是你可以在 Ubuntu 和其他 Linux 系统中监控 CPU、GPU 或 HDD 温度的一些方法。如果你知道其他方法,请通过下面的评论栏告诉我。


via: https://www.debugpoint.com/cpu-hdd-temperature-ubuntu/

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

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

git log 命令是 Git 中一个很重要的查看提交记录的工具,它也是人们喜欢使用 Git 的原因之一。

git log 命令能够让你了解到更多关于贡献者 提交 commit 的记录。使用 git log 的一种方式是按日期查看提交记录 。要查看在指定日期或日期范围内创建的 Git 存储库中的提交记录,请使用带有选项 --since--until 或者同时使用以上两个选项的 git log 命令。

首先,进入你要查看的分支(例如,main 分支):

$ git checkout main

接下来,你可以使用以下命令,来显示当前日期(即今天)的提交记录:

$ git log --oneline --since="yesterday"

仅显示某一特定用户(例如,用户 Agil)在今天的提交记录:

$ git log --oneline --since="yesterday" --author="Agil"

还可以显示在某一日期范围内的提交记录。使用以下命令,显示在任意两个日期之间(例如,2022 年 4 月 22 日至 2022 年 4 月 24 日)的提交记录:

$ git log --oneline --since="2022-04-22" --until="2022-04-24"

在上面这个例子中,会输出 2022 年 4 月 22 日至 2022 年 4 月 24 日期间,不包括 2022 年 4 月 22 日的所有提交记录。如果你想要包括 2022 年 4 月 22 日的提交记录,请将命令中的 2022-04-22 替换为 2022-04-21

运行以下命令,能够显示某一特定用户(例如,用户 Agil)在两个指定的日期之间的提交记录:

$ git log --oneline --since="2022-04-22" --until="2022-04-24" --author="Agil"

总结

Git 有很多优点,其中一个优点就是 Git 让你能够收集你项目的相关数据。git log 命令是一个重要的查看提交记录的工具,也是人们喜欢使用 Git 的原因之一!


via: https://opensource.com/article/22/10/git-log-command

作者:Agil Antony 选题:lkxed 译者:chai001125 校对:wxy

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

这个带有脚本的快速指南有助于清理旧的 Snap 版本并释放 Ubuntu 系统中的一些磁盘空间。

我正在使用的 Ubuntu 测试系统中的磁盘空间不足。因此,我通过 GNOME 的磁盘使用分析器进行调查,以找出哪个包正在消耗宝贵的 SSD 空间。除了通常的缓存和主目录,令我惊讶的是,我发现 Snap 和 Flatpak 消耗了大量的存储空间。

Snap 大小 - 清理前

尽管如此,我始终坚持一个规则:除非必要,否则不要使用 Snap 或 Flatpak。这主要是因为它们的安装尺寸和其他问题。我更喜欢原生 deb 和 rpm 包。多年来,我在这个测试系统中安装和移除了一定数量的 Snap 包。

但卸载后还有问题。Snap 在系统中保留了一些残留文件,一般用户不知道。

所以我打开了 Snap 文件夹 /var/lib/snapd/snaps,发现 Snap 保留了以前安装/卸载的软件包的旧版本。

例如,在下图中,你可以看到 GNOME 3.28、3.34 和 Wine 都被删除了。但它们还在那里。发生这种情况是因为 Snap 的设计,它在正确卸载后保留已卸载软件包的版本。

snaps 目录下的文件

或者,你可以在终端中使用:

snap list --all

snap 列出全部

对于保留的版本,默认值为 3。这意味着 Snap 会保留每个软件包的三个旧版本,包括活动版本。如果你对磁盘空间没有限制,这是可以的。

但是对于服务器和其他情况,这很容易遇到成本问题,它会消耗你的磁盘空间。

但是,你可以使用以下命令轻松修改计数。该值可以在 2 到 20 之间。

sudo snap set system refresh.retain=2

清理 Snap 版本

在 SuperUser 的一篇文章中,Canonical 的前工程经理 Popey 提供了一个简单的脚本,它可以清理旧版本的 Snaps 并保留最新版本。

这是我们将用来清理 Snap 的脚本。

#!/bin/bash
#Removes old revisions of snaps
#CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
    snap remove "$snapname" --revision="$revision"
done

将上面的脚本以 .sh 扩展名保存在一个目录中(例如 clean_snap.sh),赋予它可执行权限并运行。

chmod +x clean_snap.sh

当我运行脚本后,它减少了很多磁盘空间。该脚本还将显示要删除的包的名称。

执行脚本

清理后的 Snap 大小

结束语

对于 Snap 的设计效率如何,人们总是争论不休。许多人说,它的设计是坏的,是臃肿的,是消耗系统资源的。这种说法的某些部分是真实的,我不会否认它。如果实施和加强得当,整个沙盒应用的概念是很好的。但我相信,与 Snap 相比,Flatpak 工作做得更好。

也就是说,我希望这可以帮助你清理一些磁盘空间。尽管它只在 Ubuntu 中进行了测试,但它应该适用于所有支持 Snap 的 Linux 发行版。

此外,请查看我们关于 如何清理 Ubuntu 的指南以及其他步骤。

最后,如果你要清理 Flatpak 应用,请参阅 这篇指南


via: https://www.debugpoint.com/clean-up-snap/

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

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

想在 Linux 上创建一个可启动 Windows USB ?Ventoy 是一个很好的选择。

但是,在 Ventoy 出道之前,WoeUSB 是用于创建可启动 Windows USB 的首选工具。原版 WoeUSB 工程在 2014 年左右香消玉损。

鉴于其流行程度,一位新的开发者接过了将其起死回生的任务。因此,WoeUSB-ng 诞生了。在这里,“ng” 是 新生代 new generation 的缩写。换句话说,WoeUSB-ng 是新生代的 WoeUSB 。但是,因为原版的工具已经不存在了,我将 WoeUSB-ng 描述为 WoeUSB 。

在这篇教程中,我将向你展示如何在 Ubuntu Linux 上安装 WoeUSB 。我也将分享使用 WoeUSB 来创建可启动 Windows USB 的步骤。

但是,在此之前,让我们快速查看这个令人惊叹的工具的特色。

WoeUSB

install woeusb ubuntu

WoeUSB 是一个简单的工具,其唯一的目的是 在 Linux 上创建可启动 Windows USB

原版 WoeUSB 是一个 shell 脚本。这个原版 WoeUSB 被使用 Python 重写为 WoeUSB-ng ,它可以安装在你的系统上,并且通过命令行或 GUI 界面。

特色:

  • 支持老式 PC 启动或 UEFI 启动
  • 支持 FAT32 和 NTFS 文件系统
  • 支持使用物理安装盘或磁盘镜像作为源
  • 它可以用于 Windows Vista 及其更高版本的任意语言或变体版本
  • 老式的 MBR/IBM PC 兼容启动模式
  • 本机 UEFI 启动支持 Windows 7 及其更高版本的镜像(仅限于将 FAT 文件系统作为目标的情况)

在 Ubuntu 和其它的 Linux 发行版上安装 WoeUSB

Arch Linux 用户可以从 AUR 安装 WoeUSB-ng 。

对于其它的发行版,可以使用 PIP 来安装 WoeUSB 。毕竟,它是一个 Python 应用程序。在这里,我将为 Ubuntu/Debian 提供一些命令。

为安装 WoeUSB-ng ,你首先需要 安装 PIP 和其它必要的依赖项。

sudo apt install git p7zip-full python3-pip python3-wxgtk4.0 grub2-common grub-pc-bin

在这之后,你可以安装 WoeUSB-ng ,通过运行:

sudo pip3 install WoeUSB-ng

对于所有的其它安装,你可以参考其 操作指南

WoeUSB-ng

前提条件: 获取 Windows 的 ISO 文件和一个兼容的 USB 磁盘

这一点没有什么需要说的。你需要有一个你将要安装的 Windows 版本的 ISO 文件。

从微软的网站,你应该能够获取 Windows 10 和 11 的ISO 文件。

下载 Windows

如果你有较旧的 Windows 版本的 ISO 文件,也可以使用它们。

除此之外,你需要有一个至少 8 GB 大小的 USB 驱动器磁盘。你应该使用 NTFS 的文件系统来格式化它filesystem.

方法 1: 使用图形用户界面化的 WoeUSB 来创建一个可启动的 Windows USB(推荐)

活动概述 activity overview 或菜单中打开 woeusb-gui 。

woeusb in ubuntu activities overview

在应用程序窗口中,选择下载的 Windows ISO 和所希望的 USB 驱动器,如截屏所示,然后按下 安装 Install 按钮。

woeusb gui setup

在应用程序中也其它可用的调整,可以通过顶部的菜单栏来访问使用。

在按下“安装”按钮后,woeUSB 将开始格式化和复制文件。你需要等待一些时间,因为这里有大约 6 GB 的文件需要复制。

woeusb writing windows iso to the usb drive

在复制完成后,WoeUSB 将会提示一个成功的对话框。你现在可以安全地弹出 USB 驱动器,并将其作为一个可启动 USB 驱动器来使用。

woeusb completed writing and gives a success message

方法 2: 从终端中使用 WoeUSB(针对专家)

WoeUSB-ng 软件包也提供一个名称为 woeusb 的命令行实用程序。

为使用 WoeUSb 来创建一个可启动的 Windows USB ,你需要运行下面的命令:

sudo woeusb --device <path/to/Windows/ISO> <name/of/the/USB/device> --target-filesystem ntfs

在这里,--device 标识用于擦除 USB 和从零开始创建一个可启动 USB 驱动器。同样,--target-filesystem 标识用于设置为 NTFS ,来避免将要复制的文件大小超过 FAT 文件系统的限制。

woeusb commandline

该过程将花费一些时间来完成复制。在完成复制后,它将显示一条成功的信息。

woeusb commandline success message

此时,你可以安全地弹出 USB 驱动器,并在其它的个人电脑上将其作为一个 Windows 可启动 USB 来使用。

超值: 使用 WoeUSB 的 Bash Shell 脚本(针对专家)

WoeUSB 也提供一个 Bash Shell 脚本,在你的系统上,它不需要安装任何东西就可以使用。

首先,你需要从 该工程的发布版本页面 下载 Shell 脚本。

执行 Shell 文件 之前,你需要获取所需要的依赖项。为安装它,运行:

sudo apt install wimtools

现在,通过文件管理器或通过命令行来使它可执行。

make woeusb script executable

或者,你可以运行 chmod +x <path/to/script> 来使它可执行。现在,运行已下载目录中的 ./woeusb-5.2.4.bash -h 来获取帮助。

为创建一个现场 USB ,该进程类似于 woeusb-ng 的命令行部分,但是你没有安装任何东西。

因此,在一个终端中,运行:

sudo <path/to/downloaded/script/file> --device <path/to/windows/ISO> <name-of-USB-device> --target-filesystem ntfs

这将开始将 ISO 写入 USB 驱动器,如下面的截屏所示:

woeusb bash script running without installation

在完成后,你可以安全地弹出 USB 驱动器,并将其作为可启动 USB 使用。

移除 WoeUSB

如果你使用 PIP 安装 WoeUSB ,你也可以类似地移除它:

pip3 uninstall WoeUSB-ng

你可以在你的系统上保留或移除已安装的依赖项。这完全取决于你。我建议保留它们。

总结

大约 10 年前,WoeUSB 是一个非常流行的工具。其他人以另外一种形式将其复活是很好的,这就是开源的艺术。

我希望这篇教程会帮助你。如果通过 WoeUSB 创建的 Windows USB 不能按部就班地工作,你可以 尝试使用 Ventoy 。享受它。


via: https://itsfoss.com/install-woeusb-ubuntu/

作者:Sreenath 选题:lkxed 译者:robsean 校对:wxy

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

以下是快速检查在运行 Xorg 还是 Wayland 显示服务器的方法。

随着时间的推移,现代 Wayland 显示服务器正在进入所有 Linux 发行版。尽管老旧的 Xorg 仍然能用并且会继续存在,但 Wayland 无疑在安全性和其他性能方面更好。

但是,Xorg 不会很快完全淘汰。可能永远不会。

如果你在运行任何 Linux 发行版,如何检查运行的是 Xorg 还是 Wayland?下面是方法。

Wayland 或 Xorg:你在运行哪一个?

在你的 Linux 发行版(例如 Ubuntu、Fedora、Arch 等)中打开一个终端窗口(CTRL+ALT+T)。

然后输入以下命令并回车:

echo $XDG_SESSION_TYPE

命令输出会告诉你当前会话是 Wayland 还是 Xorg(X11)。

[debugpoint@fedora ~]$ echo $XDG_SESSION_TYPEwayland

此命令可以为你提供有关 Xorg 或 Wayland 的详细信息

这很简单。但是,还有其他方法。

其他方法

使用设置

如果你需要图形方法,请打开你的 Linux 发行版的设置应用。在关于部分,你应该看到某个标签下中的 Wayland/X11。

例如,在 GNOME 设置中,你可以在 “ 窗口子系统 Windowing system ” 下找到它,如下图所示:

在 GNOME 设置中可以找到它

使用会话值

你还可以使用 systemd 登录管理器 loginctl 找到它。请记住,它仅适用于基于 systemd 的系统。

打开终端并运行以下命令。你可以看到会话 id 值。在此示例中为 c2

loginctl

现在,将会话 ID 传递给以下命令以获取显示服务器类型。确保将 c2 更改为你的系统规格。

loginctl show-session c2 -p Type

使用 loginctl 查找

总结

这些是你可以确定在 Linux 系统中运行的是 Systemd 还是 Xorg 的一些方法。你还可以在 shell 脚本中使用上述命令来实现进一步的流程自动化。

祝好。


via: https://www.debugpoint.com/check-wayland-or-xorg/

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

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