news 2026/8/23 9:31:49

ubuntu2604

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ubuntu2604

用习惯了redhat系列,记录ubuntu与redhat不同的一些地方

防火墙

防火墙:ufw vs firewalld

systemctl status ufw.service

selinux

ubuntu默认不安装selinux

关机与重启

ubuntu关机

halt 物理机会卡在System halted黑屏界面,需要手动按电源按钮断电

halt -p 强制切断电源,等价poweroff

shutdown -h now 优雅关机 ******

init 0 不能关机

init 6 不能重启,重启用reboot

网络配置

两种渲染器

systemd-networkd(服务器版默认,内存占用小)

NetworkManager(桌面版默认)

netplan get renderer 查看使用的渲染器,输出null时结合OS版本判断

networkctl

networkctl down ens33 链路down

network up ens33 链路up

网络配置文件

/etc/netplan/00-installer-config.yaml

cat /etc/netplan/00-installer-config.yaml
network:
version: 2
ethernets:
ens33:
match:
macaddress: "00:0c:29:24:79:1b"
dhcp4: true
dhcp6: true
set-name: "ens33"
ens34:
dhcp4: true
dhcp6: true
accept-ra: true

如果出现多网卡网关导致路由问题,在非默认岀口网卡上增加以下选项:

dhcp4-overrides:
use-routes: false

root@server:~# cat /etc/netplan/00-installer-config.yaml # This is the network config written by 'subiquity' network: ethernets: ens33: addresses: - "192.168.3.123/24" nameservers: addresses: - 223.5.5.5 - 223.6.6.6 routes: - to: "default" via: "192.168.3.1" dhcp4: false ens34: accept-ra: true dhcp4: true dhcp4-overrides: use-routes: false version: 2

查看IP地址

netplan status

能够获取IP、网关、DNS等信息,ip address只能看到IP地址

服务器版

默认使用systemd-networkd管理网络,使用netplan进行配置

netplan get renderer 输出为null,默认为systemd-networkd管理网络

设置固定IP

netplan get可获取配置文件内容

通过配置文件修改IP地址

cat /etc/netplan/00-installer-config.yaml
network:
version: 2
renderer: networkd
ethernets:
ens33:
match:
macaddress: "00:0c:29:24:79:1b"
optional: true 网卡状态不会阻塞开机过程
addresses:
- "192.168.3.113/24"
nameservers:
addresses:
- 223.5.5.5
- 223.6.6.6

dhcp4: false
dhcp6: true
set-name: "ens33"
routes:
- to: "default"
via: "192.168.3.1"

ens34:
dhcp4: true
dhcp6: true
accept-ra: true

通过netplan命令修改
设置静态IP

按照yaml定义层级逐级写

netplan set ethernets.ens33.addresses="[192.168.3.113/24]" 添加静态IP地址,但不删除原IP

netplan set ethernets.ens33.addresses=null要想只设置一个IP,需先设置为空后再添加

netplan set ethernets.ens33.routes='[{"to":"default","via":"192.168.3.1"}]' 设置默认路由(网关)

netplan set ethernets.ens33.nameservers.addresses="[223.5.5.5,8.8.8.8]" 添加而不删除

所有命令均需在执行netplan apply后生效

切换回dhcp

netplan set ethernets.ens33.addresses=null 先清除所有IP

netplan set ethernets.ens33.dhcp4=true 再设置为dhcp, 之后netplan apply生效

netplan set ethernets.ens33.gateway4=null 将某参数设置为空,删除此参数

设置双网卡绑定

modprobe bonding

echo "bonding" | sudo tee -a /etc/modules

测试时拔网线,不要使用networkctl或ip link set控制

802.3ad模式

cat /etc/netplan/00-installer-config.yaml
network:
version: 2
renderer: networkd
ethernets:
ens33: {}
ens34: {}
bonds:
bond0:
interfaces:
- ens33
- ens34
addresses:
- "192.168.3.113/24"
routes:
- to: "default"
via: "192.168.3.1"
nameservers:
addresses:
- 223.5.5.5
- 223.6.6.6
parameters:
mode: "802.3ad"
mii-monitor-interval: 100
transmit-hash-policy: "lay3+4"

如果交换机没有配置聚合组,则会收到报错信息

active-backup模式

cat /etc/netplan/00-installer-config.yaml
network:
version: 2
renderer: networkd
ethernets:
ens33: {}
ens34: {}
bonds:
bond0:
interfaces:
- ens33
- ens34
addresses:
- "192.168.3.113/24"
routes:
- to: "default"
via: "192.168.3.1"
nameservers:
addresses:
- 223.5.5.5
- 223.6.6.6
parameters:
mode: "active-backup"
primary: ens33
mii-monitor-interval: 100

balance-alb模式

cat /etc/netplan/00-installer-config.yaml
network:
version: 2
renderer: networkd
ethernets:
ens33: {}
ens34: {}
bonds:
bond0:
interfaces:
- ens33
- ens34
addresses:
- "192.168.3.113/24"
routes:
- to: "default"
via: "192.168.3.1"
nameservers:
addresses:
- 223.5.5.5
- 223.6.6.6
parameters:
mode: "balance-alb"
primary: ens33
mii-monitor-interval: 100

服务器版切换renderer

将systemd-networkd切换为NetworkManager

apt install network-manager

systemctl disable --now systemd-networkd

systemctl enable --now NetworkManager

修改配置文件,加入下图红框设置 vim /etc/netplan/00-installer-config.yaml

之后netplan apply

systemctl restart NetworkManager

如果要切换回netplan,设置renderer为networkd

桌面版

默认使用Network-Manager管理网络,使用nmcli进行配置

可以使用nmcli及nmtui设置IP地址,与redhat系列配置一样

nmtui设置网卡绑定参考:

linux网卡绑定bond设置一步不少_linux图形化如何配置bond-CSDN博客https://blog.csdn.net/zhangli2009x/article/details/161117232?spm=1001.2014.3001.5501

软件包管理

apt

apt 相当于yum 或 dnf

apt install net-tools

apt install -d xxx 只下载,不安装

apt search nginx 查找nginx

apt show nginx 显示nginx属性信息

apt list --all-versions nginx 查看nginx所有版本

apt list --installed 查看本机已安装软件

apt list --upgradable 仅查看可升级的包,不执行升级

apt remove 删除软件,不删除配置文件

apt purge 彻底删除软件,移除配置文件

apt clean 清理缓存

apt-mark hold nginx 锁定nginx版本,防止升级(生产实用)

apt-mark unhold nginx 解除锁定

apt-mark showhold 显示所有锁定

dpkg

dpkg相当于rpm

dpkg -i xx.deb 安装

dpkg -r xx.deb 卸载,保留配置文件

dpkg -P xx.deb 卸载,移除配置文件

dpkg -l 列出所有

dpkg -l | grep openssl 过滤

dpkg -S /usr/bin/nmcli 查询文件属于哪个包

dpkg -L openssl-server 查询包安装了哪些文件

软件仓库配置

cat /etc/apt/sources.list.d/ubuntu.sources

替换为阿里仓库源

Ubuntu镜像-Ubuntu镜像下载安装-开源镜像站-阿里云https://developer.aliyun.com/mirror/ubuntu?spm=a2c6h.13651102.0.0.89821b11tbiL2K

DNS

resolvectl 查看dns

日志

/var/log/syslog # 综合系统日志(日常排错首选,替代messages)

/var/log/kern.log # 内核日志(网卡、bond、驱动、硬件报错重点看这里)

/var/log/auth.log # SSH登录、sudo、认证安全日志

/var/log/dmesg # 开机内核缓冲区日志

/var/log/ufw.log # 防火墙日志

/var/log/dpkg.log # apt/dpkg软件安装日志

/var/log/boot.log # 系统启动日志

journalctl -f # 实时跟踪所有日志

journalctl -k # 只看内核日志(等同于kern.log)

journalctl --since "1 hour ago"

journalctl -u systemd-networkd # 只看网络服务日志

设置时区

timedatectl list-timezones | grep -i shanghai

timedatectl set-timezone Asia/Shanghai

systemctl restart systemd-timedated.service

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/23 9:30:58

FileMover文件批量迁移工具:从核心原理到生产环境实战指南

在实际开发或日常工作中,我们经常遇到需要批量整理、迁移或备份文件的需求。例如,将某个文件夹下所有图片移动到新目录,或者将下载文件夹里的文档按类型分类备份。手动操作不仅效率低下,还容易出错。虽然操作系统提供了基础的复制…

作者头像 李华
网站建设 2026/8/23 9:29:36

AI工程师面试进阶:35-50题深度解析与实战策略

1. AI面试题解析的价值与定位 在人工智能行业快速发展的当下,技术面试已经成为筛选人才的关键环节。作为从业多年的AI工程师,我整理了35-50题这个区间的典型面试问题,这些问题往往代表着企业考察候选人的深度技术边界。不同于基础概念题&…

作者头像 李华
网站建设 2026/8/23 9:25:21

大模型面试核心八问与工程师能力体系解析

1. 大模型面试的核心价值与准备策略 大模型应用开发工程师岗位在2023年成为AI领域最炙手可热的职位之一。头部科技公司为此类岗位开出的年薪普遍在60-150万区间,但真正符合要求的人才却凤毛麟角。我在过去半年参与了公司的大模型团队组建,面试了超过50位…

作者头像 李华
网站建设 2026/8/23 9:22:26

前缀和与哈希表在子数组和问题中的应用:以Codeforces经典题为例

1. 项目概述:从一道经典CF题看前缀和与哈希表的威力最近在Codeforces上刷题,又翻到了ICM Technex 2017和Codeforces Round #400 (Div. 1 Div. 2, combined)这场比赛的C题,题目叫“Molly‘s Chemicals”。这道题可以说是前缀和思想结合哈希表…

作者头像 李华