2025年2月28日

在 Debian 12/11/10 上安装 Java JDK 21 或 OpenJDK 21

Java 是一种开源的高级编程语言,以其可靠、健壮和可移植性而闻名。它最初由 Sun Microsystems 在 20 世纪 90 年代创建,但现在由 Oracle Corporation 拥有和维护。 Java 是银行、政府、学校广泛采用的编程语言之一,为全球所有类型的应用程序提供支持。Java 开发工具包 (JDK) 可以描述为由 Oracle 和其他社区贡献者创建的一组工具和库,使您能够快速开发 Java 应用程序。 JDK 包括 Java 运行时环境 (JRE),它是运行 Java 应用程序的核心引擎,以及调试器、编译器和实用程序等附加功能,可提高编程效率。每 3 年,Oracle 就会发布一个 Java 编程语言的 LTS 版本。 Java 的长期支持 (LTS) 版本获得 Oracle 的扩展更新、错误修复、安全更新和支持,而不是短期非 LTS 版本。当使用 Java 在企业和业务设…
2025年2月28日

您应该了解的最常用 Linux 命令

Linux 是一种在程序员和普通用户中非常流行的操作系统 (OS)。它受欢迎的主要原因之一是其出色的命令行支持。我们只能通过命令行界面(CLI)来管理整个Linux操作系统。这使我们只需几个命令即可完成复杂的任务。在本指南中,我们将讨论一些对经验丰富的系统管理员或初学者有用的常用命令。遵循本指南后,用户将能够自信地操作Linux系统。为了更好地组织,这些命令分为三个部分 - 文件系统、网络和系统信息。Linux 文件系统命令在本节中,我们将讨论一些与 Linux 中的文件和目录相关的有用命令。1.cat命令cat命令主要用于显示文件内容。它读取文件的内容并将其显示在标准输出(stdout)上。cat 命令的常见语法是:cat [OPTIONS] [FILE1] [FILE2] ... 让我们使用 cat 命令显示 /etc/os-releas…
2025年2月28日

在 Ubuntu 22.04|20.04|18.04 上安装 Asterisk 20 LTS

Asterisk 是一种开源解决方案,为不同类型行业的许多 VoIP 系统提供支持。指导 Asterisk 开发的公司是 Sangoma。 Asterisk 可用于为小型、中型和大型公司构建通信应用程序。由于它可以在旧硬件上运行,因此初始生产成本极低。 Asterisk 构建的解决方案为全球呼叫中心、运营商和政府机构提供支持。在今天的文章中,我们将在 Ubuntu 系统上安装 Asterisk 版本 20。在执行此安装的服务器上,确保 SIP 端口 5060 UDP/TCP 未被类似应用程序使用。那么让我们开始吧。Asterisk PBX 的特点:Asterisk 是用 C 编程语言编写的它被编写为在 Linux 和其他类型的 Unix 上运行它为商务电话系统提供动力它连接许多不同的电话协议它是一个用于构建具有许多强大功能和应用程序、VoIP 网关和会议系统的 IP PBX…
2025年2月28日

在 Linux 中使用 Make 实用程序和 Makefile [指南]

通过示例 C 项目了解 makefile 的基础知识以及如何使用 make 实用程序在 Linux 中构建应用程序。这是在 Linux 中使用 make 命令的完整初学者指南。你将学到:make命令的目的make命令的安装创建并使用示例 C 项目的 makefilemake 实用程序是什么?make 实用程序是程序员最方便的实用程序之一。其主要目的是编译一个中型到大型的软件项目。 make 实用程序非常有用且用途广泛,甚至 Linux 内核也使用它!要了解 make 实用程序的用处,必须首先了解为什么需要它。随着您的软件变得越来越广泛,您开始越来越依赖外部依赖项(即库)。你的代码开始分成多个文件,天知道每个文件里有什么。编译每个文件并将它们合理地链接在一起以生成必要的二进制文件变得很复杂。“但我可以为此创建一个 Bash 脚本!”为什么是的,你可以!给你更多的…
2025年2月28日

在 Linux 中从 ISO 创建可启动 USB 的 Bash 脚本

Bootiso 是一款功能强大的 Bash 脚本,可轻松安全地从一个 ISO 文件创建可启动 USB 设备。它可以帮助您使用终端中的单个命令从 ISO 创建可启动 USB。这是一个精心定制的脚本,使用 shellcheck 精心组织和验证。它必须以 root 权限运行,如果您的系统上没有它所需的外部程序,它会要求您安装它们并退出。 Bootiso 检查所选 ISO 是否具有正确的 mime 类型,否则退出。为了防止系统损坏,它确保所选设备仅通过 USB 连接。另请阅读:在 Linux 中从 ISO 映像提取和复制文件的 3 种方法在对 USB 设备进行格式化和分区之前,它会提示您接受执行操作以防止任何数据丢失。重要的是,它可以管理因内部命令适当退出而导致的任何故障。此外,它还通过使用 trap 实用程序在退出时清除所有临时文件。在 Linux 中安装 Bootiso 脚本从源安装 b…
2025年2月28日

在 Linux 命令行中连接文件

想要在 Linux 命令行中连接两个文件?以下是如何使用 cat 命令执行此操作。简单来说,连接就是连接两个字符串。例如,有两个字符串:snow和ball。因此,当您连接它们时,它将形成一个字符串snowball。在使用 Linux 时,您经常会发现自己处于必须连接两个或多个文件的情况。因此,在本指南中,我将分享多个连接文件的示例。如何在 Linux 中连接文件当您考虑 Linux 中文本文件的串联时,cat 命令统治着整个类别。为了进行演示,我将使用两个名为 TextFile1 和 TextFile2 的文本文件,它们的文件包含如下:sagar@LHB:~$ cat TextFile1 File contents of TextFile1 sagar@LHB:~$ cat TextFile2 File contents of TextFile2现在,让我们跳到示例…
2025年2月28日

如何在 Linux 中终止卡住或不需要的用户会话

需要有关 Linux 上用户会话卡住的帮助吗?以下是如何终止它们并保持系统平稳、安全地运行。对于 Linux 用户来说,遇到卡住或不需要的用户会话可能是一种令人沮丧的经历。同时,这些会话可能会使您的系统面临潜在风险,使其容易遭受未经授权的访问或数据泄露。因此,无论是由行为不当的应用程序、系统故障还是用户错误引起的,这些挥之不去的会话都会降低工作效率并损害系统安全性和性能。但不要害怕;本文旨在为您提供知识和工具,以重新获得控制并维持 Linux 系统的平稳运行。通过学习处理这些情况的正确方法,您可以确保更安全的计算环境并保护您的宝贵数据。然而,在继续之前,我们需要澄清两个术语的含义:TTY 和 PTS,它们直接涉及终止 Linux 中的用户会话。Linux 中的 TTY 和 PTS 是什么?在Linux中,“PTS”和“TTY”都指的是用于用…
2025年2月28日

如何在 Linux 中显示进程树

您可以使用以下多个命令在 Linux 命令行中显示进程树。所以你使用了killall命令,它杀死了父进程,让你的工作时间白白浪费了?好吧,我经历了同样的事情,所以检查父进程总是一个更好的主意,并且以树的方式列出正在进行的进程是一个好主意。使用ps命令显示进程树Linux 中的 ps 命令用于查找 Linux 中正在进行的进程,它还可以让您以树形方式打印确切的信息。您可以使用 ps 命令的 --tree 选项来显示进程树:ps -ef --forest这里,-e 用于选择每个进程。-f 获取完整格式的详细信息。使用 pstree 命令显示进程树就我个人而言,这是我更喜欢的,因为即使没有任何选择,它也能正常工作。但是您的发行版可能没有预安装它,如果您使用的是基于 Ubuntu 的发行版,则给定的命令应该执行此操作:sudo apt install psmis…
2025年2月28日

修复 Ubuntu 上 Firefox 的尖白色窗口角(快速提示)

Firefox 的尖锐窗口角在我安装 Ubuntu 时让我感到烦恼,但是——万岁! - 今天我找到了解决办法!不确定我在说什么?这里有一张图片可以更好地说明这一点——哦,是的,这个双关语肯定是有意的😉:如果您仔细观察,您应该会发现 Firefox 标题栏具有尖锐的白色尖端,而不是其他应用程序(例如前面的应用程序)所采用的整齐的圆角。当然,有一些注意事项。仅当 Firefox 客户端装饰 (CSD) 选项处于活动状态(即 Firefox 自定义 标题栏 未选中)时,此“问题”才会明显。 (据我所知)常规的 Firefox 标题栏选项不受影响。它是。也不是 Ubuntu 特有的,在 Fedora 上运行 Firefox 的人们有时也会发现这种变化。如果您倾向于最大化或全屏运行 Firefox,那么您很可能从未注意到它,并且现在正用“你在做什么?!”…
2025年2月28日

Linux 中的文件锁定

Linux 中的文件锁定是确保安全处理读/写文件的解决方案。不,这不是关于用密码保护您的文件。当多个进程处理同一个文件时,您可能无法获得有意的输出,因为没有定义进程如何处理同一个文件的顺序!文件锁定是一种解决方案,您可以通过它来确保通过定义顺序来安全地处理要读取/写入的文件。这听起来可能太复杂了,但这完全没问题。因此,在提出解决方案之前,让我先阐明这个问题。为什么需要文件锁定该问题类似于竞争条件,其中多个进程同时修改相同的数据,并且结果严格取决于进程的顺序。假设有两个进程 A 和 B 正在处理名为 account.txt 的文件(初始数据为 100),它们的行为如下:A读取当前值并从初始余额中减去20B 读取当前值并将余额加 50。从纸面上看,一切看起来都很好,最终数据应该是 130,但最终却是另外一些东西。让我告诉你怎么做:过程A…