当前位置: 首页 > news >正文

(2024年最新)Linux(Ubuntu) 中配置静态IP(包含解决每次重启后配置文件失效问题)


Hello! 亲爱的小伙伴们,大家好呀(Smile~)!我是Huazzi,欢迎观看本篇博客,接下来让我们一起来学习一下Ubuntu 中如何配置静态IP吧!祝你有所收获!


提前对Linux有所了解的小伙伴应该知道(没了解过的小伙伴也没关系,继续往下看了就能有所了解了):

在 Linux 操作系统中,Linux 文件系统遵循 FHS (Filesystem Hierarchy Standard),每个目录都有特定的用途,而我们今天的主角/etc 目录主要包含 系统配置文件
想要进一步了解Linux系统各个目录的主要用途的小伙伴,欢迎前往另一篇博客:Linux 文件系统目录结构及其简要介绍


文章目录

    • 操作步骤
      • 前期准备
      • 手动配置静态 IP
        • 报错处理

操作步骤

前期准备

Ubuntu 使用的是 netplan 网络管理工具,所以在正式开始配置静态IP的配置文件前,我们先来检查一下我们/etc/netplan目录下都有哪些东西:
操作命令:

ls /etc/netplan

如果有小伙伴发现有一个50-cloud-init.yaml文件:
在这里插入图片描述
那么就要注意啦!(如果没有的小伙伴可以直接跳过这一步)

这是一个配置文件是 cloud-init 用于配置网络的 YAML 文件:

  • 文件是由 数据源(datasource) 自动生成的,任何更改在重启后将丢失。

在配置静态IP之前,需要先禁用 cloud-init 对网络的配置管理

为什么要禁用 cloud-init?

  • cloud-init 会在系统启动时根据云数据源提供的信息自动配置网络。
  • 如果你手动修改了 /etc/netplan/ 下的网络配置文件,但没有禁用 cloud-init,它可能会在下次重启时重置你的配置。
  • 为了让静态 IP 配置永久生效,禁用 cloud-init 是一个必要步骤

禁用 cloud-init的操作步骤:

  1. 先创建一个禁用网络配置的文件:
   sudo vim /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
  1. 写入:
network: {config: disabled}
  1. 重启系统:
sudo reboot

注意啦,现在开始正式配置静态IP配置文件~

手动配置静态 IP

我们要将网络配置修改为静态 IP(而不是 DHCP 自动获取),我们需要手动编辑 netplan 配置文件。
操作命令:

sudo vim /etc/netplan/01-netcfg.yaml

dhcp4: true 替换为静态 IP 配置,然后根据自己的需要改一下即可:

network:ethernets:ens33:dhcp4: falseaddresses:- 192.168.1.100/24    # 静态 IP 和子网掩码gateway4: 192.168.1.1   # 默认网关nameservers:addresses:- 8.8.8.8         		# DNS 服务器 1- 114.114.114.114         # DNS 服务器 2version: 2

应用更改:
保存文件后,执行:

sudo netplan apply

此时网络将切换到静态 IP。


报错处理

这时候,小伙伴们可能会遇到报错:
在这里插入图片描述

这是为什么呢?我们一起来看一下
这些警告信息表示两个问题:

  1. 文件权限过于开放/etc/netplan/01-netcfg.yaml 的权限设置不安全。
  2. gateway4 已被弃用:需要使用默认路由的配置方式。

知道了原因不就好解决了嘛
解决方法:

  1. 修复文件权限过于开放的问题
    Netplan 配置文件的权限要求是 600(仅限 root 读写),当前文件权限可能过于开放。

修改文件权限:

想要进一步了解Linux文件权限相关操作的小伙伴欢迎移步Linux文件权限与所有者管理命令

执行以下命令将权限设置为安全值:

sudo chmod 600 /etc/netplan/01-netcfg.yaml

确认文件权限:

ls -l /etc/netplan/01-netcfg.yaml

输出应类似于:

-rw------- 1 root root 123 Jun 20 03:01 /etc/netplan/01-netcfg.yaml

表明已经修改好了


  1. 替换已弃用的 gateway4
    gateway4 已被弃用,需要使用 默认路由 的配置方式。

修改 /etc/netplan/01-netcfg.yaml 文件
找到 gateway4,并将其替换为默认路由配置:

旧配置:

gateway4: 192.168.1.1

新配置:

routes:- to: defaultvia: 192.168.1.1

  1. 更新 Netplan 配置
    修改完成后,保存文件并执行以下命令:
sudo netplan apply

  1. 验证配置是否生效
  • 查看 IP 地址和路由信息:

    ip addr
    ip route
    
  • 确保默认路由已生效,输出应类似于:

    default via 192.168.1.1 dev ens33 proto static
    

最后,给个完整示例配置

修改后的 /etc/netplan/01-netcfg.yaml 应类似以下内容:

network:version: 2ethernets:ens33:dhcp4: falseaddresses:- 192.168.1.100/24   # 静态 IP 和子网掩码routes:- to: defaultvia: 192.168.1.1   # 默认路由nameservers:addresses:- 8.8.8.8         		# DNS 服务器 1- 114.114.114.114         # DNS 服务器 2

完成后,所有警告都将消失,并且静态 IP 配置将正常生效。


到此,我们的任务就完成啦!
如果小伙伴们还遇到其他的什么问题,欢迎在评论区一起讨论!!!
祝小伙伴们收获满满!!

相关文章:

(2024年最新)Linux(Ubuntu) 中配置静态IP(包含解决每次重启后配置文件失效问题)

Hello! 亲爱的小伙伴们,大家好呀(Smile~)!我是Huazzi,欢迎观看本篇博客,接下来让我们一起来学习一下Ubuntu 中如何配置静态IP吧!祝你有所收获! 提前对Linux有所了解的小伙伴应该知道…...

DPDK用户态协议栈-TCP Posix API 2

tcp posix api send发送 ssize_t nsend(int sockfd, const void *buf, size_t len, __attribute__((unused))int flags) {ssize_t length 0;void* hostinfo get_host_fromfd(sockfd);if (hostinfo NULL) {return -1;}struct ln_tcp_stream* stream (struct ln_tcp_stream…...

[IT项目管理]项目时间管理(本章节3w字爆肝)

七.项目时间管理 7.1 项目进度的重要性 为什么要重视项目进度:在项目进行的过程之中会遇到变故。但是不论项目中发生了什么,时间总是在流逝,就可能会导致项目不可以在规定的时间完成。 7.2可能影响项目进度的因素 有员工离职个人的工作方…...

【python因果库实战5】使用银行营销数据集研究营销决策的效果5

目录 接触次数的效应 重新定义治疗变量和潜在混杂因素 更深入地审视干预情景 逆概率加权 标准化 总结及与非因果分析的比较 接触次数的效应 我们现在转而研究当前营销活动中接触次数的数量(campaign)对积极结果发生率的影响。具体来说,…...

【Qt】QWidget中的常见属性及其功能(二)

目录 六、windowOpacity 例子: 七、cursor 例子: 八、font 九、toolTip 例子: 十、focusPolicy 例子: 十一、styleSheet 计算机中的颜色表示 例子: 六、windowOpacity opacity是不透明度的意思。 用于设…...

9 OOM和JVM退出。OOM后JVM一定会退出吗?

首先我们把两个概念讲清楚 OOM是线程在申请堆内存,发现堆内存空间不足时候抛出的异常。 JVM退出的条件如下: java虚拟机在没有守护线程的时候会退出。守护线程是启动JVM的线程,服务于用户线程。 我们简单说下守护线程的功能: 1.日志的记录…...

学习笔记070——Java中【泛型】和【枚举】

文章目录 1、泛型1.1、为什么要使用泛型?1.2、泛型的应用1.3、泛型通配符1.4、泛型上限和下限1.5、泛型接口 2、枚举 1、泛型 Generics 是指在定义类的时候不指定类中某个信息(属性/方法返回值)的具体数据类型,而是用一个标识符来…...

【工具变量】碳排放市场交易数据(2013-2023年)

一、时间范围:2013年8月5日到2023年1月13日 二、具体指标: 交易日期 城市名称 交易品种 开盘价 最高价 最低价 成交均价 收盘价 前收盘价 涨跌幅 总成交量 总成交额 …...

【视频生成模型】——Hunyuan-video 论文及代码讲解和实操

🔮混元文生视频官网 | 🌟Github代码仓库 | 🎬 Demo 体验 | 📝技术报告 | 😍Hugging Face 文章目录 论文详解基础介绍数据预处理 (Data Pre-processing)数据过滤 (Data Filtering)数据标注 (Data…...

基线检查:Windows安全基线.【手动 || 自动】

基线定义 基线通常指配置和管理系统的详细描述,或者说是最低的安全要求,它包括服务和应用程序设置、操作系统组件的配置、权限和权利分配、管理规则等。 基线检查内容 主要包括账号配置安全、口令配置安全、授权配置、日志配置、IP通信配置等方面内容&…...

uniapp跨端适配—条件编译

在uniapp中,跨端适配是通过条件编译实现的。条件编译允许开发者根据不同的平台(如iOS、Android、微信小程序、百度小程序等)编写不同的代码。这样可以确保每个平台上的应用都能得到最优的性能和用户体验。 以下是uniapp中条件编译的基本语法…...

【Java基础面试题013】Java中静态方法和实例方法的区别是是么?

回答重点 静态方法 使用static关键字修修饰的方法属于类随着类的加载而加载,随着类的卸载而消失可以通过类名直接调用,也可以通过对象调用,但是这种方式不推荐,会混淆意义,也不利于后期维护与扩展 class Example {st…...

C语言入门(一):A + B _ 基础输入输出

前言 本专栏记录C语言入门100例,这是第(一)例。 目录 一、【例题1】 1、题目描述 2、代码详解 二、【例题2】 1、题目描述 2、代码详解 三、【例题3】 1、题目描述 2、代码详解 四、【例题4】 1、题目描述 2、代码详解 一、【例…...

Vue日历组件FullCalendar使用方法

FullCalendar &#xff08;全日历&#xff09;Vue组件的使用 FullCalendar官方文档地址 FullCalendar日历组件支持Vue React Angular Javascript Vue2的框架示例&#xff1a; npm install --save fullcalendar/core fullcalendar/vue<template><div class"cal…...

TinyML在OBD-II边缘设备上燃油类型分类的实现与优化

论文标题&#xff1a;TinyML Implementation and Optimization for Fuel Type Classification on OBD-II Edge Device&#xff08;TinyML在OBD-II边缘设备上燃油类型分类的实现与优化&#xff09; 作者信息&#xff1a;Miguel Amaral, Morsinaldo Medeiros, Matheus Andrade, …...

vue3 中 defineProps 声明示例

1、直接声明 // 1、直接使用 defineProps(["tableData", "acceptType"]); 2、运行时声明方式不使用TypeScript类型注解&#xff0c;而是使用JavaScript对象&#xff0c;使用 type 来定义props // 2、运行时声明方式不使用TypeScript类型注解&#xff0c;…...

SpringBoot整合MybatisPlus报错Bean不存在:NoSuchBeanDefinitionException

报错信息&#xff1a; Exception in thread “main” org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type ‘com.feng.mybatisplusdemo.dao.UserMapper’ available 解决办法&#xff1a; 将原来引入的MybatisPlus依赖&#xff1a…...

异步电机的控制是否还有研究的必要,是不是已经非常成熟了?

随着工业现代化和自动化进程的加快&#xff0c;异步电机作为最为常见的电动机之一&#xff0c;广泛应用于各类机械设备和工业自动化系统中。异步电机因其结构简单、成本低廉、维护方便等优点而备受青睐。 异步电机的基本原理与应用 异步电机&#xff0c;又称感应电机&#xf…...

【Android】解决 ADB 中 SELinux 设置与 `Failed transaction (2147483646)` 错误

解决 ADB 中 SELinux 设置与 Failed transaction (2147483646) 错误 在使用 ADB 进行开发和调试时&#xff0c;经常会遇到由于 Android 系统安全策略&#xff08;SELinux&#xff09;引起的权限问题&#xff0c;尤其是在执行某些操作时&#xff0c;可能会遇到类似 cmd: Failur…...

企业车辆管理系统(源码+数据库+报告)

一、项目介绍 352.基于SpringBoot的企业车辆管理系统&#xff0c;系统包含两种角色&#xff1a;管理员、用户,系统分为前台和后台两大模块 二、项目技术 编程语言&#xff1a;Java 数据库&#xff1a;MySQL 项目管理工具&#xff1a;Maven 前端技术&#xff1a;Vue 后端技术&a…...

实战指南:运用快马平台与mcp协议构建企业级智能数据分析系统

今天想和大家分享一个最近用InsCode(快马)平台实现的实战项目——基于MCP协议的企业级智能数据分析系统。这个项目特别适合需要整合多源数据的企业场景&#xff0c;整个过程让我深刻体会到MCP协议在复杂系统中的桥梁作用&#xff0c;以及快马平台如何让这类应用的开发部署变得异…...

防爆气象站为什么能够成为化工行业的必备仪器

防爆气象站能够成为化工行业的必备仪器&#xff0c;主要基于其本质安全设计、多参数精准监测、实时预警能力、环境适应性、合规管理支持及生产优化价值六大核心优势&#xff0c;这些特性直接解决了化工行业在安全管控、工艺控制及合规运营中的关键痛点。一、本质安全设计&#…...

三极管信号滤波原理与工程实践

1. 三极管在信号滤波中的独特应用作为一名嵌入式硬件工程师&#xff0c;我经常需要处理各种传感器信号。最近在无刷电机驱动项目中&#xff0c;遇到了霍尔信号毛刺干扰的问题。传统教科书上总是强调三极管的放大作用&#xff0c;但实际工程中&#xff0c;我发现三极管在信号滤波…...

QModMaster:5分钟掌握免费开源ModBus调试工具终极指南

QModMaster&#xff1a;5分钟掌握免费开源ModBus调试工具终极指南 【免费下载链接】qModbusMaster 项目地址: https://gitcode.com/gh_mirrors/qm/qModbusMaster 你是否在为工业设备调试而烦恼&#xff1f;面对复杂的ModBus通信协议&#xff0c;商业软件价格昂贵&#…...

DeepSeek句式重构指令怎么用?手把手教你降AI率超过30%

第一次操作的话&#xff0c;照着下面的步骤来&#xff0c;15分钟内搞定DeepSeek句式重构指令、降AI、降AIGC率。 工具选嘎嘎降AI&#xff08;www.aigcleaner.com&#xff09;&#xff0c;达标率99.26%&#xff0c;有退款保障&#xff0c;操作也不复杂。 准备工作 需要准备的&…...

CSS 滚动驱动动画:让页面动起来的新维度

CSS 滚动驱动动画&#xff1a;让页面动起来的新维度代码如诗&#xff0c;滚动如歌。让我们用滚动驱动动画的魔法&#xff0c;为用户带来沉浸式的浏览体验。什么是滚动驱动动画&#xff1f; 滚动驱动动画&#xff08;Scroll-driven Animations&#xff09;是 CSS 中一项革命性的…...

ftools架构深度解析:Stata大数据处理的技术革命

ftools架构深度解析&#xff1a;Stata大数据处理的技术革命 【免费下载链接】ftools Fast Stata commands for large datasets 项目地址: https://gitcode.com/gh_mirrors/ft/ftools 在数据科学和经济学研究的实践中&#xff0c;Stata用户经常面临一个共同的挑战&#x…...

2025年9月中国电子学会青少年软件编程(图形化)等级考试试卷(一级)答案 + 解析

25年3月一级真题在线测评&#xff1a;http://jw.52coding.site/s/mwIJDR 青少年软件编程&#xff08;图形化&#xff09;等级考试试卷&#xff08;一级&#xff09; 一、单选题(共25题&#xff0c;共50分) 1.当前舞台背景为最后一个背景“背景3”&#xff0c;使用“下一个背景”…...

告别NMS!用RT-DETR在1080Ti上跑出108FPS的实时目标检测(保姆级部署教程)

在1080Ti上实现108FPS的RT-DETR实时目标检测实战指南 当目标检测遇上Transformer架构&#xff0c;一场关于速度与精度的革命正在悄然发生。RT-DETR作为DETR家族的最新成员&#xff0c;不仅继承了端到端集合预测的基因&#xff0c;更通过一系列创新设计突破了实时检测的瓶颈。本…...

告别重复造轮子:用快马AI一键生成可配置的魔鬼面具UI组件库

作为一个经常需要处理各种UI组件的前端开发者&#xff0c;最近在做一个万圣节主题项目时&#xff0c;遇到了一个有趣的挑战&#xff1a;需要快速开发一套可配置的魔鬼面具组件库。传统手动编码方式不仅耗时&#xff0c;而且难以应对多风格需求。幸运的是&#xff0c;我发现了In…...