linux service

1.按一定的規則編寫服務腳本,比如:myserviced


#!/bin/sh  
#chkconfig: 2345 80 05   
#description: myservice   
  
case $1 in  
start)  
    echo "myservice startup" #將該行替換成你自己的服務啓動命令  
    ;;  
stop)  
    echo "myservice stop" #將該行替換成你自己服務的啓動命令  
    ;;  
restart)  
    echo "myservice stop" #...  
    echo "myservice startup" #...  
    ;;  
*)  
    ;;  
esac  




命令解析:
# chkconfig: 2345 80 5
2345表示服務的運行級別,80代表Start的順序,05代表Kill(Stop)的順序;
# description: service_description
該服務的描述


2.將編寫的腳本放到/etc/init.d/,將myserviced的訪問權限加上“可執行”
[plain] view plain copy print?
chmod +x myserviced  


3.增加服務
[plain] view plain copy print?
chkconfig --add myserviced  


4.啓停服務
[plain] view plain copy print?
service myserviced start  
service myserviced stop  


服務添加完成
可以用:chkconfig --list查看當前系統的服務
可以用:chkconfig --del myserviced刪除服務


5.添加開機自啓動
chkconfig --level 2345 myservice off


systemctl is-enabled test.service #查詢服務是否開機啓動




#systemd查看開機自啓動的程序
ls /etc/systemd/system/multi-user.target.wants/




#將進程服務在後臺運行
nohup shell命令 &


0、1和2分別表示標準輸入、標準輸出和標準錯誤信息輸出,可以用來指定需要重定向的標準輸入或輸出。
由於使用nohup時,會自動將輸出寫入nohup.out文件中,如果文件很大的話,nohup.out就會不停的增大,這是我們不希望看到的,因此,可以利用/dev/null來解決這個問題。


nohup shell命令 >/dev/null 2>log &
如果錯誤信息也不想要的話:
nohup shell命令 >/dev/null 2>&1 &
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章