linux -- ubuntu 脚本开机自启动
有一个脚本想在ubuntu 虚拟机开机时,自动运行。
创建脚本文件
在“/opt/lampp/”下新建一个脚本文件:lampp_start.sh
#!/bin/bash
/opt/lampp/lampp start
编辑启动文件
在/etc/init.d/rc.local文件的do_start()函数第一行内添加自启动脚本目录,格式为 路径 &> /dev/null &

注:
1、确保是root用户
2、确保脚本文件的访问权限即是否为可执行文件
这样开机你的脚本就可以自动启动了, 并且可以自动进行重启(手动Kill掉程序主进程,而不是主进程报错后退出)
涉及的知识点
1.关于 &> /dev/null
首先说一下:在Linux/Unix中,一般在屏幕上面看到的信息是从stdout (standard output) 或者 stderr (standard error output) 来的。许多人会问,output 就是 output,送到屏幕上不就得了,为什么还要分成stdout 和 stderr 呢?那是因为通常在 server 的工作环境下,几乎所有的程序都是 run 在 background 的,所以呢,为了方便 debug,一般在设计程序时,就把 stdout 存到一个文档,把错误的信息 stderr 存到不同的而文件。
·哪些是正常的output呢,例如程序开始运行的时间,现在正在上线人数等等。
·哪些是错误的output呢,例如无法找到使用者想要去的URL,或者信用卡认证失败等等。
有了上面这些认知后,回头来讲什么是 > /dev/null。
> /dev/null。是把 stdout 送到 /dev/null 里面,/dev/null 是 Unix/Linux 里的【无底洞】任何的 output 送去了【无底洞】就再也没了。相信我,真的没了!
一般呢,要是你不想看到 output 或者output 太多太大了,有可能把硬盘给挤爆了的时候,程序的设计就会考虑把 output 送到 /dev/null 了。当然,我相信你更期待把一些程序的输出重定向到指定的文件里用来当做日志文件。重定向的时候 >符号用来把输出重定向到指定文件中,覆盖原有内容(原有内容消失了);>>符号会把符号左侧的输出插入到右侧内容的末尾是不是很贴心?
2.为什么要选择rc.local文件?
linux -- ubuntu 脚本开机自启动的更多相关文章
- Ubuntu编写开机自启动脚本(转载)
From:http://blog.csdn.net/marujunyy/article/details/8466255 1.首先编写一个简单的shell脚本test.sh #! /bin/bash e ...
- Linux设置程序开机自启动,系统命令chkconfig及linux /etc/rc.d/目录的详解
整理了linux下程序开启几种方式,转载相关博客做统一记录 <linux程序设置开机自启动>转载自:https://www.cnblogs.com/flcz/p/7691532.html ...
- Linux下设置开机自启动Tomcat
方法一: linux 下tomcat开机自启动修改Tomcat/bin/startup.sh 为: export JAVA_HOME=/usr/java/j2sdk1..2_08 export CLA ...
- Linux定时任务与开机自启动脚本(cron与crontab)
开机自启动脚本 网上常见的脚本开机自启方法是: 假设要自启的脚本位于 /home/user/test.sh 给脚本可执行的权限 sudo chmod +x /home/user/test.sh 将脚本 ...
- Oracle在linux下的开机自启动(详细)转
linux下系统开机oracle自启动(方法一) ---加载为服务自启动.停止一.dbstart 及 dbshut 1. 修改Oracle系统配置文件:/etc/oratab,只有这样,Ora ...
- postgresql数据库linux下设置开机自启动
设置PostgreSQL开机自启动PostgreSQL的开机自启动脚本位于PostgreSQL源码目录的contrib/start-scripts路径下cd /opt/soft_bak/postgre ...
- linux应用之开机自启动方法总结
1.把启动程序的命令添加到/etc/rc.d/rc.local文件中 CentOS系统下管理开机自启动的配置文件是/etc/rc.d/rc.local,所以只需编辑这个文件,在里面加入相应的启动命令即 ...
- Linux设置程序开机自启动
注意: 作者测试时,Linux版本为RedHat6,同时应用在CentOS6应该也可以(作者未实测,但有同事在CentOS6上使用可行),系统版本的不同,可能造成操作上的差异(CentOS7就与Cen ...
- NO19 优化Linux系统--重要开机自启动服务--关闭自启动项
**如何优化Linux系统: 1 不用root,添加普通用户,通过sudo授权管理.2 更改默认的远程连接SSH服务端口及禁止root用户远程连接.3 定时自动更新服务器时间.4 配置 ...
随机推荐
- Spring MVC 的xml一些配置
1.可以自动加载注解驱动,通过注解找到对应Controller <!-- spring MVC 注解驱动 --> <mvc:annotation-driven></mvc ...
- springcloud Ribbon自定义负载均衡插件
现在我们通过插件的方式添加新的一种策略. package com.zhuyang.config; import org.springframework.beans.factory.annotation ...
- Animator根运动清除刚体速率问题测试
在根运动打开时,施加AddForce,速率在后面几帧被清0了: 没有打开根运动AddForce的情况: unity论坛看了下,似乎有人遇到这个问题,而且无解.只能受力状态下关闭根运动 Q:Im wor ...
- 批处理学习笔记14 - 把所有.mp4文件全部拷贝进统一目录
今天下载了一套视频教程,结果发现不在同一个目录下,很乱.都放在不同文件夹下. 于是写了一个批处理来解决这个问题 @echo off for /r %%i in (*mp4) do ( copy %%i ...
- CSocket类网络编程 MFC
Visual C++的MFC提供了CSocket类用来实现网络通信. 下面介绍VC++在Windows 95中实现Socket的 CSocket 类相关成员函数(这些成员函数实际上是从CAsyncSo ...
- Windows下对postgre开启远程连接权限
编辑 删除 前言:Windows下对postgre开启远程连接权限,下面是实际操作过程中的手顺 1.找到postgresql.conf文件,注意安装路径 D:\Program Files (x86)\ ...
- 【C++程序员学 python】python 之奇葩地方
一.python 奇葩之一:没有花括号.没有分号 先来一个C类型的函数 void main() { int i = 0; for(int j = 0; j< 6;j++) { i = i +j; ...
- python学习笔记(20)--生成点拨【已放弃】
说明: 1. 本来是要写个脚本生成点拨rtf给讲师朗读的,不过实在是安装不上pywin32这个模块,虽然下载下来了whl文件,pip install 也能安装,但是导入pywin32.win32com ...
- contiki 无线测试 1个中心节点 13个从节点
1 DATA recv '25.00 degres' from 2423:7c02:5525:4f2b2 DATA recv '27.71 degres' from 24f7:af03:5525:4f ...
- 解决javaWEB 下载文件中文名称乱码问题
response.setContentType("application/x-msdownload;"); response.setCharacterEncoding(" ...