下面为你详细说明如何在 CentOS 系统下让服务自启动,同时让网络配置自启动生效。
1. 配置网络设置自启动
在 CentOS 系统里,网络配置通常存于 /etc/sysconfig/network-scripts
目录下。你需要创建或者修改 ens192
对应的网络配置文件。
首先,创建或编辑 ifcfg-ens192
文件:
sudo vi /etc/sysconfig/network-scripts/ifcfg-ens192
把文件内容修改成如下所示:
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=ens192
DEVICE=ens192
ONBOOT=yes
IPADDR=192.168.10.100
PREFIX=24
GATEWAY=192.168.10.30
在上述配置中:
BOOTPROTO=static
表明使用静态 IP 地址。ONBOOT=yes
意味着在系统启动时激活该网络接口。IPADDR
和PREFIX
分别设定 IP 地址和子网掩码。GATEWAY
设定默认网关。
接下来,创建一个路由配置文件:
sudo vi /etc/sysconfig/network-scripts/route-ens192
添加以下内容:
10.192.0.0/16 via 192.168.10.30
2. 禁用防火墙并设置自启动
你可以通过以下命令在系统启动时禁用防火墙:
sudo systemctl disable firewalld
sudo systemctl stop firewalld
3. 创建服务单元文件
要让 snmp
服务自启动,你需要创建一个系统服务单元文件。
创建 snmp.service
文件:
sudo vi /etc/systemd/system/snmp.service
添加如下内容:
[Unit]
Description=snmp Service
After=network.target
[Service]
ExecStart=/path/to/your/snmp
WorkingDirectory=/path/to/your/snmp/directory
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target
在上述配置中:
ExecStart
指向snmp
可执行文件的路径。WorkingDirectory
是snmp
运行的工作目录。Restart=always
表示服务崩溃时会自动重启。RestartSec=3
表示服务崩溃后 3 秒重启。
4. 重新加载系统服务配置并启动服务
sudo systemctl daemon-reload
sudo systemctl enable snmp.service
sudo systemctl start snmp.service
总结
经过上述步骤,系统启动时网络配置会自动生效,防火墙会被禁用,snmp
服务也会自动启动。你要把 /path/to/your/snmp
和 /path/to/your/snmp/directory
替换成实际的路径。