Alpine Linux 启动脚本

Alpine Linux 启动脚本

我有一个 USB 闪存驱动器,可以将 Alpine Linux 引导到 RAM 内存中。

我希望启动后直接运行脚本(登录WIFI等)。那可能吗?

建议放入启动脚本/etc/local.d/UpdateIssue.start,但我的U盘没有该文件夹/etc。只需在启动后将脚本放入文件系统就足够了,然后我手动执行该文件。然而,我看到的只是这样:

在此输入图像描述

答案1

我认为要回答这个问题,有几点需要澄清。

/etc1. 为什么我的U盘里没有 目录?

因为您看到的 USB 内容是允许 Alpine 启动所需的内容。如果您下载 ISO 文件 [1],您也不会找到任何/etc目录。/etc当 USB 启动、文件系统解压缩并加载到内存中时,该目录将会出现。

2. 是的,但我需要该/etc目录来运行我的酷脚本,在哪里可以找到它?

文件系统驻留在并压缩到boot/initramfs-lts[2]中。

您可以打开它并查看内部[3],但这不是您实现目标的方式。

3. 好吧,明白了。但现在,你能回答我的问题吗?

进行如下操作:

  • 使用该 USB 启动您的 PC(我假设您有一个带有 Alpine Linux Image 的可启动 USB,如果没有,请查看 [4])
  • 运行setup-alpine并按照安装指南进行操作。 Alpine 有三种不同的磁盘模式[5],这里我们假设您会选择无盘
  • 现在,是时候创建您的/etc/local.d/UpdateIssue.start.不要忘记使用 使其可执行chmod +x /etc/local.d/UpdateIssue.start,并添加本地服务以在启动时启动:rc-update add local
  • 保存您所做的事情lbu commit

最后一步是强制的如果您要使用无盘模式。这样,Alpine 将创建一个$hostname.apkovl.tar.gz以您的 USB 密钥命名的文件 [6]。

下次重新启动时,当 Alpine 找到此覆盖文件时,将解压它并恢复保存的状态。

[1]https://dl-cdn.alpinelinux.org/alpine/v3.15/releases/x86_64/alpine-standard-3.15.4-x86_64.iso

[2] 如果您使用 [1] 中提到的 ISO

[3]https://linuxconfig.org/how-to-uncompress-and-list-an-initramfs-content-on-linux

[4]https://docs.alpinelinux.org/user-handbook/0.1a/Installing/medium.html#_using_the_image

[5]https://wiki.alpinelinux.org/wiki/Installation#Installation_Overview

[6]https://wiki.alpinelinux.org/wiki/Alpine_local_backup

相关内容