Linux如何开机自动运行自己的脚本
一、root权限编辑/etc/rc.d/rc.local
- su
- cd /etc/rc.d/
- vi rc.local
- #!/bin/sh
- #
- # This script will be executed *after* all the other init scripts.
- # You can put your own initialization stuff in here if you don't
- # want to do the full Sys V style init stuff.
- touch /var/lock/subsys/local
- mount //192.168.0.3/data2-1 /mnt/data2-1 -o username=un,password=123
- mount //192.168.0.3/data2-2 /mnt/data2-2 -o username=un,password=123
- mount //192.168.0.3/data2-3 /mnt/data2-3 -o username=un,password=123
- mount //192.168.0.3/data2-4 /mnt/data2-4 -o username=un,password=123
- mount //192.168.0.3/data2-5 /mnt/data2-4 -o username=un,password=123
提示:这里的做法很不成熟,希望不要这样,最好自己写个脚本文件在这里来调用,结构更清晰,但是要注意到是把要执行的命令作为一个参数传递给su。
三、虽然搞定,还是补充一下
Linux在启动时,会自动执行/etc/rc.d目录下的初始化程序,因此我们可以把启动任务放到该目录下,有下列办法:
方案一:
比较简单,就是上面的做法,/etc/rc.d/目录下的初始化程序很多,rc.local是在完成所有初始化之后执行的,所以在这里做手脚很合适。
方案二:
init.d目录下都为可执行程序,他们其实是服务脚本,按照一定格式编写,Linux 在启动时会自动执行,类似Windows下的服务。
1、编写如下面的脚本simpleTest:
- #!/bin/bash
- #chkconfig:2345 80 05 --指定在哪几个级别执行,0一般指关机,6指的是重启,其他为正常启动。80为启动的优先级,05为关闭的优先级别
- #description:simple example service
- RETVAL=0
- start(){ #启动服务的入口函数
- echo "simple example service is started..."
- }
- stop(){ #关闭服务的入口函数
- echo "simple example service is stoped..."
- }
- #使用case选择
- case $1 in
- start)
- start
- ;;
- stop)
- stop
- ;;
- *)
- echo "error choice ! please input start or stop";;
- esac
- exit $RETVA
3、运行chmod +x /etc/rc.d/init.d/simpleTest,使之可直接执行
4、运行chkconfig --add simpleTest,把该服务添加到配置当中
5、运行chkconfig --list simpleTest,可以查看该服务进程的状态
方案三、目的是挂载共享目录,所以可以在/etc/fstab中加上
//192.168.0.3/data2-1 /mnt/data2-1 nfs username=un,password=123 0 0
非常不好意思,方案二中虽然脚本可以运行
# ./simpleTest start
simple example service is started...
但是我在第4步出现
# chkconfig --add simpleTest
在 simpleTest 服务中读取信息时出错:没有那个文件或目录
没有进一步解决抱歉。
Linux如何开机自动运行自己的脚本的更多相关文章
- Linux、UNIX设置开机自动运行命令、脚本配置
一般我们不建议人工部署开机自动启动的脚本.而是建议通过crontab 部署脚本监控,理由如下: 1.自动开机部署脚本不好定位问题,有可能导致主机重启过慢. 2.自动开机部署脚本不好定位问题,有可能导致 ...
- Windows10开机自动运行批处理、脚本等的方法
方法/步骤: 一:打开我的电脑, 在地址栏输入:“C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup”, 二,把自动运行批处理.脚 ...
- CentOS开机自动运行程序的脚本
有些时候我们需要在服务器里设置一个脚本,让他一开机就自己启动.方法如下: cd /etc/init.dvi youshell.sh #将youshell.sh修改为你自己的脚本名编写自己的脚本后保 ...
- linux 如何开机自动运行sh脚本
vi /etc/rc.d/rc.local #自动启动oracleecho 502 >/proc/sys/vm/hugetlb_shm_group su - oracle -c 'sh /dat ...
- CentOS开机自动运行自己的脚本详解
一.root权限编辑/etc/rc.d/rc.local su cd /etc/rc.d/ vi rc.local 二.在这个文件加上你要执行的脚本,全部内容如下: #!/bin/sh # # Thi ...
- /etc/rc.local 与 /etc/init.d Linux 开机自动运行程序
1. /etc/rc.local 这是使用者自订开机启动程序,把需要开机自动运行的程序写在这个脚本里 --------引用---------------------- 在完成 run level 3 ...
- Zabbix Server 和 Zabbix Agentd 开机自动运行
Zabbix Server 和 Zabbix Agentd 开机自动运行 请问:怎样 Zabbix Server 和 Zabbix Agentd 开机自动运行? 注:如果你的命令行写进了 /etc/r ...
- NanoPC-T4/RK3399开发板Ubuntu FriendlyCore系统开机自动运行客户程序
RK3399开机自动运行客户程序 比如hellohello.c 交叉编译:aarch64-linux-gcc hello.c -o hello使用SecureCRT软件通过串口下载到开发板rz修改文件 ...
- redmine 开机自动运行
想要redmine在centos上开机自动运行,于是就在 /etc/rc.local里面加上了一行脚本 #!/bin/shecho "start redmine:"/usr/loc ...
随机推荐
- LA3211 飞机调度 Now or later-二分法&TwoSet
https://vjudge.net/problem/UVALive-3211 As you must have experienced, instead of landing immediately ...
- ubuntu 开发环境搭建 lisp gcc python perl mysql
一: lisp sudo apt-get install emacs sudo apt-get install sbcl sudo apt-get install slime emacs里 Alt+x ...
- Windows7:Visual Studio 2008试用版的评估期已经结束解决方法
Windows7:Visual Studio 2008试用版的评估期已经结束解决方法 以前在Windows2003碰到这个问题时,都是到"控制面板→添加或删除程序"选择 ...
- Windows10系统如何安装Microsoft Visual Studio 2015及最小子数组和求解
一.Windows10系统如何安装Microsoft Visual Studio 2015. 1.首先到Visual Studio官方网站(https://www.visualstudio.com/v ...
- jquery+javascript编写国籍控件
主要功能和界面介绍 国籍控件主要支持中文.英文过滤以及键盘上下事件. 源码介绍 国籍控件核心是两个文件,navtionality.js 和 mian.css.navtionality.js主要功能是国 ...
- Linux之磁盘管理
本章重点提示: 1):理解基础命令,df,fdisk. 2):磁盘分区的理论基础. 1:查看当前系统分区与挂载情况: [root@localhost ~]# df Filesystem 1K-bloc ...
- leetcode 101
101. Symmetric Tree Given a binary tree, check whether it is a mirror of itself (ie, symmetric aroun ...
- 使用select io复用实现超时设置
在linux的socket编程中,经常会遇到超时设置的问题,例如请求方如果在Ks内不发送数据则服务器要断开连接停止服务.这里我使用select的io复用实现超时5s设置,具体代码片段如下: fd_se ...
- Idea基本设置
1.idea 如何更改比编辑器文本字体和大小 换上了intellij idea之后,第一件事就是想要改变下文字字体,因为在我这个27寸的2k分辨率的屏幕上,文字显然太小了. intellij idea ...
- 搭建高性能计算环境(五)、应用软件的安装之Amber12
应用软件通常安装在/opt目录下,这样系统中的各个用户都能方便使用,下面的软件都将安装到/opt目录. 1,上传需要的软件包Amber12.tar.gz.AmberTools13.tar.bz2.Am ...