centos开机自动执行命令

在CentOS系统中,我们可以通过systemd来实现开机自动执行命令,下面将详细介绍如何设置开机自动执行命令及其方法和案例示例。

### 方法一:通过systemd的systemctl实现

1.编写服务文件

在CentOS的systemd中,当需要开机自动运行程序时,我们需要编写服务文件。服务文件应该放在`/etc/systemd/system/`目录下,我们可以自定义服务文件的名字,以`.service`为文件后缀名。

以运行一个简单的脚本为例,我们可以创建一个名为`test.service`的服务文件,其内容如下:

```

[Unit]

Description=Test Service

After=network.target

[Service]

Type=simple

ExecStart=/root/test.sh

TimeoutSec=0

StandardOutput=null

[Install]

WantedBy=multi-user.target

```

其中`Unit`字段包含一些元数据,包括描述(Description)和启动顺序(After);`Service`字段则定义了服务的详细配置,包括服务类型(Type)、启动命令(ExecStart)和超时时间(TimeoutSec);`Install`字段说明服务应该在哪个系统级别(multi-user.target)下启用(WantedBy)。

2. 启用服务

编写完服务文件后,我们需要使用`systemctl`命令启用服务:

```

$ systemctl enable test.service

```

这将把服务添加到系统的启动服务列表中,以确保CentOS开机时自动启动该服务。

3. 重新启动systemd守护进程

在启用服务后,我们需要重新启动systemd守护进程,以确保服务配置正确,并在下次CentOS开机时自动运行。运行以下命令重新启动systemd守护进程:

```

$ systemctl daemon-reload

$ systemctl restart test.service

```

这将重新启动systemd守护进程,并在CentOS下次重启时自动运行该服务。

### 方法二:通过/etc/rc.d/rc.local实现

1.编辑/etc/rc.d/rc.local文件

`/etc/rc.d/rc.local`文件是存放在CentOS系统中,开机自动执行的命令或脚本的常用文件。我们可以在文件末尾加入要执行的命令或脚本。

```

$ vi /etc/rc.d/rc.local

```

在文件末尾添加要执行的命令或脚本,保存文件后退出。

```

#!/bin/bash

#开机自动执行该脚本

/root/test.sh

```

2.设置文件权限

我们需要确保`/etc/rc.d/rc.local`文件的权限的正确。运行以下命令:

```

$ chmod +x /etc/rc.d/rc.local

```

3.重启CentOS

完成以上步骤后,我们需要重启CentOS使其生效。

### 案例说明:

假设我们需要在CentOS开机时自动运行`/root/test.sh`脚本,可以使用上述方法来实现。例如,我们在`/root/`目录下新建一个名为`test.sh`的脚本,内容如下:

```

#!/bin/bash

#该脚本仅打印Hello World!

echo "Hello World!"

```

我们可以编写服务文件来为该脚本生成一个systemd服务并启用它,或者将脚本添加到`/etc/rc.d/rc.local`文件中。无论使用那种方法,重启CentOS后即可自动运行该脚本。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/

点赞(13) 打赏

评论列表 共有 1 条评论

南北段子手 11月前 回复TA

你是不是三鹿喝多了?

立即
投稿
发表
评论
返回
顶部