Linux关机时执行指定脚本功能实现

 更新时间:2018年03月01日 14:06:39   作者:snaking616  
本篇文章给大家分享了Linux关机时执行指定脚本功能的实现详解,对此有需要的朋友跟着小编一起学习下。

1.关机时执行某个脚本的具体思路

(1)在文件夹/etc/init.d/下创建关机时需要执行的脚本file_name;

(2)分别在文件夹/etc/rc0.d/和/etc/rc6.d/下创建该该脚本文件的链接文件K07file_name:

sudo ln -s /etc/init.d/file_name /etc/rc0.d/K07file_name
sudo ln -s /etc/init.d/file_name /etc/rc6.d/K07file_name

(3)在文件夹/var/lock/subsys/下生成与file_name同名的文件

sudo mkdir -p /var/lock/subsys/
sudo touch /var/lock/subsys/file_name

说明:关键字K07仅需要在文件夹/etc/rc0.d/和/etc/rc6.d/内添加,在/etc/init.d/和
/var/lock/subsys/里面不需要添加。

2.举例—在Linux关机时执行脚本snaking616

脚本snaking616内容如下:

#!/bin/bash 
cd /etc/init.d 
echo "admin"|sudo -S touch eth_set_100 
echo "admin"|sudo -S chmod 777 eth_set_100 
echo "#!/bin/bash 
echo "admin"|sudo -S ethtool -s eth1 autoneg off speed 100 duplex full" > eth_set_100 

脚本在系统关机时会在文件夹/etc/init.d下自动生成脚本文件eth_set_100,并将以下内容写入该文件内:

#!/bin/bash 
echo "admin"|sudo -S ethtool -s eth1 autoneg off speed 100 duplex full 

具体实现方法如下:

(1)打开终端创建脚本文件snaking616

sudo touch /etc/init.d/snaking616
sudo chmod 777 /etc/init.d/snaking616
sudo gedit /etc/init.d/snaking616

填写以下代码:

#!/bin/bash 
cd /etc/init.d 
echo "admin"|sudo -S touch eth_set_100 
echo "admin"|sudo -S chmod 777 eth_set_100 
echo "#!/bin/bash 
echo "admin"|sudo -S ethtool -s eth1 autoneg off speed 100 duplex full" > eth_set_100 

(2)创建连接文件

sudo ln -s /etc/init.d/snaking616 /etc/rc0.d/K07snaking616
sudo ln -s /etc/init.d/snaking616 /etc/rc6.d/K07snaking616

(3)在文件夹/var/lock/subsys/下生成与snaking616同名的文件

sudo mkdir -p /var/lock/subsys/
sudo touch /var/lock/subsys/snaking616

当系统关机时间,在文件夹/etc/init.d下,会自动生成脚本文件eth_set_100。

相关文章

  • Apache 防盗链的技术小结

    Apache 防盗链的技术小结

    Apache 防盗链的第一种实现方法,可以用 rewrite 实现。
    2010-12-12
  • Linux网桥配置br-lan、eth0、eth1、ra0、rai0方式

    Linux网桥配置br-lan、eth0、eth1、ra0、rai0方式

    这篇文章主要介绍了Linux网桥配置br-lan、eth0、eth1、ra0、rai0方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Linux内核设备驱动地址映射笔记整理

    Linux内核设备驱动地址映射笔记整理

    今天小编就为大家分享一篇关于Linux内核设备驱动地址映射笔记整理,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • linux之防火墙firewall解读

    linux之防火墙firewall解读

    本文介绍了如何使用`firewall-cmd`命令管理防火墙,配置Docker0服务到受信任连接,并详细解释了防火墙区域选项、IP集选项、ICMP类型选项、服务选项等
    2025-01-01
  • linux系统虚拟主机开启支持Swoole Loader扩展的方法

    linux系统虚拟主机开启支持Swoole Loader扩展的方法

    这篇文章主要介绍了linux系统虚拟主机开启支持Swoole Loader扩展的方法,需要的朋友可以参考下
    2020-12-12
  • Linux下如何实时查看GPU状态

    Linux下如何实时查看GPU状态

    这篇文章主要介绍了Linux下如何实时查看GPU状态问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • linux解决Tomcat内存溢出的问题

    linux解决Tomcat内存溢出的问题

    下面小编就为大家带来一篇linux解决Tomcat内存溢出的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Ubuntu18.04 安装 Anaconda3的教程详解

    Ubuntu18.04 安装 Anaconda3的教程详解

    这篇文章主要介绍了Ubuntu18.04 安装 Anaconda3的教程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • 简单谈谈apache与nginx

    简单谈谈apache与nginx

    简单的说apache是计算密集型,nginx是io密集型,各有优势,不存在谁取代谁
    2014-12-12
  • Linux 命令 systemctl 基本介绍和常用选项

    Linux 命令 systemctl 基本介绍和常用选项

    这篇文章主要介绍了Linux命令systemctl,包括systemctl命令的基本介绍和常用选项、命令及示例,使用systemctl命令需要有管理员权限(例如root或具有sudo权限的用户),需要的朋友可以参考下
    2023-06-06

最新评论