将自己写的脚本添加至开机自启动服务和chkconfig的原理

将自己写的脚本添加至开机自启动服务和chkconfig的原理

创建脚本测试

[[email protected] ~]# vim anuo.sh  --创建个脚本
# !/bin/bash
# chkconfig: 35 53 88   --指定3和5级别启动 53的启动的顺序    88是关闭的顺序
# description: is anuo  --可以随便说点啥, 最好的说明这个脚本的用途啥的。
echo Anuo Come on   --脚本的内容
[[email protected] ~]# mv anuo.sh /etc/init.d/      --必须将脚本放到/etc/init.d/目录下
[[email protected] ~]# chmod +x /etc/init.d/anuo.sh     --别忘记给脚本加执行权限
[[email protected] ~]# chkconfig --add anuo.sh      --添加开机自启动
[[email protected] ~]# chkconfig --list | grep anuo.sh      --可以看到开启级别的启动
anuo.sh         0:关闭    1:关闭    2:关闭    3:启用    4:关闭    5:启用    6:关闭

--这里的3和5级别的启动也就对应了上面的第一个35

小测试

[[email protected] ~]# ll /etc/rc.d/rc3.d/|grep anuo.sh
lrwxrwxrwx  1 root root 17 5月  12 19:10 S53anuo.sh -> ../init.d/anuo.sh

--查看到3级别启动的文件里一个S53anuo.sh的链接文件(S表示开启,53也就对应了配置文件里的53的启动的顺序)

[[email protected] ~]# chkconfig anuo.sh off    --设置开机不启动
[[email protected] ~]# ll /etc/rc.d/rc3.d/|grep anuo.sh
lrwxrwxrwx  1 root root 17 5月  12 19:30 K88anuo.sh -> ../init.d/anuo.sh

--再次查看发现S53anuo.sh的链接文件没有了,却多了个K88anuo.sh的链接文件(K表示不开启 88对应的是配置文件里的88关闭的顺序)

小结:要把脚本放到/etc/init.d/目录下并给执行权限,当chkconfig设置开机自启动时候会在相应的启动级别的文件里创建S开头的链接文件,同时会删除以K开头的对应的链接文件,反之也亦然。(也可以手动删除、创建链接文件也是一样的效果)

精简开机自启动

方法1思路:找出需要关闭的的服务将其关闭

[[email protected] ~]# chkconfig --list|grep "3:on"|egrep -v "network|rsyslog|crond|sysstat|sshd"|awk ‘{print "chkconfig",$1,"off"}‘|bash

[[email protected] ~]# chkconfig --list | grep "3:on"   --查看剩下开启的
crond           0:off   1:off   2:off   3:on    4:off   5:on    6:off
network         0:off   1:off   2:off   3:on    4:off   5:on    6:off
rsyslog         0:off   1:off   2:off   3:on    4:off   5:on    6:off
sshd            0:off   1:off   2:off   3:on    4:off   5:on    6:off
sysstat         0:off   1:on    2:off   3:on    4:off   5:on    6:off

方法2思路:将所有服务全部关闭自启动,再开启需要开启的服务。

[[email protected] ~]# LANG=en_SU.UTF-8     --调整字符集
[[email protected] ~]# echo $LANG
en_SU.UTF-8

[[email protected] ~]# for i in `chkconfig --list |grep "3:on" | awk ‘{print $1}‘`;do chkconfig --level 2345 $i off ;done
[[email protected] ~]# chkconfig --list | grep "3:on"   --查看没有就说明全部关闭成功
[[email protected] ~]# for i in network rsyslog crond sysstat sshd;do chkconfig --level 35 $i on;done
[[email protected] ~]# chkconfig --list | grep "3:on"   --查看开启也成功了
crond           0:off   1:off   2:off   3:on    4:off   5:on    6:off
network         0:off   1:off   2:off   3:on    4:off   5:on    6:off
rsyslog         0:off   1:off   2:off   3:on    4:off   5:on    6:off
sshd            0:off   1:off   2:off   3:on    4:off   5:on    6:off
sysstat         0:off   1:on    2:off   3:on    4:off   5:on    6:off

原文地址:http://blog.51cto.com/13744837/2115659

时间: 2024-11-06 07:36:38

将自己写的脚本添加至开机自启动服务和chkconfig的原理的相关文章

supervisord安装,启动/关闭,添加开机自启动服务

centos7安装supervisord #yum -y install supervisor 安装路径/usr/bin/supervisord,配置文件/etc/supervisor.conf 一.手动启动/关闭 supervisor手动启动: #/usr/bin/supervisord -c /etc/supervisor.conf supervisor手动关闭: #/usr/bin/supervisorctl stop all    先关闭supervisor启动脚本,之后再关闭super

开机启动服务:chkconfig命令详解

1.查看系统运行级别 # cat /etc/inittab # Default runlevel. The runlevels used are:#   0 - halt (Do NOT set initdefault to this)#   1 - Single user mode#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)#   3 - Full multiuser mode#  

linux优化之优化开机自启动服务

精简开机系统启动 和Windows系统一样,在linux服务器运行过程中,会有很多无用的软件默认就在运行,这些服务占用了很多系统资源,而且也带来了安全隐患,因此要关闭掉.那么,企业生产场景的linux主机到底需要保留哪些开机启动的服务呢? 1)重要的开机自启动服务 企业环境新装Linux系统之后有必要保留的开机自启动服务有五个,具体如下.  sshd 远程连接Linux服务器时需要用到这个服务程序,所以必须要开启. rsyslog     日志相关软件,这是操作系统提供的一种机制,系统的守护程序

Linux学习 哪些开机自启动服务是必备的?

和Windows系统一样,Linux服务器运行过程中也会一些没用的软件服务默认运行,这些占用了很多系统资源,也会有安全隐患,所以一般是建议关闭的.那么,工作中Linux主机到底需要有哪些开机自启动服务呢? 新装Linux系统之后,有必要保留的开机自启动服务有5个: ? sshd:远程连接Linux服务器时要用到,所以必须开启,不然就无法提供远程连接服务了. ? rsyslog:日志相关软件,这是操作系统提供的一种机制,系统的守护程序通常会使用rsyslog程序将各种信息写到各个系统日志文件中.

linux开机自启动服务优化设置命令

1.设置成英文字符,避免出现乱码[[email protected] ~]# LANG=en2.两种配置linux开机自启动服务命令:1)[[email protected] ~]# ntsysv2)[[email protected] ~]# setup3.查看文本模式3级别下的开机自启动服务[[email protected] ~]# chkconfig --list|grep 3:onabrt-ccpp           0:off 1:off 2:off 3:on 4:off 5:on

Android 4.0及以上版本接收开机广播BOOT_COMPLETED、开机自启动服务

情景概要:自己做的一个项目的时候,或得不到开启启动的通知,这样更别说开机启动通知里面实现开机服务功能了,查找了N多资料,说法不一,太多的人说4.0之后无法获得开机通知,通过各种渠道,各种大牛的方式仍然是那些N多人说不可行的方法,即使大牛给的是英文文档也是说这样可以的. 最后发现,开启启动通知已经实现了,但是自己的疏忽没有发现,我通过在通知里面弹出一个Toast,但是真机或者模拟器在开机的时候都需要很多启动项,导致最后的Toast弹出很晚,而自己却没看见.你可以在通知里面弹出10个以上的Toast

题目:命令chkconfig;开机自启动服务

chkconfig  chkconfig --list 查看所有服务对应的运行级别 过滤3级别开机自动启动的服务 [[email protected] ~]# chkconfig --list | grep "3:on" 查看某个服务开机自启级别,例如查看 iptables [[email protected] ~]# chkconfig --list iptables 开机自启动服务:sshd 一.更改配置文件 将启动命令放入  /etc/rc.local 例如配置sshd服务开机自

Centos 下添加开机自启动服务和脚本

最近刚玩Centos7的系统,跟Centos6还是很多方面有改变的,这里记录一下怎么在Centos7下添加开机自启动脚本和服务的方法. 1.添加开机自启服务 我这里以docker 服务为例,设置如下两条命令即可: 1  # systemctl enable docker.service #设置docker服务为自启动服务 相当于我们的 chkconfig docker on 2 # systemctl start docker.service #启动docker服务 2.添加开机自启脚本 在ce

添加tomcat开机启动服务时报错:Neither the JAVA_HOME nor the JRE_HOME enviromment variable is defined

首先,参考的 https://blog.csdn.net/wabil/article/details/78818249 的方式添加 tomcat 开机启动,这种方式不需要添加 setenv.sh 文件,轻量级,非常方便,具体方式如下: 1. 创建一个服务文件 vim /lib/systemd/system/tomcat.service 复制如下内容,修改后保存: [Unit]Description=tomcatAfter=network.target [Service]Type=oneshotE