V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Macv1994
V2EX  ›  程序员

请教一个 Linux 相关的问题

  •  
  •   Macv1994 ·
    weijiang1994 · 2023-05-05 12:34:29 +08:00 · 2327 次点击
    这是一个创建于 560 天前的主题,其中的信息可能已经有所发展或是发生改变。

    /boot 目录的文件为什么总是会自动更新呀?而且更新完成之后文件的权限也变了 而且我使用 who -b 查看,机器也没有重启也? 有咩有大佬科普一下 /boot 这个目录下的文件为啥会自动更新呀? 我看里面好像是一些内核文件???不是太懂

    18 条回复    2023-05-18 16:13:01 +08:00
    litguy
        1
    litguy  
       2023-05-05 13:29:34 +08:00
    你升级系统的时候,大概率安装了新内核
    正常,管这个干啥嘛
    imes
        2
    imes  
       2023-05-05 13:41:41 +08:00
    /boot 是存放引导文件和内核的地方,估计是内核文件更新了,或者你开了 livepatch 之类的热替换功能。只要能正常使用,不建议轻易去动这个文件夹里的任何东西,也不需要关注里面的东西。
    deplivesb
        3
    deplivesb  
       2023-05-05 13:46:12 +08:00
    建议删除 /狗头
    villivateur
        4
    villivateur  
       2023-05-05 13:49:12 +08:00
    对于 x86 架构的系统, /boot 下面会存放内核的二进制文件,这些文件在 GRUB 启动过程中会加载进内存。

    对于 Ubuntu 之类的系统而言,apt upgrade 的时候很可能会升级内核文件,所以就会变。
    EsSkOyN
        5
    EsSkOyN  
       2023-05-05 14:30:20 +08:00
    /boot 是启动时候的引导操作系统的文件 通常有内核的二进制等文件。
    在 grub 启动的时候会自动加载进内存
    debian 系 会更新内核版本的时候 就会动这里的文件 主要是备份保存旧的内核 更新新的内核 方便恢复
    下次启动就会更新 所以当前是不会重启的
    stcQ2G13k9yxep40
        6
    stcQ2G13k9yxep40  
       2023-05-05 15:05:59 +08:00
    在 Linux 系统中,/boot 目录通常包含用于引导操作系统的文件,包括内核、启动加载器( bootloader )和配置文件等。当你更新内核或者更新引导加载器时,这些文件会被更新。

    一般来说,当你安装新的内核或者更新引导加载器时,这些文件会被自动更新。更新完成后,文件的权限可能会发生变化,这是因为在更新过程中,系统可能会重新生成这些文件,这会导致文件的权限发生变化。

    当你使用 who -b 命令时,它会显示系统上次启动的时间。如果你在更新 /boot 目录中的文件时没有重启系统,那么系统的启动时间不会改变。

    /boot 目录下的文件包括内核文件和引导加载器文件等,这些文件用于引导系统。内核文件是操作系统的核心,它负责管理系统资源、运行进程和提供各种系统服务。引导加载器则负责加载内核并将系统引导起来。因此,/boot 目录下的文件是非常重要的系统文件,需要经常更新以确保系统的安全性和稳定性。
    yulgang
        7
    yulgang  
       2023-05-05 15:26:42 +08:00
    您好,

    /boot 目录下是 grub 启动程序和内核文件,系统启动时 grub 菜单里的选项对应的就是这里的内核文件。
    /boot 目录下文件都可以删除,然后系统就起不来了。
    nikoart
        8
    nikoart  
       2023-05-05 16:10:56 +08:00
    来自 ChatGPT 的回答:

    /boot 目录通常包含用于系统引导的文件,如 Linux 内核和引导加载程序。这些文件需要在系统引导时加载,以确保系统能够启动。

    更新 Linux 内核和引导加载程序通常会导致 /boot 目录中的文件被更新。这是因为更新过程会替换旧文件,以确保系统可以使用最新版本的内核和引导加载程序。

    在更新完成后,文件的权限可能会更改,这是因为更新过程会使用预设的权限和所有权值来创建和安装新的文件。这通常是为了确保文件可以被正确访问和使用。如果您需要更改文件的权限或所有权,请使用 chown 和 chmod 命令来更改它们。
    handshake
        9
    handshake  
       2023-05-05 18:11:20 +08:00
    非常用目录,建议删除
    GoodRui
        10
    GoodRui  
       2023-05-05 18:34:34 +08:00
    @deplivesb 什么发行版根目录下会有 /狗头 这个目录?怎么从来没见过呢?还有为什么要删了这个 狗头 目录啊?
    Macv1994
        11
    Macv1994  
    OP
       2023-05-05 18:55:42 +08:00 via Android
    @litguy
    @deplivesb 因为公司有个服务要用到这个目录中的文件,每次一更新,文件权限就变了,导致服务运行失败😂😂
    AkinoKaedeChan
        12
    AkinoKaedeChan  
       2023-05-05 19:46:20 +08:00
    @Macv1994 贵司做什么方面的,竟然需要用到 /boot 下的文件来运行服务
    Macv1994
        13
    Macv1994  
    OP
       2023-05-05 20:50:49 +08:00
    @AkinoKaedeChan 有一个 virt 相关的命令要用到 /boot 目录下的 vmlinuz 文件
    flyqie
        14
    flyqie  
       2023-05-06 09:39:26 +08:00 via Android
    /boot 永远不会主动更新,一定是通过其他方式更新的。

    你什么系统?没记错的话 ubuntu 好像会自动安装软件包更新。。

    kernel 也算是个软件包。。所以,你懂的。
    sky96111
        15
    sky96111  
       2023-05-06 09:52:17 +08:00
    @Macv1994 换个思路,不要直接修改 vmlinuz 的权限。用 ACL 授予用户访问 vmlinuz
    Macv1994
        16
    Macv1994  
    OP
       2023-05-06 12:28:44 +08:00
    @villivateur
    @flyqie 嗯 我搜索了一下 是 apt 的时候更新的
    Macv1994
        17
    Macv1994  
    OP
       2023-05-06 12:29:32 +08:00
    @sky96111 我现在是通过一个定时任务去修改权限,因为这个文件权限改变不是太频繁
    AkinoKaedeChan
        18
    AkinoKaedeChan  
       2023-05-18 16:13:01 +08:00
    @Macv1994 可以用 DPkg::Post-Invoke 实现在执行 apt/dpkg 之后更改权限
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2809 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 02:21 · PVG 10:21 · LAX 18:21 · JFK 21:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.