分类 电脑文库 下的文章

在 Ubuntu 24.04 中,配置静态IP地址主要有三种方法,最推荐的是使用系统默认的网络配置工具 Netplan。

方法一:使用 Netplan(官方推荐,永久生效)

这是 Ubuntu 官方推荐的方法,配置会永久生效。

1. 查看网卡名称
首先,打开终端,输入以下命令查看网卡名称:

ip a

你会看到类似 ens33、enp0s3 或 eth0 的标识,这就是你的网卡名称。

2. 编辑 Netplan 配置文件
Netplan 的配置文件都放在 /etc/netplan/ 目录下。先进入该目录查看:

cd /etc/netplan/
ls

你可能会看到类似 50-cloud-init.yaml 或 01-network-manager-all.yaml 的文件。找到那个文件后,用 nano 或 vim 编辑器打开它:

sudo nano /etc/netplan/50-cloud-init.yaml

注意:YAML 文件对缩进极其敏感,必须使用空格,不能用 Tab 键。

3. 修改配置内容
根据你的网卡名称和网络信息,修改或添加以下内容:

network:
  version: 2
  renderer: networkd   # 服务器版用 networkd,桌面版可改为 NetworkManager[reference:9]
  ethernets:
    ens33:             # 替换成你实际的网卡名称
      dhcp4: false     # 关闭 DHCP,启用静态 IP[reference:10]
      addresses:
        - 192.168.1.100/24  # 你的静态IP地址,/24 代表子网掩码 255.255.255.0[reference:11]
      routes:
        - to: default
          via: 192.168.1.1   # 你的网关地址[reference:12]
      nameservers:
        addresses: [8.8.8.8, 114.114.114.114]  # DNS 服务器地址[reference:13]

4. 应用配置
保存文件并退出编辑器。然后,执行以下命令使配置生效:

sudo netplan apply

你可以用 ip a 命令查看IP是否已更新,并用 ping www.baidu.com 测试网络连通性。

方法二:使用 nmcli 命令行(适用于桌面版)

如果你的系统是桌面版且由 NetworkManager 管理网络,可以使用 nmcli 命令。

1. 查看连接名称

nmcli connection show

记下你要配置的网络连接名称,通常是 Wired connection 1 之类的。

2. 修改为静态IP
将命令中的 "Wired connection 1"、IP地址、网关和DNS换成你的信息:

sudo nmcli con mod "Wired connection 1" ipv4.addresses 192.168.1.100/24
sudo nmcli con mod "Wired connection 1" ipv4.gateway 192.168.1.1
sudo nmcli con mod "Wired connection 1" ipv4.dns "8.8.8.8 114.114.114.114"
sudo nmcli con mod "Wired connection 1" ipv4.method manual

3. 重启连接

sudo nmcli con down "Wired connection 1" && sudo nmcli con up "Wired connection 1"

方法三:使用图形界面(适用于桌面版)

如果你使用的是桌面版,可以通过图形界面配置,非常简单直观。

点击右上角的网络图标,选择“设置”或“有线设置”。

在“网络”窗口中,点击你当前连接网络旁边的齿轮图标。

切换到“IPv4”标签页。

将“IPv4 方法”从“自动(DHCP)”改为“手动 (Manual)”。

在“地址”栏输入你的IP和掩码(如 192.168.1.100/24),在“网关”和“DNS”栏填入相应信息。

点击“应用”保存,然后可以关闭窗口并重连网络使设置生效。

方法四:临时配置(重启后失效)

如果只是临时测试,可以使用 ip 命令,但重启后会失效。

# 为网卡 enp0s3 添加 IP 地址
sudo ip addr add 192.168.1.100/24 dev enp0s3
# 添加默认网关
sudo ip route add default via 192.168.1.1

⚠️ 注意事项与排错

YAML 语法:使用 Netplan 时,务必确保缩进正确,这是最常见的错误源。

配置测试:在 sudo netplan apply 之前,建议先运行 sudo netplan try 来测试配置。如果有语法错误,它会提示并自动回滚,避免你断网。

多配置文件:/etc/netplan/ 目录下可能有多个 .yaml 文件,Netplan 会按文件名数字顺序读取。为避免冲突,建议只编辑或新建一个文件(如 01-netcfg.yaml)进行配置。

渲染器 (renderer):networkd 适用于无图形界面的服务器版;NetworkManager 适用于桌面版。

在Ubuntu系统中,你可以通过以下步骤查看是否安装了OpenVPN,并进行删除操作:

查看是否安装了OpenVPN:

打开终端,输入以下命令来检查OpenVPN是否已安装:

dpkg -l | grep openvpn

如果系统中安装了OpenVPN,该命令将显示相关的软件包信息。
如果没有安装,则不会有任何输出。

删除OpenVPN:

如果你确认系统中安装了OpenVPN,并希望将其删除,可以使用以下命令:

sudo apt-get remove openvpn

这将卸载OpenVPN软件包。
如果你还想删除与OpenVPN相关的配置文件和依赖项,可以使用以下命令:

sudo apt-get purge openvpn
sudo apt-get autoremove

这些命令将彻底删除OpenVPN及其相关文件。

验证删除:

删除完成后,再次运行以下命令以确认OpenVPN已成功卸载:

dpkg -l | grep openvpn

如果没有输出,则表示OpenVPN已成功从系统中删除。
请注意,执行这些操作需要管理员权限,因此需要使用sudo命令。
在执行删除操作之前,建议备份重要的配置文件和数据。

安装 Ubuntu 系统时,系统通常会自动分配磁盘空间,这可能导致部分磁盘容量未被充分利用。由于 Ubuntu 默认采用 LVM(逻辑卷管理),我们可以先执行 df -h 命令查看当前的分区使用情况。

我们目前的情况是:物理磁盘总容量是 20G,但系统根目录(/)只划分了约 10G。这意味着你的 LVM 卷组里还有大约 10G 的“闲置空间”没有被分配给系统使用。
你完全不需要删除任何数据,只需要通过两条命令,就能把这剩下的空间全部扩容到系统盘里。

一键扩容操作

请在终端中依次执行以下两条命令(如果提示输入密码,请输入你的用户密码):
1. 将卷组中所有剩余空间分配给逻辑卷

sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv

这条命令的意思是:把 LVM 卷组里所有空闲的空间(+100%FREE),全部分配给你的系统逻辑卷。
2. 刷新文件系统,让扩容生效

sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

这条命令的意思是:通知 Ubuntu 的 ext4 文件系统,你的底层磁盘变大了,请自动把文件系统扩展到最大容量。

✅ 验证扩容结果

执行完上述两条命令后,你可以再次输入 df -h 查看磁盘状态。
你会发现 /dev/mapper/ubuntu--vg-ubuntu--lv 的 Size 应该已经从原来的 9.8G 变成了接近 20G(扣除引导分区等占用后,大约在 18G-19G 左右),你的系统盘扩容就大功告成了!

将 SMB 共享挂载信息写入 /etc/fstab 是实现开机自动挂载的常用方法。不过,直接将用户名和密码明文写入该文件存在极大的安全隐患。为了保障系统安全并确保挂载稳定,建议采用以下优化方案:

1. 使用凭据文件替代明文密码

将账号密码保存在一个独立的凭据文件中,并严格限制该文件的读取权限,可以有效避免密码泄露。
创建凭据文件:

sudo nano /etc/samba/credentials

在文件中写入以下内容:

username=username
password=password123

保存后,立即修改文件权限,确保仅 root 用户可读:

sudo chmod 600 /etc/samba/credentials

2. 完善 /etc/fstab 配置

在编辑 /etc/fstab 时,除了使用凭据文件,还需要注意以下关键参数:
_netdev:网络共享依赖网络连接。添加此参数可确保系统在网络服务完全就绪后才尝试挂载,避免因网络未通导致开机卡顿或启动失败。
vers=3.0:显式指定 SMB 协议版本,防止因客户端与服务端协议握手不匹配导致挂载失败。
iocharset=utf8:确保中文文件名能够正常显示,避免乱码。

编辑 fstab 文件:

sudo nano /etc/fstab

在文件末尾添加以下单行配置(替换原有的明文密码配置):

//192.168.1.115/share_data /mnt/smb_data cifs credentials=/etc/samba/credentials,uid=1001,gid=1001,dir_mode=0755,file_mode=0755,vers=3.0,iocharset=utf8,_netdev 0 0

3. 验证配置并生效

在重启系统之前,务必先测试配置是否正确,以免因语法错误导致系统异常。
测试挂载:执行 sudo mount -a。如果没有任何报错输出,说明配置语法正确且挂载成功。
验证状态:执行 df -h | grep ftp_data 或 mount | grep cifs,确认共享目录已正确挂载。
重载配置:执行 sudo systemctl daemon-reload,确保 systemd 能够正确识别新的挂载项。
完成以上步骤后,该 SMB 共享目录即可在系统重启后安全、稳定地自动挂载。

OpenAI 开源语音识别模型(Whisper)是一款基于 Transformer 架构的自动语音识别(ASR)系统。该项目于 2022 年 9 月由 OpenAI 发布并开源,旨在为开发者和研究人员提供一个高准确性、稳健且易于使用的语音处理基础工具。

核心技术与特点

Whisper 采用了端到端的编码器-解码器 Transformer 架构,其输入为原始音频信号(通常被分割成 30 秒的片段并转换为对数梅尔频谱图),输出为带有时间戳的文本序列。该模型最显著的特点包括:
海量数据训练:模型使用了从互联网收集的 68 万小时多语言、多任务监督数据进行训练,其中约三分之一为非英语内容。这种大规模且多样化的数据集使其在应对口音、背景噪音及专业术语时具备极强的稳健性。
多任务学习框架:通过引入特殊令牌(Token),单一模型即可同时执行语言识别、短语级时间戳标记、多语言语音转录以及将多种语言翻译成英语等多项任务。
强大的泛化能力:尽管在特定的基准测试(如 LibriSpeech)中可能不如经过微调的专用模型,但在多个不同数据集的零样本(Zero-shot)性能测试中,Whisper 的错误率比其他模型降低了 50%,展现了卓越的跨领域适应能力。

模型版本与部署

为了适应不同的硬件环境和应用场景,Whisper 提供了多种参数规模的预训练模型版本,包括 tiny、base、small、medium 和 large 等,参数量从 39M 到 1550M 不等。例如,tiny 版本适合物联网等资源受限的设备,而 large 版本则适合对高精度有要求的云服务部署。
在部署方式上,Whisper 极其灵活。开发者可以通过 Python 代码在本地(CPU 或 NVIDIA GPU)进行离线推理;也可以通过模型量化和 WebAssembly (WASM) 等技术,直接在浏览器中实现低延迟的离线语音识别。

应用场景

凭借其高准确率和多语言支持能力,Whisper 被广泛应用于多个领域:
医疗健康:将远程问诊中的医患对话实时转录为结构化电子病历,或将多语言患者自述音频自动翻译为英文报告。
在线教育:为课程视频自动生成多语言字幕,或用于分析学生发音并生成个性化纠音报告。
工业与办公:在嘈杂的工业生产线上将语音指令转为控制文本,或用于自动生成会议记录与字幕。