在CentOS 7系统里设置开机自动执行脚本systemd

云友“yongzhang ”希望能在CentOS 7系统里设置开机能自动添加IPv6隧道地址,参照网上的例子,写此帖。

环境:CentOS 7 64位
目的:系统启动后自动执行脚本,为系统添加IPv6隧道地址

过程:

1.假设您已经为阿里云系统启用了IPv6地址

2.创建 systemd 的启动脚本:
vi /etc/systemd/system/enable-ipv6.service

内容如下:

[Unit]
After=network.target
[Service]
ExecStart=/usr/local/bin/enable-ipv6.sh
[Install]
WantedBy=default.target

3.创建设置IPv6隧道地址命令的脚本:
vi /usr/local/bin/enable-ipv6.sh
内容如下:

#!/bin/bash
modprobe ipv6
ip tunnel add he-ipv6 mode sit remote 216.218.221.6 local 121.43.110.72 ttl 255
ip link set he-ipv6 up
ip addr add 2001:470:18:401::2/64 dev he-ipv6
ip route add ::/0 dev he-ipv6
ip -f inet6 addr

4.更改上边两个脚本的权限(有执行权限):
chmod 744 /usr/local/bin/enable-ipv6.sh
chmod 664 /etc/systemd/system/enable-ipv6.service

5.启用新创建的服务(假如叫 enable-ipv6.service),令其在系统启动时,可自动执行:
systemctl daemon-reload
systemctl enable enable-ipv6.service

bbs-aliyun-dongshan3-301042-1.png

6.重启系统,检查是否成功自动执行

bbs-aliyun-dongshan3-301042-2.png

参考:

  1. https://linuxconfig.org/how-to-automatically-execute-shell-script-at-startup-boot-on-systemd-linux
  2. https://www.centos.org/forums/viewtopic.php?t=48140

标签: none

添加新评论