ubuntu下使用rcconf来控制开机自启动软件
RedHat操作系统,可以使用checkconfig命令来关闭或开启一些系统服务,但是在ubuntu系统下并没有这条命令,介绍一款类似于centos下的ntsysv的一款软件,来控制我们想要设置的开机自启动软件。这款软件叫做rcconf。
sudo
apt-get
install
dialog rcconf
使用:直接输入sudo rcconf控制。
还可以使用 Ubuntu 自带的 update-rc.d
用法 update-rc.d XXX stop/start
例 update-rc.d memcachedb stop
ubuntu下开启crond的日志
默认情况下没有开启,开启方法如下:
1、修改/etc/rsyslog.d/50-default.conf文件,将里面的cron.*前面的#去掉
sudo
vi
/etc/rsyslog
.d
/50-default
.conf
cron
.*
/var/log/cron
.log
2、重启日志服务
sudo
service rsyslog restart
3、重新启动cron服务
sudo
service
cron
restart
然后就可以在/var/log/下面找到cron.log的文件了
[email protected]:
/var/log
$
ls
|
grep
cron
cron
.log
ubuntu添加程序开机自启动脚本
在ubuntu系统上有时候某些软件我们需要系统启动的时候自动启动这些软件,有些软件可能没有开机自启动的脚本,我们需要自己手动写一些启动脚本,ubuntu不像RedHat系列的可以有checkconfig配置,ubuntu下面更简单一些,写好我们的启动脚本,并授权。
比如我们写了一个脚本xx.sh,放在/data目录下面,想要让这个脚本开机自动运行,做如下操作即可:
vi /etc/rc.local
这个文件最后一行应该是一个exit 0,将我们所要启动的脚本放在exit 0上面即可,如下所示
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
sudo
sh
/data/start
.sh
sudo
sh
/data/start_xx
.sh
exit
0
如果你有一些程序本身已经带了自启动的脚本,那么它会存放在/etc/init.d这个目录下面,你可以按着自己想要的启动方式去修改这个启动脚本,也许你可能不想用它自带的启动脚本,想要自己写一个,那么这时你需要注意,写好自己的启动脚本后,要将/etc/init.d下面系统自带的脚本移除,然后按着上面的方法,将你要启动的脚本添加好即可。
ubuntu下memcached启动停止脚本
#! /bin/sh # ckconfig: - 55 45 # description: The memcached daemon is a network memory cache service. # processname: memcached # config: /etc/memcached.conf # Source function library - for suse linux . /lib/lsb/init-functions PORT=11111 USER=memcache #最大连接数,根据实际需求修改 MAXCONN=1024 #最大内存量,单位M CACHESIZE=400 PID=`ps -ef|grep memcache|grep -v grep|awk ‘{print $2}‘` prog="Memcached" PIDFILE="/tmp/memcache.pid" DAEMON=/usr/bin/memcached start () { if [ ! -n "$PID" ]; then echo -n -e $"\033[35mStarting $prog:\033[0m" /usr/bin/memcached -m $CACHESIZE -l 127.0.0.1 -p $PORT -d -u $USER -c $MAXCONN -P /tmp/memcache.pid if [ `echo $?` == 0 ];then echo -e "\033[32mRun $prog Successful!\033[0m" else echo -e "\033[41;33mRun $prog Fail!\033[0m" fi; exit 1 else echo -e "\033[41;37m$prog has been running!Don‘t repeat\033[0m" exit 0 fi; } stop () { if [ -n "$PID" ]; then echo -n -e $"\033[35mStopping $prog:\033[0m" #sudo kill $PID start-stop-daemon --stop --quiet --oknodo --retry 5 --pidfile $PIDFILE --exec $DAEMON if [ `echo $?` -eq 0 ] ; then echo -e "\033[32mStop $prog Successfull!\033[0m" else echo -e "\033[41;33Stop $prog Fail!Please try again!\033[0m" fi; else echo -e "\033[34m$prog Not Running!\033[0m" fi; } restart () { echo -n -e $"\033[35mStopping $prog:\033[0m" start-stop-daemon --stop --quiet --oknodo --retry 5 --pidfile $PIDFILE --exec $DAEMON if [ `echo $?` -eq 0 ] ; then echo -e "\033[32mStop $prog Successfull!\033[0m" else echo -e "\033[41;33Stop $prog Fail!Please try again!\033[0m" fi; echo -n -e $"\033[35mStarting $prog:\033[0m" /usr/bin/memcached -m $CACHESIZE -l 127.0.0.1 -p $PORT -d -u $USER -c $MAXCONN -P /tmp/memcache.pid if [ `echo $?` == 0 ];then echo -e "\033[32mRun $prog Successful!\033[0m" else echo -e "\033[41;33mRun $prog Fail!\033[0m" fi; exit 1 } status () { if [ ! -n "$PID" ]; then echo -e "\033[32m$prog Stopped!\033[0m" else echo -e "\033[32m$prog Running!\033[0m" fi; } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status ;; restart) restart ;; *) echo $"Usage: $0 {start|stop|status|restart}" exit 1 esac exit $?