Cenos7 关机时执行特定的脚本
时间: 2023-12-02 14:06:43 浏览: 109
你可以在 CentOS 7 中通过 systemd 来执行关机时的特定脚本。以下是步骤:
1. 创建一个脚本文件,例如 /usr/local/bin/shutdown-script.sh。
2. 添加以下内容到脚本文件中:
```
#!/bin/bash
# 在这里添加你想要执行的脚本命令
```
3. 修改脚本文件的权限,使其可执行:
```
chmod +x /usr/local/bin/shutdown-script.sh
```
4. 创建一个 systemd 单元文件 /etc/systemd/system/shutdown-script.service。
5. 添加以下内容到单元文件中:
```
[Unit]
Description=Shutdown Script
[Service]
ExecStart=/bin/true
ExecStop=/usr/local/bin/shutdown-script.sh
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
```
6. 启用并启动服务:
```
systemctl enable shutdown-script.service
systemctl start shutdown-script.service
```
现在,当你执行 `poweroff` 或 `shutdown` 命令时,系统会自动执行 /usr/local/bin/shutdown-script.sh 脚本中的命令。
相关问题
Centos7 修改systemd-halt.service 使得关机时写一个临时文件到特定的路径
在 CentOS 7 中,可以通过修改 `systemd-halt.service` 实现在关机时写一个临时文件到特定的路径。具体步骤如下:
1. 创建一个脚本文件,用于在关机时写入临时文件。可以使用以下命令创建一个名为 `write_temp_file.sh` 的文件:
```
sudo nano /usr/local/bin/write_temp_file.sh
```
2. 将以下内容添加到 `write_temp_file.sh` 文件中,替换 `<your text>` 为要写入文件的文本内容,`/path/to/temp/file` 为要写入的文件路径:
```
#!/bin/bash
echo "<your text>" > /path/to/temp/file
```
3. 保存并关闭文件。
4. 使用以下命令修改 `systemd-halt.service` 文件:
```
sudo nano /usr/lib/systemd/system/systemd-halt.service
```
5. 在文件的 `[Unit]` 部分下添加以下内容:
```
RequiresMountsFor=/path/to/temp/file
```
这将确保在关机时 `/path/to/temp/file` 路径上的文件系统已经被挂载。
6. 在文件的 `[Service]` 部分下添加以下内容:
```
ExecStart=/usr/local/bin/write_temp_file.sh
```
这将在关机时执行 `write_temp_file.sh` 脚本文件。
7. 保存并关闭文件。
8. 使用以下命令重新加载 systemd 配置:
```
sudo systemctl daemon-reload
```
现在,当您的 CentOS 7 系统关机时,将会自动执行 `write_temp_file.sh` 脚本文件,并在 `/path/to/temp/file` 路径上写入临时文件。
阅读全文
相关推荐















