在Linux中我们常常在/etc/rc.local写入执行命令或脚本,来实现系统开机启动功能。但偶尔也会遇到没有执行的情况,这时候就要来进行调试了。

以下就是调试步骤:

1、确定rc.local具有可执行权限,直接/etc/rc.local看看能不能执行。因为rc.local中已经写明了“In order to enable or disable this script just change the executionbits.”, 要让它生效只需要改变它的执行位。

2、看看当前系统的runlevel,再去对应rcX.d看看它的启动顺序,是不是有Src.local的启动项在这里面。

3、确认了前面两项,我们就可以来调试rc.local的内容了,首先第一行,默认一般是#!/bin/sh -e,查下shell编程就知道,这个是用的sh解释器,-e参数代表出错后直接退出不执行后面内容。

执行以上内容就会发现,hahaha是不会打印的。同时我们也要确认ls -l  /bin/sh,来确认sh是对应的哪个解释器,因为在Ubuntu中,sh是链接在dash上。

因此在确认我们使用的SHELL解释器后,可以将-e 改成 -x或是在第二行加入set -x,这样就能将整个rc.local的执行过程打印到syslog中了,然后去查找出错的原因。

在执行某些脚本使用普通的重定向可能不生效,可以试试1 >>/tmp/xxx.log 2>&1这样的格式。

linux rc.local权限,Linux开机启动rc.local不执行分析相关推荐

  1. Linux 安装 Consul并设置开机启动

    1.下载consul安装包 官网地址:Install | Consul | HashiCorp Developer 2:解压到指定目录 unzip consul_1.6.1_linux_amd64.z ...

  2. Linux Redis自动启动,Redis开机启动,Linux Redis设置开机启动

    Linux Redis自动启动,Redis开机启动,Linux Redis设置开机启动 >>>>>>>>>>>>>> ...

  3. linux redis自动重启,Linux Redis自动启动,Redis开机启动,Linux Redis设置开机启动

    Linux Redis自动启动,Redis开机启动,Linux Redis设置开机启动 >>>>>>>>>>>>>> ...

  4. linux fedora35设置双系统开机启动顺序

    linux fedora35设置双系统开机启动顺序

  5. Linux系统 设置 cockpit 自动开机启动时异常问题处理(设置systemctl enable cockpit 异常【解决办法】)

    Linux系统 设置 cockpit 自动开机启动时异常问题处理 问题系统: Centos7 Fedora29 RedHat7 systemctl enable cockpit 时,会出现如下错误: ...

  6. Ubuntu20.04设置开机自启脚本、开机自启命令(ubuntu自启,ubuntu开机自启)rc(run command)(systemd)(/etc/rc.local)(开机启动原理)开机自启动

    注意:ubuntu18.04也适用! 文章目录 Linux/Ubuntu开机启动原理 Linux的开机启动顺序 Ubuntu 20.04 设置开机自启脚本 使用 rc-local.service 1. ...

  7. rc-local.service服务启动失败,导致rc.local中的开机启动服务不能启动

    chmod  +x   /etc/rc.d/rc.local 打开/etc/rc.local文件,将启动非后台执行的指令的最后添加 &,以使相关指令后台运行,然后启动服务 systemctl  ...

  8. linux关机_Linux系统管理:开机启动流程(一)

    Linux启动流程 CentOS6 Linux启动的时候,大家可以看到黑屏,一顿滚动,噼里啪啦,噼里啪啦,整的像是黑客帝国...啥玩应根本看不懂.其实,这个开启的过程,并没有大家想象的那么复杂,过程大 ...

  9. linux教程:配置Tomcat开机启动

    我们在linux下安装好tomcat之后:经常是需要配置到开机启动的: 这样的话就不需要我们每次重启linux服务器之后自己在登陆运行startup.sh文件启动tomcat了 本次的演示环境是在ce ...

最新文章

  1. 2020年1月Github上最热门的开源项目
  2. java 单线程改多线程_帮我把单线程的程序改成多线程JAVA,急!
  3. django 模板里面for循环常用的方法
  4. LeetCode:Longest Palindromic Substring 最长回文子串
  5. java学生背景知识要求,好好学习Java并发 一、背景知识
  6. 写一个“特殊”的查询构造器 - (四、条件查询:复杂条件)
  7. 基于SARIMA-LSTM的门诊量预测研究
  8. dirty_ratio与dirty_background_ratio参数区别--系统优化必选
  9. angularjs绑定属性_AngularJS隔离范围绑定表达式教程
  10. 正版卡巴斯基安全部队2011激活码1年
  11. MATLAB初步进行机器学习
  12. kafka 集群搭建步骤
  13. 帝国cms模板html文件夹,帝国cms的模板保存在哪里
  14. 实现愤怒的小鸟:我们有很多种小鸟(Bird类),每种小鸟都有飞的行为(fly()方法),还有一个弹弓(Slingshot类),弹弓有一个弹射的行为(shot()方法:调用fly()方法)
  15. jk女孩被人偷拍知名企业代码泄露, 原来是属性注解模式(Attribute Annotation Pattern)兴风作浪
  16. 电商项目day16(购物车实现)
  17. php面向对象开源_回到学校:5个面向学生和老师的开源程序
  18. 手机通讯录误删怎么恢复?教你解决这个问题
  19. 【中科院】分子生物学-朱玉贤第四版-笔记-第11-12讲 基因功能研究技术
  20. 虚拟主机的php环境怎么配置,虚拟主机配置thinkphp(如何实现虚拟主机配置)

热门文章

  1. HTML5新增的客户端校验
  2. weiphp 简介--笔记
  3. 指针和和一般的数据传递
  4. html 收藏功能,用react怎么实现收藏功能?
  5. c# 多线程 执行事件 并发_.NET异步和多线程系列(一)
  6. python逢7跳过_python实现逢七拍腿小游戏的思路详解
  7. 想要高清壁纸,高图桌面壁纸网站值得收藏!
  8. 建议设计日常多逛,多学习的网站
  9. 电商美工需要的素材PSD分层模板
  10. ui界面表单设计素材模板,实用可临摹